Re: [请益] .htaccess 如何把网址安全化

楼主: anawak (...)   2014-03-09 17:55:56
※ 引述《awa6811 (希望永存)》之铭言:
: 如何把网址
: ex: ph.com/index.php?ptype=info&id=50&kind=girl&pind=a
: 变成较安全的 ph.com/info/50/girl/a
: 我有参考写法但是我不知道为何这样写
: RewriteEngine on
: RewriteCond $1 !^(index\.php)
: RewriteCond %{REQUEST_FILENAME} !-f
: RewriteCond %{REQUEST_FILENAME} !-d
: RewriteRule ^(.*)$ index.php/$1 [L,QSA]
: 并且我怎么套用都不行
: 请懂得网友帮忙解惑 感恩 _/\_
使用者请求
ph.com/info/50/girl/a
网站要返回下面网址的内容,但是网址不变
ph.com/index.php?ptype=info&id=50&kind=girl&pind=a
应该是:
RewriteEngine On
RewriteRule ^(.+)/(.+)/(.+)/(.+)$
index.php?ptype=$1&id=$2&kink=$3&pind=$4 [L]
解释RewriteRule:
^ 代表开头
/ 这个是网址里面的斜线,用来分隔字串。
() 每一对括号补捉到一组字串,依序是 $1, $2, $3, $4
. 代表任意字符
+ 代表1个字以上,至少1个字
最后再转址到后面那个字串。
或是指定用 \w\d
RewriteRule ^([\w\d]+)/([\w\d]+)/([\w\d]+)/([\w\d]+)$
[] 代表1个字符。
\w 代表英文字母
\d 代表数字。
你可以参考我这篇:
http://ron314159.blogspot.tw/2012/01/apache-rewriterule.html
第一个范例就是你要的。

Links booklink

Contact Us: admin [ a t ] ucptt.com