windows下nginx + php配置

WBOY
풀어 주다: 2016-06-13 13:05:13
원래의
973명이 탐색했습니다.

windows上nginx + php配置

apache下载失败,正好对apache那种把php解释器做成module当动态库加载到自身进程的默认做法不太满意,网上大家又都说nginx好,就使用nginx+php+mysql配置一下。

?

环境:Windows 7 32bit

版本:nginx 1.2.3,php-5.4.7-Win32-VC9-x86,mysql 5.5.27

?

nginx和php都是下载后解压缩就可以用,mysql需要安装。

?

在php解压目录下,将php.ini-development拷贝到php.ini文件,同时激活其中的mysql模块:

?

;extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
로그인 후 복사

?

注意,必须将指定extension目录那一行的注释去掉,否则php不会自动使用ext作为默认值来加载这些扩展:

?

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "ext"
로그인 후 복사
?

?

然后启动php内置的cgi程序,在9000端口监听nginx发过来的请求:

?

php-5.4.7-Win32-VC9-x86> php-cgi.exe -b 127.0.0.1:9000
로그인 후 복사
?

在nginx目录下,修改conf/nginx.conf,激活fastcgi:

?

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            #fastcgi_param  SCRIPT_FILENAME  D:/software/nginx-1.2.3/html$fastcgi_script_name;
            include        fastcgi_params;
        }
로그인 후 복사

?

注意,默认配置文件中,fastcgi_param SCRIPT_FILENAME配置的是/scripts$fastcgi_script_name;,表示从这里找.php文件。这个默认配置是错的,使用这个配置时,访问php页面会返回“No input file specified”错误。需要改成下面这两种:或者用$document_root,表示当前根web路径,或者直接用根web路径的绝对路径。

?

一般还要将index.php放到根路径的index中:

        location / {
            root   html;
            index  index.html index.htm index.php;
        }
로그인 후 복사
?

?

配置完成后,启动nginx:

?

D:\software\nginx-1.2.3> start nginx 
로그인 후 복사
?

在document_root创建一个简单的php文件,测试一下:

?

<?php phpinfo();
?>
로그인 후 복사

?

在本地验证一下:http://localhost:8080/index.php,一般都可以开启访问,并可以查看其中的myspartan1

  • 浏览: 15986 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
  •  windows下nginx + php配置
最近访客 更多访客>>
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿