我有幾個網站,我爲此構建了一個CMS,將語言保存在一個XML文件中,並根據頁面和語言選擇器,它將顯示正確的數據。我cuurently有8種不同的語言爲每個站點和URL是這樣的:使用.htaccess文件重寫多種語言的友好的php URL
http://leclosdamboise.com/index.php?lang=fr
http://leclosdamboise.com/rooms.php?lang=en
http://leclosdamboise.com/hotel.php?lang=de
我想擁有它,這樣的URL重寫一下像這樣:
http://leclosdamboise.com/fr/index.php
http://leclosdamboise.com/en/rooms.php
http://leclosdamboise.com/de/hotel.php
我花了幾個小時通過論壇梳理和沒能找到一個合適的解決方案。我的.htaccess文件目前看起來是這樣的:
SetEnv PHP_VER 5_TEST
SetEnv REGISTER_GLOBALS 0
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)$ index.php?lang=$1 [QSA,L]
這並不做任何事情,網址仍然是醜陋的繼女版。上面的鏈接是其中一個網站的實際鏈接。一旦我解決了這個問題,我需要將它分解到幾個站點,但一直在努力解決這個問題。誰能告訴我我做錯了什麼?
嗯,好吧,這似乎工作。但是現在我所有的相對鏈接都搞砸了,因爲頁面認爲它更深一層。有沒有辦法解決這個問題呢,還是我現在需要絕對的路徑? ... – Matto
也許修改我的答案解決了這個問題。如果沒有,請檢查[這個答案](http://stackoverflow.com/questions/15446835/htaccess-to-redirect-images/15447517#15447517)關於如何使用BASE元素。可能有幫助。 –
是的,通過向我的標題添加 所有圖像等相關鏈接仍然有效。謝謝。現在我只需要爲索引頁面添加語言檢測,而且我都很好。 –
Matto