如何为我的网站制作友好的网址?

3 apache mod-rewrite

到目前为止,我在index.php中包含了所有内容:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?page=$1 [QSA,L]
Run Code Online (Sandbox Code Playgroud)

还有一些页面,我使用$ _GET这样:

SELECT * FROM news WHERE id = ".intval($_GET['id'])
Run Code Online (Sandbox Code Playgroud)

如果我想查看我输入的新闻news?id=1 而不是,?page=news&id=1但我希望能够使用news/1.

我是否必须为每个使用GET的页面添加重写规则?或者,还有更好的方法?

我希望我不必为所有页面都这样做.

Gra*_*ant 5

RewriteRule ^([^/]*)/?([^/]*)$ index.php?page=$1&id=$2 [QSA,L]
Run Code Online (Sandbox Code Playgroud)

应该允许您的页面输入为 www.example.com/page/id

您的大部分页面都会在内部看起来像www.example.com/index.php?page=text&id=但不应影响任何内容.