【发布时间】:2017-01-18 22:41:40
【问题描述】:
我正在为 mod_rewrite 苦苦挣扎,似乎无法修复它。我正在尝试做以下事情:
- 将默认 /?s=search-term 重定向到 zoeken/search-term 以获得用户友好的网址
- 内部重写/通过 zoeken/search-term -> search/search-term,所以 url 保持 zoeken/search-term
您能给我一些建议或建议吗?
.htaccess
# basics
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /project/project.nl/
</IfModule>
<IfModule mod_rewrite.c>
#
# ?s=term -> zoeken/term
# wordpress has permalink search for searching
#
RewriteCond %{QUERY_STRING} \\?s=([^&]+) [NC]
RewriteRule ^$ zoeken/%1/? [NC,R,L]
# Internal rewrite zoeken -> search
#
RewriteRule project/project.nl/zoeken/(.+)$ search/$1/? [NC,PT,L]
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
# END WordPress
【问题讨论】:
-
如果我搜索
some/test会发生什么? -
您的示例将被最后一个块(#begin wordpress - #end wordpress)拾取并由 index.php 处理
标签: wordpress .htaccess mod-rewrite url-rewriting