1.安装依赖包
yum install pcre-devel
2.下载并进入软件包
wget http://nginx.org/download/nginx-1.6.3.tar.gztar -xzvf nginx-1.6.3.tar.gzcd nginx-1.6.3
3.安装
./configure --user=www --group=www \--prefix=/usr/local/nginx16 \--sbin-path=/usr/local/nginx16/sbin/nginx \--conf-path=/usr/local/nginx16/etc/nginx.conf \--pid-path=/var/run/nginx16/nginx.pid \--lock-path=/var/lock/subsys/nginx.lock \--error-log-path=/var/log/nginx16/error.log \--http-log-path=/var/log/nginx16/access.log \--with-http_stub_status_module \--with-http_ssl_module \--with-http_gunzip_module \--with-http_gzip_static_module \--with-http_realip_module \--with-file-aio
查看是否安装成功
/usr/local/nginx16/sbin/nginx -v
是否显示
nginx version: nginx/1.6.3
启动nginx
/usr/local/nginx16/sbin/nginx
查看是否成功启动
curl localhost
若成功显示如下
<!DOCTYPE html><html><head><title>Welcome to nginx!</title><style>body {width: 35em;margin: 0 auto;font-family: Tahoma, Verdana, Arial, sans-serif;}</style></head><body><h1>Welcome to nginx!</h1><p>If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.</p><p>For online documentation and support please refer to<a href="http://nginx.org/">nginx.org</a>.<br/>Commercial support is available at<a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p></body></html>
nginx默认目录为 /usr/local/nginx16/html
现在如果在该目录下,添加demo.php
直接访问的话
curl localhost/demo.php
会直接jiangphp代码输出
<?phpphpinfo();?>
下面配置nginx支持php
nginx支持php
编辑文件/usr/local/nginx16/etc/nginx.conf
server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root html;index index.html index.htm;}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# 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;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# 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;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}}
更改为
server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root html;index index.html index.htm;}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# 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;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}location ~ \.php(.*)$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;include fastcgi_params;}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}}
即在server下添加
location ~ \.php(.*)$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;include fastcgi_params;}
重启nginx
/usr/local/nginx16/sbin/nginx -s reload
重新执行
curl localhost/demo.php
成功执行。
本文介绍如何在Linux环境下使用Nginx部署PHP应用,包括安装Nginx、配置Nginx以支持PHP处理等步骤。
1万+

被折叠的 条评论
为什么被折叠?



