PHP 伺服器變數$_SERVER,增加$_ENV變數
阿新 • • 發佈:2018-12-16
一、通過php主配置檔案php-fpm.conf來設定
這個設定必須放在主配置檔案php-fpm.conf裡,不能放到include指令設定的子配置檔案裡,否則會報錯:「Array are not allowed in the global section」
我的php-fpm.conf位置在/usr/local/php/etc/php-fpm.conf
直接在配置檔案中新增:
新增後重啟php-fpm
二、通過nginx的fastcgi_param來設定
server { listen 80; server_name test.cn; root "d:/WWW/test; location / { index index.html index.htm index.php; #autoindex on; } location ~ \.php(.*)$ { fastcgi_param RUNTIME_ENVIROMENT 'DEV'; fastcgi_param MASTER_DB_HOST '127.0.0.1'; fastcgi_param MASTER_DB_DATABASE 'test'; fastcgi_param MASTER_DB_USER 'root'; fastcgi_param MASTER_DB_PASSWD 'root'; } }
Apache設定環境變數
SetEnv 變數名 變數值
<VirtualHost *:80> ServerName test.cn DocumentRoot d:/myProject/www/test SetEnv HM_ENV DEV SetEnv HM_MASTER_DB_HOST 47.190.1.1 SetEnv HM_MASTER_DB_DATABASE test SetEnv HM_MASTER_DB_USER root SetEnv HM_MASTER_DB_PASSWD root <Directory "d:/myProject/www/test/"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require local </Directory> </VirtualHost>
重啟Nginx/Apache 配置生效
在PHP中呼叫伺服器環境變數
<?php
//1、getenv()函式定義:取得系統的環境變數; 語法:string getenv(string varname)
$env = getenv('MASTER_DB_HOST');
// 2、超全域性變數方式:
$env = $_SERVER['MASTER_DB_HOST'];
?>