【发布时间】:2015-03-23 07:45:57
【问题描述】:
在我的网站中有一个带有简码的页面,它在打印内容之前读取 3 个参数。页面如下所示:
/collaboratori?collaboratore=6&n=Mario&c=Rossi
我想将其转换为 SEO 友好的网址,如下所示:
/profilo-collaboratore/6/Mario/Rossi
我正在使用以下 Mod 重写规则:
RewriteEngine On
RewriteRule ^profilo-collaboratore/([^/]*)/([^/]*)/([^/]*)$ /collaboratori?collaboratore=$1&n=$2&c=$3 [L]
但是当我尝试加载 /profilo-collaboratore/6/Mario/Rossi 时,Web 服务器返回 404 错误代码,而 Wordpress 向我显示 404 错误页面
我的 .htaccess 是:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^profilo-collaboratore/([^/]*)/([^/]*)/([^/]*)$ /collaboratori?collaboratore=$1&n=$2&c=$3 [L]
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我哪里错了?
非常感谢
【问题讨论】:
-
网址是否应该由 Wordpress 处理(例如,它是否是 wordpress 插件)?
-
是的,这是我写的插件
-
Wordpress 依赖地址栏中的 url,而不是重写到的 url。这意味着在您的 .htaccess 文件中使用 mod_rewrite 重写 url 没有任何效果。
-
我该怎么做?你有例子吗?
标签: wordpress apache .htaccess mod-rewrite friendly-url