htaccess文件未将根级别请求重定向到子目录级

时间:2018-04-23 12:19:49

标签: php wordpress .htaccess web-hosting

我的wordpress网站上安装了example.com个根目录,public_html最近我将网站内容迁移到子目录public_html/my_subdir。从子目录加载内容我修改了放置在.htaccess根文件夹上的public_html文件,以从我放置网站内容的子目录中加载内容。

现在我的.htaccess文件在点击网址example.com时正常工作,它会从我的子目录public_html/my_subdir加载内容,但是当我转到example.com/wp-adminexample.com/contactus或除根域之外的任何其他路径然后它将从根目录本身而不是从子目录public_html/my_subdir加载内容。

下面的

是我放在根级别的.htaccess文件,

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/my_subdir/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /my_subdir/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ my_subdir/index.php [L] 
</IfModule>

我在这里错过了什么,请帮我指出。

1 个答案:

答案 0 :(得分:0)

作为per instruction,所有内容都应该移动到子目录中,只在根中留下.htaccess。 由于您编写了it will load content from the root directory,我想根目录中还有一些文件。 如果出现所请求的文件或目录,则这两个条件是取消重写:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

因此,我建议从根目录中删除内容。

否则,我想可以在根目录中创建简单的.htaccess,只需重定向到子目录,同时在子目录中添加标准的WordPress .htaccess

基本上,最终解决方案取决于您想要达到的目标。