为什么这两个特定类别的RewriteRule不起作用?

时间:2016-05-29 12:27:46

标签: wordpress apache .htaccess mod-rewrite

我很感激帮助使Wordpress RewriteRule工作。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /mywebsite/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /mywebsite/index.php

RewriteRule ^/news-mywebsite/([a-z]+)$ /news-mywebsite/?cat=$1

</IfModule>

我想重写的网址就是这个     http://localhost/mywebsite/news-mywebsite/?cat=news

我想把它重写为     http://localhost/mywebsite/news-mywebsite/news

我也尝试在google上搜索,但我无法理解为什么它不能用于htaccess。

2 个答案:

答案 0 :(得分:0)

您是否在页面上查看此规则,如http://htaccess.mwl.be/

删除斜杠/。在.htacces中,路径没有斜线。

答案 1 :(得分:0)

您需要重新排序规则并从RewriteRule模式中删除前导斜杠:

RewriteRule ^news-mywebsite/([a-z]+)$ /news-mywebsite/?cat=$1 [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /mywebsite/index.php [L]