0

奇怪的问题。在我的 Nginx 虚拟主机配置中,我设置了诸如 ENV 之类的变量,以告诉 PHP 它是否应该根据环境采取不同的行动。

例如:

location / {
...
   fastcgi_param   ENV  production;
...
}

然后 PHP 像这样读取它:

<?php

if($SERVER['ENV'] == 'production' {
//Do This
} else {
//Do That
}

这工作正常。但是当通过 cname 访问该站点时,似乎不再读取 ENV 变量。这可能是什么原因造成的?

完整的服务器块

server {
    listen   80;
    server_name  example.com www.example.com;

    location / {
        root   /data/sites/www.example.com/public_html/;
        index  index.php index.html index.htm;
        try_files $uri $uri/ /index.php?rt=$uri&$args;
    }

    location ~ \.php$ {
        root   /data/sites/www.example.com/public_html/;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param  PATH_INFO        $fastcgi_path_info;
        fastcgi_param  ENV  production;
        fastcgi_param HTTPS off;
    }
}
4

0 回答 0