【发布时间】:2012-02-02 13:02:55
【问题描述】:
我正在努力在网站上实施 URL 更改。首先,我只想在子目录级别实现此 URL 更改。我在根目录安装了 WordPress,但我正在创建自定义分类部分。它位于目录 /classifieds/ 中。因此,我只想重写此子目录中的 URL。
我已经设法使重写工作正常,只为分类子目录根据需要执行 301 并为 SEO 添加了尾随斜杠。我遇到的唯一问题是我的页面都没有传递查询字符串值。如何修改下面的 .htaccess 代码,以便在页面之间传递查询字符串?
IndexIgnore *
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /([^/]+/)*[^.]+\.php(\?[^\ ]*)?\ HTTP/
RewriteRule ^(([^/]+/)*[^.]+)\.php$ http://www.mysite.com/classifieds/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ http://www.mysite.com/classifieds/$1/ [R=301,L]
redirect 301 /classifieds/index/ http://www.mysite.com/classifieds/
提前感谢所有帮助!
【问题讨论】:
-
能否提供一个不传递查询字符串的URL示例
标签: php .htaccess query-string