基本URL重写从重写URL到真实URL,反之亦然

时间:2014-07-20 06:17:12

标签: php .htaccess url mod-rewrite url-rewriting

我对URL重写完全不熟悉。 我读了几篇文章,并举了几个例子,所以我知道:

RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?p=$1 [L]

我可以将访问者从www.domain.com/Home重定向到www.domain.com/index.php?p=Home

我想了解的是,一旦用户点击主页上指向他/她的链接到www.domain.com/index.php?p=Biography,我可以创建浏览器的URL栏显示www.domain.com/Biography而不是真实的网址?

这一切都可以在.htaccess文件中完成,还是应该从PHP中完成?

谢谢!

1 个答案:

答案 0 :(得分:2)

是的,这是可能的。将此代码放在根.htaccess:

RewriteEngine On

RewriteCond %{THE_REQUEST} /index\.php\?p=([^\s&]+) [NC]
RewriteRule ^ /%1? [R=302,L]

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