nginx php环境搭建_php+nginx环境配置
本篇文章的內(nèi)容是PHP和nginx環(huán)境的配置,在這里分享給大家,也給有需要的朋友一個(gè)參考
php+nginx環(huán)境配置
1、首先需要準(zhǔn)備的應(yīng)用程序包。
nginx:nginx/Windows-1.0.4
php:php-5.2.16-nts-Win32-VC6-x86.zip (nginx下php是以FastCGI的方式運(yùn)行,所以我們下載非線程安全也就是nts的php包)
(還會(huì)用到)RunHiddenConsole:RunHiddenConsole.zip
2、安裝與配置。
1)php的安裝與配置。
直接解壓下載好的php包,到D盤PHP目錄(D:\PHP),這里把解壓出來的文件夾重命名成php7。進(jìn)入文件夾修改php.ini-recommended文件為php.ini,并用寫字本打開來。找到php配置文件php.ini,保存即可。
搜索“extension_dir”,找到: e;xtension_dir = "ext" 先去前面的分號(hào)再改為 extension_dir = "C:\wnmp\php\ext"
搜索“date.timezone”,找到:;date.timezone = 先去前面的分號(hào)再改為 date.timezone = Asia/Shanghai
搜索“enable_dl”,找到:enable_dl = Off 改為 enable_dl = On
搜索“cgi.force_redirect” ;cgi.force_redirect = 1 先去前面的分號(hào)再改為 cgi.force_redirect = 0
搜索“fastcgi.impersonate”,找到: ;fastcgi.impersonate = 1 去掉前面的分號(hào)
搜索“cgi.rfc2616_headers”,找到:;cgi.rfc2616_headers = 0 先去前面的分號(hào)再改為 cgi.rfc2616_headers = 1
搜索“php_mysql”,找到:”extension=php_mysql.dll和extension=php_mysqli.dll 去掉前面的“;”extension=php_mysql.dll和extension=php_mysqli.dll (支持MYSQL數(shù)據(jù)庫)
其他的配置請(qǐng)按照自己的需求更改。
其中php_mysql意思是:
;extension=php_mysql.dll;extension=php_mysqli.dll
前面指定了php的ext路徑后,只要把需要的擴(kuò)展包前面所對(duì)應(yīng)的“;”去掉,就可以了。這里打開php_mysql.dll和php_mysqli.dll,讓php支持mysql。當(dāng)然不要忘掉很重要的一步就是,把php5目錄下的libmysql.dll文件復(fù)制到C:\Windows目錄下,也可以在系統(tǒng)變量里面指定路徑,當(dāng)然這里我選擇了更為方便的方法^_^。
到這里,php已經(jīng)可以支持mysql了。
接下來我們來配置php,讓php能夠與nginx結(jié)合。找到
;cgi.fix_pathinfo=1
我們?nèi)サ暨@里的分號(hào)。
cgi.fix_pathinfo=1
這一步非常重要,這里是php的CGI的設(shè)置。
2)nginx的安裝與配置。
把下載好的nginx-1.0.4的包同樣解壓到D盤的PHP目錄下,并重命名為nginx。接下來,我們來配置nginx,讓它能夠和php協(xié)同工作。進(jìn)入nginx的conf目錄,打開nginx的配置文件nginx.conf,找到
location/{ root html; #這里是站點(diǎn)的根目錄 index index.html index.htm;}
將root html;改為root D:/PHP/hostdoc(即為自己以后放代碼的文件);
再往下,找到
# pass the PHP scripts to FastCGI server listening on127.0.0.1:9000##location~\.php$ {
# root html;
# fastcgi_pass127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME/scripts$fastcgi_script_name;# include fastcgi_params;
#}
先將前面的“#”去掉,同樣將root html;改為root D:/PHP/hostdoc;。再把標(biāo)記為紅色的/scripts改為“$document_root”,這里的“$document_root”就是指前面“root”所指的站點(diǎn)路徑,這是改完后的:
#pass the PHP scripts to FastCGI server listeningon127.0.0.1:9000
#location ~\.php${ root D:/wnmp/www;
fastcgi_pass127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name;include fastcgi_params;
}
保存配置文件,就可以了。
3、nginx+php的環(huán)境就初步配置好了,來跑跑看。我們可以輸入命令
來啟動(dòng)php,并手動(dòng)啟動(dòng)nginx,當(dāng)然也可以利用腳本來實(shí)現(xiàn)。
4、RunHiddenConsole.exe的作用是在執(zhí)行完命令行腳本后可以自動(dòng)關(guān)閉腳本,而從腳本中開啟的進(jìn)程不被關(guān)閉。
首先把下載好的RunHiddenConsole.zip包解壓到nginx目錄內(nèi),RunHiddenConsole.exe的作用是在執(zhí)行完命令行腳本后可以自動(dòng)關(guān)閉腳本,而從腳本中開啟的進(jìn)程不被關(guān)閉。然后來創(chuàng)建腳本,命名為“start_nginx.bat”,我們?cè)贜otepad++里來編輯它
@echooff
REMWindows 下無效REMset PHP_FCGI_CHILDREN=5REM每個(gè)進(jìn)程處理的最大請(qǐng)求數(shù),或設(shè)置為 Windows 環(huán)境變量
setPHP_FCGI_MAX_REQUESTS=1000
echoStarting PHP FastCGI...
RunHiddenConsole D:/wnmp/php5/php-cgi.exe -b127.0.0.1:9000-c
D:/wnmp/php5/php.ini
echoStarting nginx...
RunHiddenConsole D:/wnmp/nginx/nginx.exe -p
D:/wnmp/nginx
再另外創(chuàng)建一個(gè)名為stop_nginx.bat的腳本用來關(guān)閉nginx
@echooff
echoStopping nginx...
taskkill/F/IM nginx.exe>nul
echoStopping PHP FastCGI...
taskkill/F/IM php-cgi.exe>nul
exit
做好后,是這樣的
這樣,我們的服務(wù)腳本也都創(chuàng)建完畢了。雙擊start_nginx.bat看看進(jìn)程管理器是不是有兩個(gè)nginx.exe的進(jìn)程和一個(gè)php-cgi.exe的進(jìn)程呢?
這樣nginx服務(wù)就啟動(dòng)了,而且php也以fastCGI的方式運(yùn)行了。
到站點(diǎn)目錄下,新建一個(gè)phpinfo.php的文件,在里面編輯
保存后,打開瀏覽器輸入“http://localhost/phpinfo.php”,如果看到
就說明,nginx+php的環(huán)境已經(jīng)配置好了,呵呵~
總結(jié)
以上是生活随笔為你收集整理的nginx php环境搭建_php+nginx环境配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米高管:小米平板 6 Max“PC 级
- 下一篇: php如何禁用浏览器的缓存,php如何禁