2017-02-10 45 views
-4

請幫我設置一個重寫我的.htaccess文件。下面是我想已經重新寫了一個例子網址:Htaccess重寫指導

www.domain.com/img/another-folder/500x700.jpg?w=500&h=700

你可以看到我直接鏈接到.jpg文件和尺寸存儲到變量wh。我想完全www.domain.com後刪除一切,只是保持我存儲的變量,所以它看起來像:

www.domain.com/500/700

什麼是這樣做的最佳方式?

非常感謝所有幫助。謝謝!

+2

最好的方法是爲此實現一個RewriteRule。無論是在.htaccess樣式文件中,還是在http服務器主機配置中。我建議你首先閱讀你想要使用的工具的文檔:http://httpd.apache.org/docs/current/mod/mod_rewrite.html它的質量很好,並帶有很好的例子。 – arkascha

+0

謝謝@arkascha。雖然我已經知道我需要一個RewriteRule。這就是我要求的幫助。當我繼續閱讀這些非常令人困惑的文檔時,任何有答案的人都會非常有幫助! –

+0

請理解,SO不是免費的編碼服務。您需要自己瞭解這個主題,自己嘗試一下,並在提出問題時提供您目前爲止的內容。無論如何,請看下面,我快速地輸入了一個簡單的解決方案。 – arkascha

回答

1

這將是一個直接實現與你的要求:

RewriteEngine on 
RewriteRule ^/?([0-9]+)/([0-9]+)$ /img/another-folder/500x700.jpg?w=$1&h=$2 [END] 

這條規則將在動態配置文件中的實際HTTP服務器的主機配置工作。

您顯然需要重寫模塊才能啓用。而且,如果您使用.htaccess樣式文件,則其解釋也會首先啓用。

如果您使用的是舊版本的Apache http服務器,那麼您可能需要用L標誌替換END標誌。如果在請求時發生http狀態500(內部服務器錯誤),請嘗試一下。

還有一個常規提示:你應該總是喜歡把這樣的規則放在HTTP服務器主機配置中,而不是使用動態配置文件(「.htaccess」)。這些文件出了名的錯誤,很難調試,他們真的放慢了服務器。它們僅提供作爲的情況下最後的選擇,你沒有對主機配置控制(讀:真的很便宜的託管服務提供商),或者如果你有依賴於寫自己的重寫規則(這是一個明顯的安全惡夢的應用)。