You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Web服务器配置,为不同域名设置不同APP_ID

Symfony多应用拆分后Apache与NGINX设置APP_ID的配置方法

本地Apache配置

针对后台应用(admin),需新增独立虚拟主机配置,指定专属域名并设置APP_ID=admin环境变量:

<VirtualHost *:80>
    ServerName admin.localhost
    DocumentRoot /Users/alexandra/dev/Web/PROJECT/public
    # 配置APP_ID环境变量,绑定当前虚拟主机到admin应用
    SetEnv APP_ID admin

    <Directory /Users/alexandra/dev/Web/PROJECT/public>
        Require all granted
        AllowOverride None
        DirectoryIndex index.php
        Options -Indexes
        <IfModule mod_negotiation.c>
            Options -MultiViews
        </IfModule>
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteCond %{REQUEST_URI}::$0 ^(/.+)/(.*)::\2$
            RewriteRule .* - [E=BASE:%1]
            RewriteCond %{HTTP:Authorization} .+
            RewriteRule ^ - [E=HTTP_AUTHORIZATION:%0]
            RewriteCond %{ENV:REDIRECT_STATUS} =""
            RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^ %{ENV:BASE}/index.php [L]
        </IfModule>
        <IfModule !mod_rewrite.c>
            <IfModule mod_alias.c>
                RedirectMatch 307 ^/$ /index.php/
            </IfModule>
        </IfModule>
    </Directory>
</VirtualHost>
  • 原有localhost虚拟主机保留,作为主应用访问入口;
  • 修改本地hosts文件,添加127.0.0.1 admin.localhost,确保域名解析到本地;
  • 重启Apache服务使配置生效。

线上NGINX配置

为后台应用新增server块,绑定admin专属域名,并在FastCGI参数中添加APP_ID=admin:

server {
    server_name admin.yourdomain.com;
    listen 443 ssl;
    ssl_certificate ...; # 替换为你的SSL证书路径
    ssl_certificate_key ...; # 替换为你的SSL证书密钥路径
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:50m;
    ssl_stapling on;
    ssl_stapling_verify on;
    add_header Strict-Transport-Security max-age=15768000;

    root /var/www/PROJECT/public/;

    location / {
        try_files $uri /index.php$is_args$args;
    }

    location ~ ^/index\.php(/|$) {
        fastcgi_pass unix:/var/run/php/php-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;
        # 配置APP_ID环境变量,绑定当前server到admin应用
        fastcgi_param APP_ID admin;
        internal;
    }

    location ~ \.php$ {
        return 404;
    }

    error_log ...; # 替换为你的错误日志路径
    access_log ...; # 替换为你的访问日志路径
}
  • 原有server块保留作为主应用入口;
  • 确保admin.yourdomain.com已解析到线上服务器;
  • 重启NGINX服务使配置生效。

内容的提问来源于stack exchange,提问作者user18482403

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 09:16:14