Linux搭建Nginx+PHP环境

原创:兜里的猫

本章目录

  • 前言
  • Nginx配置
  • PHP配置
  • 环境测试
  • 注意事项

1 前言

今天玩了下Nginx,使用Nginx+PHP部署php程序。Nginx本身是不支持php,所以需要安装php-fpm的支持,怎样在Linux中安装nginx、php以及php扩展环境,在这就不多说了,百度一下就会解决。

这里我先发个环境配置

环境 版本
linux centos 7.6
nginx nginx 1.8
php php 5.6

如果有需要这些环境安装包的可以评论留下邮箱,各种软件版本可能有点出入,不过一样都能使用。

2 Nginx配置

在我的虚拟机中安装好Nginx后,

nginx配置文件目录:/etc/nginx/nginx.conf

nginx网站根目录:/usr/share/nginx/html

当然可能你安装的路径跟我的不一样,不过只要知道这两个路径就行。

然后编辑nginx配置文件 vim /etc/nginx/nginx.conf

修改配置如下:

server {
    listen       80;

    server_name  localhost;

    #charsetkoi8-r;

    #access_log  logs/host.access.log  main;

    location / {

        root   html;

        index  index.html index.htm index.php;

    }

    #error_page  404              /404.html;

    # redirectserver error pages to the static page /50x.html

    #

    error_page   500 502 503 504  /50x.html;

    location = /50x.html {

        root   html;

    }

    # proxy thePHP scripts to Apache listening on 127.0.0.1:80

    #

    #location ~\.php$ {

    #    proxy_pass  http://127.0.0.1;

    #}

    # pass thePHP scripts to FastCGI server listening on 127.0.0.1:9000

    #

    location ~ \.php$ {

        root           /usr/share/nginx/html;

        fastcgi_pass   127.0.0.1:9000;

        fastcgi_index  index.php;

        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;

        include        fastcgi_params;

    }

    # deny accessto .htaccess files, if Apache's document root

    # concurswith nginx's one

    #

    #location ~/\.ht {

    #    deny all;

    #}

}

编辑好后保存退出 :wq,可以使用 sudo nginx -t 测试配置是否正确,并使用 sudo nginx -s reload 命令重新加载nginx配置文件,最后启动nginx nginx -c /etc/nginx/nginx.conf

到这里nginx的配置就完成了,下面进行php配置。

3 PHP配置

php环境安装成功后先打开php配置文件进行修改(/www/server/php/56/etc/php.ini)

修改配置如下:

  将 cgi.fix_pathinfo=0 
改成 cgi.fix_pathinfo=1

然后找到php-fpm配置文件进行修改(/www/server/php/56/etc/php-fpm.conf)

修改配置如下:

  将  listen = /var/run/php-fpm.sock 
改为  listen = 127.0.0.1:9000

最后重新启动php-fpm服务 sudo service php5-fpm restart ,通过 sudo service php5-fpm status 命令查看服务进程。

到此环境就配置结束了。

4 环境测试

首先创建1个用户组www和1个用户www,用来管理php文件

[root@localhost ~]# groupadd www
[root@localhost ~]# useradd -r www -g www

/usr/share/nginx/html 目录下创建一个 index.php,内容如下:

<?php 
phpinfo(); 
?>

修改 index.php 所属组

[root@localhost php]# chown -R www:www /www/web/

打开浏览器访问 localhost,页面如果显示PHP配置信息,说明环境搭建成功。

5 注意事项

1.如果遇到浏览器提示:no input file specified.,是因为,php.ini的cgi.fix_pathinfo=0,将0改成1解决;

2.如果遇到浏览器提示:File not found是因为nginx的配置文件的路径错误,将fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 改成fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;即可。

dvdf

欢迎访问博客网页版:www.wldeer.com
# Linux 

评论

稻城 : 111
兜里的猫 : 是md
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×