關(guān)于“nginx訪問php”的問題,小編就整理了【3】個(gè)相關(guān)介紹“nginx訪問php”的解答:
如何讓PHP能夠讀取系統(tǒng)環(huán)境變量?一、fpm模式
1、通過服務(wù)器傳遞
如在nginx的配置里設(shè)置:
fastcgi_param ENV_XXX 123456;
每次頁面請求nginx都會(huì)將此變量傳遞給php,php可以通過getenv函數(shù)或$_SERVER全局變量獲得。
2、通過fpm配置傳遞
fpm在每次啟動(dòng)時(shí)都會(huì)讀取php-fpm.conf文件中的環(huán)境變量設(shè)置,如:
env[ENV_XXX]="test test"
或者讓fpm讀取系統(tǒng)環(huán)境變量,如:
env[ENV_XXX]=$ENV_XXX
注意此種方式要確保系統(tǒng)環(huán)境變量存在,且不被sudo禁用。
如果fpm是用sudo方式啟動(dòng),默認(rèn)sudo會(huì)禁用一些環(huán)境變量,可以通過以下方式放開限制:
vim /etc/sudoers
Defaults env_reset
Defaults env_keep = "ENV_XXX"
或者干脆放開所有限制:
Defaults !env_reset
最后,如果修改了php-fpm.conf中的設(shè)置需要重啟fpm才能生效,同樣php可以通過getenv函數(shù)或$_SERVER全局變量獲得環(huán)境變量。
二、命令行模式
命令行模式限制較少,可以通過getenv函數(shù)或$_SERVER全局變量獲取對當(dāng)前執(zhí)行用戶有效的系統(tǒng)環(huán)境變量,同樣要注意sudo的限制。
window+nginx+php環(huán)境配置,附配置搭配說明?1,下載PHP
php下載版本比較多,其中,
vc9=vs2008編譯,推薦使用IIS+php搭配模式,
vc6=vs6編譯,推薦使用apache+php方式搭配,
Thread Safe,線程安全,執(zhí)行時(shí)會(huì)進(jìn)行線程(Thread)安全檢查,以防止有新要求就啟動(dòng)新線程的CGI執(zhí)行方式而耗盡系統(tǒng)資源。Non Thread Safe是非線程安全,在執(zhí)行時(shí)不進(jìn)行線程(Thread)安全檢查。
Non Thread Safe,
再來看PHP的兩種執(zhí)行方式:ISAPI和FastCGI。
ISAPI執(zhí)行方式是以DLL動(dòng)態(tài)庫的形式使用,可以在被用戶請求后執(zhí)行,在處理完一個(gè)用戶請求后不會(huì)馬上消失,所以需要進(jìn)行線程安全檢查,這樣來提高程序的執(zhí)行效率,所以如果是以ISAPI來執(zhí)行PHP,建議選擇Thread Safe版本;
而FastCGI執(zhí)行方式是以單一線程來執(zhí)行操作,所以不需要進(jìn)行線程的安全檢查,除去線程安全檢查的防護(hù)反而可以提高執(zhí)行效率,所以,如果是以FastCGI來執(zhí)行PHP,建議選擇Non Thread Safe版本。
官方并不建議你將Non Thread Safe 應(yīng)用于生產(chǎn)環(huán)境,所以我們選擇Thread Safe 版本的PHP來使用。
nginx 404解決辦法?nginx 404通常有以下原因出現(xiàn)該問題:
1. nginx自己的頁面不存在返回404
2. 反向代理的頁面不存在
解決思路:
當(dāng)出現(xiàn)圖片無法訪問的情況,首先應(yīng)拿到對應(yīng)圖片的url(可以通過在瀏覽器頁面上點(diǎn)擊右鍵選擇檢查或者直接復(fù)制圖片地址),然后再對比圖片在服務(wù)器存放的實(shí)際位置,根據(jù)二者的差異選擇不同的解決辦法。
解決方法:
確認(rèn)服務(wù)器的nginx.conf的配置文件中設(shè)置的根目錄和索引文件均沒有錯(cuò)誤, 網(wǎng)站根目錄下的確存在請求的文件
到此,以上就是小編對于“nginx訪問php”的問題就介紹到這了,希望介紹關(guān)于“nginx訪問php”的【3】點(diǎn)解答對大家有用。