방금 nginx라는 단어를 보고 그 발음(엔진 x)이 매우 궁금했습니다. 직역하면 "engine xtras(추가 효과)"인데, 전체 단어는 "극단적 효과" 및 "추가 성능"과 같은 의미입니다. ". 물론 이것은 여기서의 채팅이 아니며 위의 내용은 여담입니다.
제가 아는 한 익숙한 Apache 및 IIS와 비교했을 때 nginx의 장점은 "역방향 프록시"와 "로드 밸런싱"에 있습니다. 따라서 웹 서버의 자원 절약 능력을 고려하면 아파치를 대체해 웹 서비스를 제공할 수 있다. 이제 nginx에는 많은 장점이 있는데, Windows에서 nginx+php 환경을 구성하는 방법은 무엇입니까? 아직도 온라인에서 재인쇄되고 재인쇄되는 기사가 너무 많습니다. 내 구성 프로세스에 대한 소개는 다음과 같습니다.
1. 먼저 지원서 패키지를 준비해야 합니다.
nginx: nginx/Windows-1.0.4
php: php-5.2.16-nts-Win32-VC6-x86.zip(nginx 아래의 PHP는 FastCGI에서 실행되므로 nts의 스레드로부터 안전하지 않은 PHP 패키지를 다운로드합니다.)
(사용 예정) RunHiddenConsole: RunHiddenConsole.zip
2. 설치 및 구성.
1) PHP 설치 및 구성.
다운로드한 PHP 패키지를 직접 압축을 풀고 D 드라이브(D:wnmp)의 wnmp 디렉터리로 이동합니다. 여기서 압축이 풀린 폴더의 이름을 php5로 변경합니다. 해당 폴더에 들어가서 php.ini 권장 파일을 php.ini로 수정한 뒤 에디트플러스나 Notepad++로 열어보세요. 발견
extension_dir = "./ext"
이
으로 변경되었습니다.extension_dir = "D:/wnmp/php5/ext"
;extension=php_mysql.dll<br>;extension=php_mysqli.dll
이전에 PHP의 확장 경로를 지정한 후 필요한 확장 패키지 앞에 있는 해당 ";"을 제거하면 됩니다. php가 mysql을 지원하도록 하려면 여기에서 php_mysql.dll 및 php_mysqli.dll을 엽니다. 물론, 매우 중요한 단계는 php5 디렉토리에 있는 libmysql.dll 파일을 C:Windows 디렉토리에 복사하는 것임을 잊지 마세요. 물론 저는 더 편리한 것을 선택했습니다. 방법은 여기^_^.
이 시점에서 PHP는 이미 mysql을 지원할 수 있습니다.
다음으로 php가 nginx와 결합될 수 있도록 php를 구성하겠습니다. 발견
;cgi.fix_pathinfo=1
여기서 금지를 해제해 보겠습니다.
cgi.fix_pathinfo=1
2) nginx 설치 및 구성.
다운로드한 nginx-1.0.4 패키지를 D 드라이브의 wnmp 디렉터리에 추출하고 이름을 nginx로 바꿉니다. 다음으로, PHP에서 작동할 수 있도록 nginx를 구성합니다. nginx conf 디렉터리에 들어가서 nginx 구성 파일 nginx.conf를 열고
을 찾습니다.location / {<br> root html; #这里是站点的根目录<br> index index index.html index.htm index.php;<br>}
루트 html을 루트 D:/wnmp/www로 변경합니다.
더 아래로 내려가
를 찾아보세요
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br>#<br>#location ~ \.php$ {<br># root html;<br># fastcgi_pass 127.0.0.1:9000;<br># fastcgi_index index.php;<br># fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;<br># include fastcgi_params;<br>#}
먼저 앞에 있는 "#"을 제거하고 루트 html을 루트 D:/wnmp/www;로 변경합니다. 그런 다음 빨간색으로 표시된 /scripts를 "$document_root"로 변경합니다. 여기서 "$document_root"는 이전 "루트"가 가리키는 사이트 경로를 나타냅니다.
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br>#<br>location ~ \.php$ {<br> root D:/wnmp/www;<br> fastcgi_pass 127.0.0.1:9000;<br> fastcgi_index index.php;<br> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br> include fastcgi_params;<br>}
구성 파일을 저장하면 준비가 끝납니다.
nginx+php 환경이 초기에 구성되었으니 살펴보겠습니다.
명령을 입력할 수 있습니다.PHP를 시작하고 nginx를 수동으로 시작하려면 스크립트를 사용하여 이를 달성할 수도 있습니다.
먼저 다운로드한 RunHiddenConsole.zip 패키지를 nginx 디렉터리에 압축을 푼다. RunHiddenConsole.exe의 기능은 명령줄 스크립트를 실행한 후 자동으로 스크립트를 닫는 것이며, 스크립트에서 시작된 프로세스는 닫히지 않습니다. 그런 다음 "start_nginx.bat"라는 스크립트를 생성하고 Notepad++에서 편집합니다
@echo off<br>REM Windows 下无效<br>REM set PHP_FCGI_CHILDREN=5<br><br>REM 每个进程处理的最大请求数,或设置为 Windows 环境变量<br>set PHP_FCGI_MAX_REQUESTS=1000<br> <br>echo Starting PHP FastCGI...<br>RunHiddenConsole D:/wnmp/php5/php-cgi.exe -b 127.0.0.1:9000 -c D:/wnmp/php5/php.ini<br> <br>echo Starting nginx...<br>RunHiddenConsole D:/wnmp/nginx/nginx.exe -p D:/wnmp/nginx
再另外创建一个名为stop_nginx.bat的脚本用来关闭nginx
@echo off<br>echo Stopping nginx... <br>taskkill /F /IM nginx.exe > nul<br>echo Stopping PHP FastCGI...<br>taskkill /F /IM php-cgi.exe > nul<br>exit
做好后,是这样的
这样,我们的服务脚本也都创建完毕了。双击start_nginx.bat看看进程管理器是不是有两个nginx.exe的进程和一个php-cgi.exe的进程呢?
这样nginx服务就启动了,而且php也以fastCGI的方式运行了。
到站点目录下,新建一个phpinfo.php的文件,在里面编辑
<?php <br /> phpinfo();<br>?>
保存后,打开浏览器输入“http://localhost/phpinfo.php”,如果看到
就说明,nginx+php的环境已经配置好了,呵呵~
转自http://www.cnblogs.com/huayangmeng/archive/2011/06/15/2081337.html