重写URL从漂亮到难看? / something - > ?A =东西

时间:2011-11-11 23:09:12

标签: php apache url mod-rewrite

我希望使用url rewrite来访问它...

http://url.com/?a=value

...经由

http://url.com/value

通过使用url.com/value,我实际上正在加载url.com/?a=value。

我假设我需要在htaccess文件中重写,然后以某种方式在index.php中检测到这一点并拉出字段值?不幸的是,这有点超出我的意愿,所以非常感谢你的帮助。

谢谢!

2 个答案:

答案 0 :(得分:1)

这是一个标准的htaccess文件,用于“漂亮”的网址,例如您需要的网址:

#.htaccess file
Options +FollowSymLinks
RewriteEngine On
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?a=$1 [L]

然后在index.php中,您可以从'a'变量中获取最初请求的路径。

$path = $_GET['a']; 

答案 1 :(得分:1)

此.htaccess代码考虑了http://url.com/value?parameter=something

之类的内容
RewriteEngine On

RewriteRule ^([A-Za-z0-9-/]+)\&(.*)$ /$1?$2 [R]

RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-/_]+)$ /index.php?a=$1&${QUERY_STRING} [L,QSA]