【问题标题】:Why this RewriteRule for two specific categories doesn't work?为什么两个特定类别的 RewriteRule 不起作用?
【发布时间】:2016-05-29 20:40:35
【问题描述】:

如果能帮助我使这个 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>

我要重写的url是这个 http://localhost/mywebsite/news-mywebsite/?cat=news

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

我也尝试在 google 上搜索,但我不明白为什么它无法在 htaccess 上运行。

【问题讨论】:

    标签: wordpress apache .htaccess mod-rewrite


    【解决方案1】:

    你在http://htaccess.mwl.be/这样的页面上检查这个规则吗?

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

    【讨论】:

      【解决方案2】:

      您需要重新排序规则并从 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]
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-17
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      相关资源
      最近更新 更多