請建議我把什麼放入.htaccess
文件。圖片的友好網址
我對服務器http://domain.tld/images/anyimage.anyextension
PNG,GIF,JPG圖像想讓網址像http://domain.tld/anyimage.anyextension
這是我現在有更多的友好。前兩個字符串如上所述更改鏈接。但最後一個字符串不會將其更改回服務器。
RewriteCond %{REQUEST_URI} ^/images/(.+)(\.gif|\.jpg|\.png)$ [NC]
RewriteRule ^image/(.+)$ /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.+)$ /images/$1 [L]
如果我以前的查詢字符串規則之後添加
RewriteCond %{REQUEST_URI} ^/([^/.]+\.(png|gif|jpg))$ [NC]
RewriteCond %{DOCUMENT_ROOT}/image/%1 -f
RewriteRule ^([^/.]+\.(png|gif|jpg))$ /image/$1 [L,NC]
右鍵然後圖像不開。如果之前沒有問題。它可能是什麼?你有一個想法如何解決它?最後一個字符串RewriteRule ^/?(.+)$ /?$1 [L]
從它變短造成這種衝突
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?([^\ ]+) [NC]
RewriteRule ^$ /%1? [R=301,L]
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?(.+)$ /?$1 [L]
不知道爲什麼,但在應用此規則後,它不會將它們從http://domain.tld/images/anyimage.anyextension更改爲http://domain.tld/anyimage.anyextension。我自己制定了以這種方式更改鏈接的代碼,但無法找到將其更改回服務器的代碼。請參閱我的文章末尾編輯。 – slfkjsdlfkj 2012-08-15 04:37:56
所以我的方法根本不起作用?喬恩我再次檢查你的方法,似乎它的工作。你是上帝!沒有正確的我想要的。只是我第一次不明白你方法的原理。再次感謝!你還記得我問過刪除.html擴展名和查詢字符串規則之間的衝突嗎?我形容這是一個單獨的問題。請你也可以在那裏幫助:[鏈接](http://stackoverflow.com/questions/11963856/removing-html-extension-rules-conflict) – slfkjsdlfkj 2012-08-15 06:01:48
@ user1586029我快速看了一下,但我不知道爲什麼SSI不工作。如果我發現錯誤,我會在這個問題上發佈一些信息。同時,如果這些答案是正確的,你應該[接受他們作爲答案](http://meta.stackexchange.com/a/5235/171219)。這是這個網站的工作方式,人們不太可能幫助那些接受率低的人,並且接受答案會將問題標記爲已解決,因此當其他人遇到同樣的問題時他們知道有答案。 – 2012-08-15 06:08:12