我正在尝试从包含它的任何URL中删除目录。这是一个wordpress博客。
目前以下网址为404,可能还有很多其他网址:
site.com/blog/archives/yyyy/mm/dd/
site.com/blog/archives/yyyy/mm/dd/post-title/
site.com/blog/archives/author/username
但是,当这些网址采用以下格式时,所有这些网址都可以正常运行:
site.com/blog/yyyy/mm/dd/
site.com/blog/yyyy/mm/dd/post-title/
site.com/blog/author/username
所以我几乎需要拿任何有导演/存档/的网址,不管后面有什么,并删除它。我在网上尝试了很多例子没有运气。我觉得我必须做错事而没有意识到这一点。
我尝试的最后一件事就是这样,认为这将是一个非常广泛的规则和工作。没有骰子。
RewriteRule (.*)/archives/(.*) $1/$2 [NC]
这是我当前的.htaccess文件。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ([0-9]+)\.html /blog/?p=$1 [NC]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:0)
在# BEGIN WordPress
行之前添加:
RewriteRule ^archives/(.*)$ $1 [L,R=301]