gpt4 book ai didi

php - 基于子域的 symfony 语言选择

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:45:56 25 4
gpt4 key购买 nike

我的 symfony 应用程序应该从子域获取用户的语言:

en.project.com - 英文版fr.project.com - 法语

等等...特殊过滤器从当前 uri 获取“GET”参数“lang”并将其保存在用户属性中。如何为多个子域设置 apache 虚拟主机配置?

最佳答案

<VirtualHost *:80>
ServerName blah.com
ServerAlias de.blah.com en.blah.com fr.blah.com
...
</VirtualHost>

阅读有关服务器别名的更多信息:http://httpd.apache.org/docs/2.0/en/mod/core.html#serveralias

您的 Symfony 过滤器可以在第一次请求期间简单地解析域并设置 session 变量。这是未经测试的,但应该有效:

<?php class localeFilter extends sfFilter
{
public function execute($filterChain)
{
// Execute this filter only once
if ($this->isFirstCall()) {
$host = $_REQUEST['HTTP_HOST'];
$locale = array_shift(explode(".",$host));
$this->getUser()->setAttribute('locale', $locale);
}

// Execute next filter
$filterChain->execute();
}
} ?>

关于php - 基于子域的 symfony 语言选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3707582/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com