windows上nginx + php配置
apache下载失败,正好对apache那种把php解释器做成module当动态库加载到自身进程的默认做法不太满意,网上大家又都说nginx好,就使用nginx+php+mysql配置一下。
?
立即学习“PHP免费学习笔记(深入)”;
环境:Windows 7 32bit
版本:nginx 1.2.3,php-5.4.7-Win32-VC9-x86,mysql 5.5.27
?
立即学习“PHP免费学习笔记(深入)”;
nginx和php都是下载后解压缩就可以用,mysql需要安装。
?
立即学习“PHP免费学习笔记(深入)”;
在php解压目录下,将php.ini-development拷贝到php.ini文件,同时激活其中的mysql模块:
?
立即学习“PHP免费学习笔记(深入)”;
;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
?
立即学习“PHP免费学习笔记(深入)”;
注意,必须将指定extension目录那一行的注释去掉,否则php不会自动使用ext作为默认值来加载这些扩展:
?
立即学习“PHP免费学习笔记(深入)”;
; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir ; extension_dir = "./" ; On windows: extension_dir = "ext"
?
立即学习“PHP免费学习笔记(深入)”;
然后启动php内置的cgi程序,在9000端口监听nginx发过来的请求:
?
立即学习“PHP免费学习笔记(深入)”;
php-5.4.7-Win32-VC9-x86> php-cgi.exe -b 127.0.0.1:9000
在nginx目录下,修改conf/nginx.conf,激活fastcgi:
?
立即学习“PHP免费学习笔记(深入)”;
# 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; }
?
立即学习“PHP免费学习笔记(深入)”;
注意,默认配置文件中,fastcgi_param SCRIPT_FILENAME配置的是/scripts$fastcgi_script_name;,表示从这里找.php文件。这个默认配置是错的,使用这个配置时,访问php页面会返回“No input file specified”错误。需要改成下面这两种:或者用$document_root,表示当前根web路径,或者直接用根web路径的绝对路径。
?
立即学习“PHP免费学习笔记(深入)”;
一般还要将index.php放到根路径的index中:
location / { root html; index index.html index.htm index.php; }
?
立即学习“PHP免费学习笔记(深入)”;
配置完成后,启动nginx:
?
立即学习“PHP免费学习笔记(深入)”;
D:\software\nginx-1.2.3> start nginx
在document_root创建一个简单的php文件,测试一下:
?
立即学习“PHP免费学习笔记(深入)”;
<?php phpinfo(); ?>
?
立即学习“PHP免费学习笔记(深入)”;
在本地验证一下:http://localhost:8080/index.php,一般都可以开启访问,并可以查看其中的myspartan1
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号