我想從我的動態創建的URL中刪除'%252F'。 我有一個php文件,創建鏈接與%2F
而不是/
。 這些鏈接在URL-Bar中表示爲%252F
,而不是/
,這會導致一些問題。
我試圖用.htaccess文件實現的目標是將所有%2F
重定向到/
或將全部%252F
重命名爲/
,因爲我無法更改創建鏈接的php代碼。
用mod_rewrite從網址中刪除%2F
這是我的.htaccess
RewriteEngine on
Options +SymlinksIfOwnerMatch
RewriteBase/
RewriteCond %{HTTP_HOST} subdomain.mydomain.com
RewriteCond %{REQUEST_URI} (.*)/style.css [OR]
RewriteCond %{REQUEST_URI} (.*)/script.js [OR]
RewriteCond %{REQUEST_URI} (.*)/logo.png
RewriteRule (.*) http://www.mydomain.com%{REQUEST_URI} [R=301,NC,L]
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.php\ HTTP/
RewriteRule ^(([^/]+/)*)index\.php$ http://subdomain.mydomain.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} \ /([^\ \?]*)([^\ \?]*)%2f(\?.*)?\ [NC]
RewriteRule !^/ /%1/%2 [QSA]
RewriteRule ^(/.+)%2f(.*)$ $1/$2 [NC,QSA]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+index\.php\?dir=([^\s]+) [NC]
RewriteRule^%1? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?dir=/$1 [L]
我無法得到它的工作,也許別人可以幫助我。 非常感謝!
爲什麼不修復破損的PHP腳本呢? –
正如我所說我無法改變它! – basbebe