我在我的htaccees以此來改變取決於cookie值的IMG路徑:htaccess的不工作 - 與cookie值更新圖像路徑
<IfModule mod_rewrite.c>
# check for client cookie
RewriteCond %{HTTP_COOKIE} (?:^|;\s*)client=([^;]*)
# check if an image was requested
RewriteCond %{REQUEST_FILENAME} \.(jpe?g|gif|bmp|png)$
# exclude these folders
RewriteCond %{REQUEST_URI} !some/members/logos
# grab everything before the variable folder and everything afterwards
# replace this with first bracket/cookie_value/second bracket
RewriteRule (^.+)/VARIABLE/(.+)$ $1/%1/$2 [L]
</IfModule>
圖片鏈接是像這樣:
<img src="http://www.some.com/images/VARIABLE/img/1.jpg" alt="" />
我很高興我做到了這一點,但問題是......它不工作。我不知道爲什麼?任何人都可以點亮一下嗎?
謝謝!
HALFWAY:
我得到這個工作:
RewriteRule ^(.+)/VARIABLE/(.+)$ $1/SET_VALUE/$2 [L]
其中具有SET_VALUE替換我的變量。然而,只要我添加一個條件,整個事情就會失敗,任何圖像都不會顯示出來。例如,這應該給我的cookie的值,這是我想要進入,而不是SET_VALUE:
RewriteCond %{HTTP_COOKIE} (?:^|;\s*)client=([^;]*) [NC]
如果您完全控制了Apache,請啓用調試模式:「RewriteLogLevel 9」(或http://httpd.apache.org/docs/current/mod/mod_rewrite.html#logging獲取最新版本)並檢查日誌 - 它應該詳細告訴你它失敗的位置(越高的調試級別越詳細/詳細的日誌將會是)。 – LazyOne 2012-03-15 16:07:05
無法訪問... :-(任何其他的想法,哪裏可以得到關於發生什麼事情的一些信息?我只是猜測 - 上傳 - 檢查現在,我不希望看到自己在做更長的時間... – frequent 2012-03-15 16:10:35
也許你可以在當地的Apache上使用它,否則它可能會在循環中再次嘗試並嘗試使用。無論如何:'^(。+)/ VARIABLE /(。+ \。(jpe?g | gif | bmp | png))RewriteRule的$'模式將擺脫第二種情況。'RewriteCond%{REQUEST_URI}!/ some/members/logos'應該可以正常工作(除非你在這裏有錯誤的路徑!!)。 – LazyOne 2012-03-15 16:31:12