所以我从数据库中提取事件,例如/event-detail.php?id=1
,但我希望它看起来像 /Event-Name/ 。我如何实现这一目标?我对 mod Apache rewrite 有所了解,但不足以知道它是否可以在这里工作。还是我接近这个错误?我是否需要使用名称来提取项目?/event-detail.php?name=Event Name
? 我真的不想那样做,即使它看起来会容易得多。
问问题
393 次
2 回答
2
否则很难让它工作(我认为)。
试试这个(把它写到服务器 conf 或 .htaccess):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$ event-detail.php?name=$1 [QSA,L]
</IfModule>
这将重写 url 并将现有文件和目录以外的所有内容转发到event-detail.php
脚本。
更多信息,如果用户调用/myShowEvent1
将被重写为event-detail.php?name=myShowEvent1
或者用户调用/event/25366273
将与调用相同event-detail.php?name=event/25366273
(即如果它们在服务器中不存在)。
于 2012-06-02T05:13:20.353 回答
0
但请记住,您在页面上拥有的所有链接都必须是绝对的,而不是相对的。
试试你自己,你就会知道我在说什么。
于 2012-06-02T11:13:34.297 回答