1
我正在使用以下語言翻譯規則。虛擬子文件夾.htaccess忽略用於源目的的語言代碼
都工作得不錯:
RewriteRule ^([a-z]{2})/?$ /index.php?act=setlang&val=$1 [L,CO=LANG:$1:%{HTTP_HOST}]
RewriteRule ^([a-z]{2})/([a-zA-Z0-9-]+)\.php$ $2.php?act=setlang&val=$1 [L,CO=lang:$1:%{HTTP_HOST}]
所以要www.mysite.com/en/test.php此按預期工作。
但是如果我更改基礎URL從mysite.com to
mysite.com/(2letterlangcodehere)` 讓所有的鏈接自動具有郎前綴然後一切都被搞砸了(我相信這是由於相對路徑,因爲期待在mysite.com/(2letterlangcodehere)找到某些資源,這顯然不存在,因爲我沒有物理地創建這些文件夾)。
我該如何讓mysite.com/(langcodehere)在視覺上出現並執行上面的規則,但實際上這個文件夾只是指向mysite.com/對於腳本,css,源代碼透視圖這是可能的.htaccess?
謝謝,這部分的工作,但這是正確的解決方案,我想我必須堅持與絕對URL ..因爲郎路徑可能或可能不存在所以親戚不能成爲一個選擇。 – Athanatos
是的,絕對URL最適合虛擬文件夾/漂亮的URL。 – anubhava