【发布时间】:2020-06-09 09:33:43
【问题描述】:
我在将 url 从动态转换为静态时遇到问题。
我有一个使用动态 url 生成不同页面的网站,例如:
www.example.com/?pr=project-abc123
我想用 htaccess 重写每一个的 url 使其成为静态,像这样:
www.example.com/project-abc123
// or
www.example.com/pr/project-abc123
现在,我发现这个 htaccess 代码似乎可以工作:
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} \?
RewriteCond %{QUERY_STRING} ^p=(.*)$
RewriteRule (.*) http://example.com/%1? [L,R=301]
RewriteRule ^(.*)$ /index/?pr=$1[L]
URL 已按指示重写(第一种类型,whitout /pr/),但给了我一个 multiple selection 错误。我做错了什么?
【问题讨论】:
-
这能回答你的问题吗? URL rewriting with PHP
-
"multiple choice" error- ?大概您已经更改了应用程序中的 URL? -
这没什么。其他主题中的方法不起作用。消息是:'300 多项选择。在此服务器上找不到您请求的文档名称 (/.php)。但是,我们发现文件名称与您要求的文件相似。'
标签: php .htaccess mod-rewrite url-rewriting