1
我最近發現了mod重寫,我想知道是否有可能 重寫包含出站url的變量。Mod重寫變量包含一個帶有特殊字符的網址
到目前爲止它根本不工作。我認爲這是由於變量中的特殊字符引起的,我不知道如何解決這個問題。到目前爲止
我的.htaccess代碼:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^url/(\w+)/?$ link.php?url=$1 [L]
我想改寫:
http://www.example-site.com/url/http://www.affiliate-site.com/dir/index.php?page=home
要:
http://www.example-site.com/link.php?url=http://www.affiliate-site.com/dir/index.php?page=home
任何幫助將非常感激。
在此先感謝。
喜嘉, 謝謝,確實有效。 但是,我遇到了另一個問題,當我輸入「http://www.affiliate-site.com」,並在我的PHP文件中回顯GET變量時,它變成「http:/www.affiliate-site。 COM」。請注意,雙斜槓輸出爲單斜槓。 而當url包含查詢「?」時,它會切斷url中的查詢。 因此「http://www.affiliate-site.com/dir/index.php?page=home」變成了「http:/www.affiliate-site.com/dir/index.php」。 任何想法爲什麼發生這種情況?我該如何解決它? 最好的問候 – 2010-07-03 22:38:40
至於去除雙//,你是否在URL上使用'stripslashes()'?至於查詢字符串,是的,它認爲什麼後?是一個查詢字符串。爲了解決這個問題,我會讀入並替換'$ _SERVER ['REQUEST_URI']'中的當前URL。這可以讓你只是你正在尋找的網址,然後使用http://www.php.net/manual/en/function.parse-str.php來獲得你需要的變量。 – 2010-07-03 22:54:50