是否可以DefaultLanguage
根据环境变量或重写条件设置 in .htaccess?
问问题
450 次
2 回答
1
一些替代方案的建议基于en.example.com/aout
使用命令行界面
启动apache
sudo bash -c 'export _LANG=en-US && /Applications/MAMP/bin/startApache.sh'
并在 .htaccess
DefaultLanguage ${_LANG}
来自anubhava先前的回答
在 .htaccess 中使用 FilesMatch
<FilesMatch "^en\.">
DefaultLanguage en-US
</FilesMatch>
<FilesMatch "^en-US\.">
DefaultLanguage en-US
</FilesMatch>
<FilesMatch "^es\.">
DefaultLanguage es
</FilesMatch>
来自:http ://www.askapache.com/htaccess/using-http-headers-with-htaccess.html#FilesMatch_Directive
在 .htaccess 中使用 mod_rewrite
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"
于 2014-05-17T14:32:21.320 回答
1
您可以像这样使用 shell 环境变量DefaultLanguage
:
DefaultLanguage ${_LANG}
_LANG
在Apache 进程启动之前设置的 env 变量在哪里。我将我的 Apache 启动为:
sudo bash -c 'export _LANG=de && /Applications/MAMP/bin/startApache.sh'
于 2014-05-15T14:51:00.257 回答