我有一個小數量的靜態網站,我只是想隱藏.html擴展名的:如何隱藏與Apache的mod_rewrite .html擴展
- 的URL
/foo
獲取靜態文件/foo.html
- 的瀏覽器仍然顯示的URL
/foo
然後,客戶機可以在風格mydomain.com/foo
送出書籤,而不是mydomain.com/foo.html
。
這聽起來很簡單,我以前使用mod_rewrite
之前(使用WordPress或重定向),但這被證明是更難以破解,我認爲。也許我失去了一些東西真的很明顯,但我不能在任何地方找到一個解決方案,我一直在這一切的一天!
我們運行我們自己的服務器,所以這次能去的地方是最好的地方。
附錄
該解決方案如下檢查工作的罰款。然後,在運行該網站一段時間後,我注意到兩個問題:
所有頁面開始出現無格式。我重新加載,清除緩存等,但仍然沒有風格。我以前遇到過這個麻煩,無法找到源代碼。
有一個目錄,並命名爲「畫廊」的HTML文件,以便/畫廊鏈接顯示一個目錄列表,而不是HTML文件。我應該能夠排序的那一個,但進一步的提示歡迎:-)
謝謝!只是將模式更改爲'(。[a-z] +)',因爲所有的html文件都只包含那些字符。新的問題現在最糟糕的是沒有CSS(這最初出現在重新加載,然後打開和關閉樣式,現在所有的文件都是沒有樣式的,所以我想早期的視圖獲取緩存的CSS文件?)。 – 2010-01-03 17:48:31
@DaveEveritt我有相同的CSS問題,只有當我追加一個尾部的斜槓到URL,在這種情況下,所有相關的鏈接被認爲是在一個子目錄,包括CSS。你找到了解決方法嗎? – Lazlo 2012-01-12 14:47:32
@LazloBonin一種解決方案不是使用絕對路徑代替相對路徑。或者使用適當的路徑顯式設置一個基本URL,以便從基本URL路徑而不是當前URL路徑解析相對路徑。 – Gumbo 2012-01-12 15:25:45