2014-05-15 83 views

回答

1

您可以使用shell的環境變量DefaultLanguage這樣的:

DefaultLanguage ${_LANG} 

哪裏_LANG是環境變量Apache進程尚未啓動之前設置。我開始我的Apache爲:基於

sudo bash -c 'export _LANG=de && /Applications/MAMP/bin/startApache.sh' 
+0

使用mod_rewrite 謝謝!所以,沒有辦法使用重寫條件... – RafaSashi

+1

不,我嘗試了很多東西,比如'mod_rewrite'和'mod_setenvif',但是'DefaultLanguage'不喜歡其他任何東西。 – anubhava

+0

使用'FilesMatch'怎麼樣? http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html#FilesMatch_Directive – RafaSashi

1

一些替代的對策建議en.example.com/aout

使用命令行界面

啓動Apache與

sudo bash -c 'export _LANG=en-US && /Applications/MAMP/bin/startApache.sh' 

,並在.htaccess

DefaultLanguage ${_LANG} 
從以前的答案

通過anubhava

從在.htaccess

<FilesMatch "^en\."> 
DefaultLanguage en-US 
</FilesMatch> 

<FilesMatch "^en-US\."> 
DefaultLanguage en-US 
</FilesMatch> 

<FilesMatch "^es\."> 
DefaultLanguage es 
</FilesMatch> 

使用FilesMatch:http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html#FilesMatch_Directive

在.htaccess

RewriteEngine On 
RewriteBase/

#get language from host name 
RewriteRule^- [E=LANG:en] 
RewriteCond %{HTTP_HOST} ^(es|fr|en|se)\. [OR] 
RewriteRule^- [E=LANG:%1] 

Header always set Content-Language "%{LANG}e" 
+1

「Content-Language」與「DefaultLanguage」相同嗎? – anubhava

+0

很好的問題。這只是一組建議。我在這裏問同樣的問題http://stackoverflow.com/questions/23726955/htaccess-is-content-language-same-as-defaultlanguage – RafaSashi

相關問題