Wordpress .htaccess覆盖父.htaccess

Wordpress .htaccess覆盖父.htaccess,wordpress,apache,.htaccess,mod-rewrite,url-rewriting,Wordpress,Apache,.htaccess,Mod Rewrite,Url Rewriting,所以我已经为此挣扎了一整天,但到目前为止没有任何帮助。 我在域的根目录中安装了一个PyroCMS,在同一文件夹(public_html)中安装了一个子域blog 现在的问题是,当我访问博客时,我看到的是blog.iber.co.uk。显然,这是因为博客文件夹存在,而不仅仅是htaccess重写的url 文件夹结构: public_html blog .htaccess .index.php etc.. .htaccess index.php

所以我已经为此挣扎了一整天,但到目前为止没有任何帮助。 我在域的根目录中安装了一个PyroCMS,在同一文件夹(public_html)中安装了一个子域blog

现在的问题是,当我访问博客时,我看到的是blog.iber.co.uk。显然,这是因为博客文件夹存在,而不仅仅是htaccess重写的url

文件夹结构:

public_html
   blog
      .htaccess
      .index.php
      etc..
   .htaccess
   index.php
   etc..
但是,如果我从blog文件夹dev.iber.co.uk/blog/中删除htaccess,它将被重写为index.php

以下是dev.iber.co.uk的.htaccess(此子域实际上指向根public_html文件夹):

以下是wordpress博客中的.htaccess:

Options +FollowSymLinks -Indexes
RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog\.iber\.co\.uk [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L]
我做错了什么?我无法重写日志,因为它是共享服务器。如果有人帮我解决这个问题,我会给他50次机会


感谢家长htaccess中的

,这会解决您的问题吗?还是您不需要从dev.domain访问/blog/path


为什么blog/.index.php的前缀是点?首先读取父文件夹htaccess,因此在那里使用[L]进行的任何重写匹配都将是最后一次重写。您可能希望在域之间进行重定向-如果url作为路径/blog/输入,则发送到blog。重定向未重写的子域当您转到时,您希望看到什么?我希望看到一个属于dev.iber.co.uk的博客页面-它与blog.iber.co.ukIt无关。它是一个简单的页面,应该在dev.iber.co.uk中重写为index.php。您是否可以控制虚拟主机的DocumentRoot—“共享服务器”所以我想没有?如果我错了,请纠正我,dev../blog与dir中的文件对象无关,它只是directview/model的另一种url模式,对吗?
Options +FollowSymLinks -Indexes
RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog\.iber\.co\.uk [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L]
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST}     ^dev.iber.co.uk$     [NC]
RewriteCond %{REQUEST_URI}   ^/blog/              [NC]
RewriteRule ^/blog/(.*)$     blog.iber.co.uk/$1   [R=302.L]
... other rules