Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wordpress忽略子目录,命中或未命中_Php_Wordpress_.htaccess - Fatal编程技术网

Php Wordpress忽略子目录,命中或未命中

Php Wordpress忽略子目录,命中或未命中,php,wordpress,.htaccess,Php,Wordpress,.htaccess,我有一个网站在WordPress上运行。我正在测试服务器上沙盒/子目录下的一个新站点。对于新站点,我使用了一个类似于WP的.htaccess重写规则,该规则重写以清除URL。我发现在WP中具有等效路径的页面重定向到WP页面 例如,我有一个页面的url为/sandbox/supplies/information,可以正确重定向到新站点。但是,我还有另一个位于/sandbox/events/的页面,它将重定向到位于/events/的基本控制器 在研究了人们的类似问题之后,我尝试使用RewriteCo

我有一个网站在WordPress上运行。我正在测试服务器上沙盒/子目录下的一个新站点。对于新站点,我使用了一个类似于WP的.htaccess重写规则,该规则重写以清除URL。我发现在WP中具有等效路径的页面重定向到WP页面

例如,我有一个页面的url为/sandbox/supplies/information,可以正确重定向到新站点。但是,我还有另一个位于/sandbox/events/的页面,它将重定向到位于/events/的基本控制器

在研究了人们的类似问题之后,我尝试使用RewriteCond%{REQUEST_URI}!沙盒/[NC]和其他变体^沙盒/$等等,但它似乎没有任何效果。我已经复制了下面的两个.htaccess文件

提前感谢您抽出时间。我希望我把情况解释得足够清楚

基本访问权限


嗯。。我只在main.htaccess文件中使用了这一行,在我的模拟设置中一切都很好:

RewriteCond %{REQUEST_URI} !^/sandbox/ [NC]
我是否可以建议将选项+FollowSymLinks更改为选项+FollowSymLinks-多视图,或者您已经尝试过了

若URL有/sandbox/part,而您的/sandbox/.htaccess并没有RewriteOption继承行,那个么来自parent.htaccess的规则根本不会被使用

您对Apache有多大的控制权?您可以编辑配置文件httpd.conf或httpd-vhost.conf吗?如果您可以启用rewrite调试RewriteLogLevel 9并尝试那个有问题的URL,那么您应该可以确切地看到发生了什么,可能是它从php应用程序中被重定向了?。除此之外,你的规则对我来说绝对合适


我不知道这是不是个好主意。。但是,如果你无法找出这种行为的原因,请考虑加入这2个.HTAccess文件到1个变化是最小的。我只在main.htaccess文件中使用了这一行,在我的模拟设置中一切都很好:

RewriteCond %{REQUEST_URI} !^/sandbox/ [NC]
我是否可以建议将选项+FollowSymLinks更改为选项+FollowSymLinks-多视图,或者您已经尝试过了

若URL有/sandbox/part,而您的/sandbox/.htaccess并没有RewriteOption继承行,那个么来自parent.htaccess的规则根本不会被使用

您对Apache有多大的控制权?您可以编辑配置文件httpd.conf或httpd-vhost.conf吗?如果您可以启用rewrite调试RewriteLogLevel 9并尝试那个有问题的URL,那么您应该可以确切地看到发生了什么,可能是它从php应用程序中被重定向了?。除此之外,你的规则对我来说绝对合适


我不知道这是不是个好主意。。但是,如果你无法找出这种行为的原因,请考虑加入这2个.HTAccess文件到1个变化是最小的。

多视图修复它。非常感谢!我刚刚被.htaccess弄湿了脚,以前从未听说过这个选项。因为我想理解为什么有些东西会起作用,让我看看我是否正确:如果用户的url中没有指定替代索引文件,则MultiView会导致服务器搜索替代索引文件,在这种情况下,类似于www.domain.com/sandbox/folder/。在我的例子中,我猜它首先在基本文件夹中搜索,在那里找到index.php文件并提供了它?因此,它从来没有使用/sandbox文件夹中的index.php文件?TBH,我自己也不是100%确定它在某些情况下究竟是如何工作的-有时我看到它使用的.htaccess文件在网站根目录1文件夹之外。在这种情况下,我只需要适应当前的情况。。。因为很多都取决于启用了哪些模块以及设置了哪些选项以及如何配置Apache—例如,有些东西在我的机器上可能不会出现任何问题,但在GoDaddy上就不会起作用。选项+FollowSymLinks-多视图是共享托管环境的常见方法。在这个特殊的情况下,我同意你的结论。好吧,它是共享主机,所以它当然适合这个法案。再次感谢你的帮助。你救了我很多挫折-多视图修复了它。非常感谢!我刚刚被.htaccess弄湿了脚,以前从未听说过这个选项。因为我想理解为什么有些东西会起作用,让我看看我是否正确:如果用户的url中没有指定替代索引文件,则MultiView会导致服务器搜索替代索引文件,在这种情况下,类似于www.domain.com/sandbox/folder/。在我的例子中,我猜它首先在基本文件夹中搜索,在那里找到index.php文件并提供了它?因此,它从来没有使用/sandbox文件夹中的index.php文件?TBH,我自己也不是100%确定它在某些情况下究竟是如何工作的-有时我看到它使用的.htaccess文件在网站根目录1文件夹之外。在这种情况下,我只需要适应当前的情况。。。因为很多都取决于启用了哪些模块以及设置了哪些选项以及如何配置Apache—有些东西可能与n一起工作
o我的箱子上有问题,但在GoDaddy上不起作用。选项+FollowSymLinks-多视图是共享托管环境的常见方法。在这个特殊的情况下,我同意你的结论。好吧,它是共享主机,所以它当然适合这个法案。再次感谢你的帮助。你救了我很多挫折!
RewriteCond %{REQUEST_URI} !^/sandbox/ [NC]