歡迎您光臨本站 註冊首頁

RewriteRule提取字元的問題

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

RewriteRule提取字元的問題

站點搬遷原有的URL需要301到新的URL上
old url:
www.mysite.com/blog/read.php/238.htm
new url
www.mysite.com/blog/?p=238
我寫了一段:
RewriteCond %{PATH_INFO} +
RewriteRule ^read\.php/+\.htm$ /blog/?p=%{PATH_INFO}
但是問題出在那個%{PATH_INFO} 上,如何讓RewriteRule那行的 %{PATH_INFO}也就是/238.htm只提取238這幾個數字呢?
不知道我的問題說明白沒有T_T
那個變數必須都用
HTTP headers: connection & request:  
HTTP_USER_AGENT
HTTP_REFERER
HTTP_COOKIE
HTTP_FORWARDED
HTTP_HOST
HTTP_PROXY_CONNECTION
HTTP_ACCEPT
REMOTE_ADDR
REMOTE_HOST
REMOTE_PORT
REMOTE_USER
REMOTE_IDENT
REQUEST_METHOD
SCRIPT_FILENAME
PATH_INFO
QUERY_STRING
AUTH_TYPE
  
server internals: date and time: specials:
DOCUMENT_ROOT
SERVER_ADMIN
SERVER_NAME
SERVER_ADDR
SERVER_PORT
SERVER_PROTOCOL
SERVER_SOFTWARE
TIME_YEAR
TIME_MON
TIME_DAY
TIME_HOUR
TIME_MIN
TIME_SEC
TIME_WDAY
TIME
API_VERSION
THE_REQUEST
REQUEST_URI
REQUEST_FILENAME
IS_SUBREQ
HTTPS 這裡的嗎?
《解決方案》

自己已經解決
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{query_string} +
RewriteRule ^read\.php$ /blog/?p=%{query_string}
RewriteRule ^read\.php/(+)\.htm$ /blog/?p=$1
</IfModule>
用到了RewriteRule反向引用
解決過程在
http://www.2doit.net/blog/?p=542

[火星人 ] RewriteRule提取字元的問題已經有126次圍觀

http://coctec.com/docs/service/show-post-32334.html