【发布时间】:2014-07-16 00:45:03
【问题描述】:
过去一天我一直在尝试让 htaccess 删除 url 参数键而不是值。许多论坛和我以后能找到的每一个 tuts,我都没有成功。
这是用 wordpress 完成的,虽然我的 url 在管理员编辑帖子上看起来很干净,但 url 并没有反映这一点。
所以我的网址是:
类别/子类别/?post=my-post
/sub-category 本身就是一个工作页面,因此 htaccess 需要忽略该 url,直到它最后有一个 ?post=my-post。
这是我目前所拥有的。它对其他人有用,但对我来说,我遇到了 404 错误
<IfModule mod_rewrite.c>
RewriteEngine On
# external redirect
RewriteCond %{THE_REQUEST} ^category/sub-category\?post=([^&]+)
RewriteRule ^sub-category$ /sub-category/%1 [R=301,L]
# internal rewrite back
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^sub-category/([^/]+)$ /sub-category?post=$1 [L]
</IfModule>
非常感谢您的帮助
【问题讨论】:
-
现在我当前的设置也导致我的 /sub-category 页面(确实有内容)返回 404 错误,这是由 htaccess 引起的,因为在我开始清理之前它工作正常网址。所以没有 ?post= 附加的子类别需要被忽略
标签: php wordpress .htaccess mod-rewrite