通过.htaccess更改URL结构

时间:2013-12-03 19:21:16

标签: php regex apache .htaccess mod-rewrite

我知道apache .htaccess文件能够重写URL并使其更具可读性和效率,但我不知道如何实现这一点。

假设我有这些类型的网址:

http://mywebsite.com/index.php?mode=home
http://mywebsite.com/index.php?mode=articles
http://mywebsite.com/index.php?mode=about

但我希望这些看起来更好,更易读。像这样:

http://mywebsite.com/home
http://mywebsite.com/articles
http://mywebsite.com/about

对于像我这样的apache新手来说,这似乎是一项复杂的任务。

我很感激任何帮助。

1 个答案:

答案 0 :(得分:2)

将此代码放在DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/?$ index.php?mode=$1 [QSA,L]

参考:Apache mod_rewrite Introduction