如何使用SEO友好的apache URL更改php URLS?

时间:2012-06-02 05:05:44

标签: php apache mod-rewrite

所以我从数据库中提取事件,例如/event-detail.php?id=1,但我希望它看起来像/ Event-Name /。我该如何实现这一目标?我知道一些关于mod的重写但不足以知道它是否适用于此。或者我接近这个错误?我需要用名字来拉物品吗? /event-detail.php?name=Event Name?我并不是真的想这样做,即使它看起来更容易。

2 个答案:

答案 0 :(得分: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>

这将重写网址并将除现有文件和目录之外的所有内容转发到event-detail.php脚本。

更多信息,如果用户调用的/myShowEvent1将被重写为event-detail.php?name=myShowEvent1,或者用户调用的/event/25366273与调用event-detail.php?name=event/25366273相同(即如果他们是在服务器中不存在。)

答案 1 :(得分:0)

但请记住,您在页面上的所有链接必须绝对不是相对的。

试试自己,你会知道我在说什么。