国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Apache/Nginx為PHP設置、添加$_SERVER服務器環境變量

xiaokai / 1334人閱讀

摘要:需求在開發中為了區分線上生產環境還是本地開發環境,如果我們能通過判斷為還是來區分該多好,可惜的是數組里面根本沒有這個元素。不過據說配置信息通過的來設置的話,當和交互時,會帶來大量的數據傳輸。設置環境變量變量名變量值參考文檔

需求
在PHP開發中為了區分線上生產環境還是本地開發環境,
如果我們能通過判斷$_SERVER["RUNTIME_ENVIROMENT"]為 "DEV"還是"PRO"來區分該多好,
可惜的是$_SERVER數組里面根本沒有RUNTIME_ENVIROMENT這個元素。

一、通過nginx的fastcgi_param來設置

在nginx配置文件中,可以在nginx總體的配置文件nginx.conf中,也可以在多帶帶的網站配置環境中進行設置,如:www.tomener.com.conf

在配置環境server段location中添加相應的配置信息:

location ~ .php($|/) {
    try_files         $uri =404;
    fastcgi_pass      unix:/tmp/php-cgi.sock;
    fastcgi_index     index.php;
    include           fastcgi_params;
    fastcgi_param     SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param     RUNTIME_ENVIROMENT "PRO"; # PRO or DEV
}

這里只添加了fastcgi_param RUNTIME_ENVIROMENT "PRO"一個值,更多可以添加在后面

然后重啟重啟nginx

nginx -s reload
二、通過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

直接在配置文件中添加:

env[RUNTIME_ENVIROMENT] = "PRO"

添加后重啟php-fpm

service restart php-fpm

通過上面2種方式添加$_SERVER變量值后,我們就可以直接在php文件中通過$_SERVER來獲取相應的變量值了。

不過據說配置信息通過nginx的fastcgi_param來設置的話,當nginx和php交互時,會帶來大量的數據傳輸。

Apache設置環境變量
SetEnv 變量名 變量值

    ServerAdmin webmaster@demo.com
    DocumentRoot "e:wwwrootdemo"
    ServerName my.demo.com
    ErrorLog "logs/my.demo.com-error.log"
    CustomLog "logs/my.demo.com-access.log" common
    SetEnv RUNTIME_ENVIROMENT DEV

    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    

參考文檔:

http://man.chinaunix.net/newsoft/ApacheManual/mod/mod_env.html#setenv

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21450.html

相關文章

  • Apache/NginxPHP設置添加$_SERVER務器環境變量

    摘要:需求在開發中為了區分線上生產環境還是本地開發環境,如果我們能通過判斷為還是來區分該多好,可惜的是數組里面根本沒有這個元素。不過據說配置信息通過的來設置的話,當和交互時,會帶來大量的數據傳輸。設置環境變量變量名變量值參考文檔 需求 在PHP開發中為了區分線上生產環境還是本地開發環境, 如果我們能通過判斷$_SERVER[RUNTIME_ENVIROMENT]為 DEV還是PRO來區分該多...

    lansheng228 評論0 收藏0
  • [譯] dotenv - PHP版本的 .env

    摘要:原文地址通過加載環境變量并且能夠自動的通過和自動調用這是一個版本為什么是你不能在代碼中存儲任何的敏感賬號數據存儲在環境中存儲配置是的一項規則在部署中可能變化的所有的內容諸如數據庫認證或者第三方服務的認證應該從代碼中剝離出來也就是環境變量的 原文地址:PHP dotenv 通過 .env 加載環境變量并且能夠自動的通過 getenv(), $_ENV 和 $_SERVER 自動調用. 這...

    Eric 評論0 收藏0
  • PHP_SELF變量解析和重復路徑解決

    摘要:是通用網管協議,用于讓交互程序和服務器通信的協議。的超全局變量是一個包含了諸如頭信息路徑以及腳本位置等等信息的數組。常量包含當前例如包含文件的完整路徑和文件名。包含當前腳本的路徑。這就是整個關于解析請求信息的流程。 最近升級PHP到PHP7版本,并重新部署了新的Nginx,啟動的時候發現了一個問題,全局變量$_SERVER[PHP_SELF]的值發生了改變,從而影響到代碼的功能。因此我...

    weknow619 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<