vlambda博客
学习文章列表

搭建Nginx+PHP开发环境

搭建nginx+PHP服务器

本小结介绍如何在Ubuntu中安装Nginx,并且实现Nginx与PHP的整合。

安装nginx服务器

这里建议安装完整版,功能更丰富,相比于自己以后编译时添加组件,出现的坑会少点。

sudo apt-get install nginx-full -y
nginx -v

测试nginx服务器

下面是nginx常用几个命令:

命令 含义 用途
sudo service nginx status 查看nginx状态 当访问服务器时出现找不到时
sudo service nginx restart 重启nginx服务器 当修改nginx配置文件以后
sudo nginx -s reload 重新加载配置文件 当修改nginx配置文件以后,与上面不同的是这个是nginx自带的命令
sudo nginx -t 重新加载配置文件 用来测试配置文件是否有问题

集成php开发环境

设置镜像源:

sudo apt-get install software-properties-common -y
sudo add-apt-repository -y ppa:ondrej/php -y
sudo apt-get update -y

查看当前php版本

sudo apt list | grep php

我这里目前是7.4,所以下面跟php有关的配置全是7.4

sudo apt-get install php7.4 -y
sudo apt-get install php7.4-mysql php7.4-fpm php7.4-curl php7.4-xml php7.4-gd php7.4-mbstring php-memcached php7.4-zip -y

打开/etc/php/7.4/fpm/pool.d/www.conf 文件找到如下位置,如果是注释状态需要打开:

listen = /run/php/php7.4-fpm.sock

最终配置文件样式如下,必读该样式内容自行比对配置:

/etc/php/7.4/fpm/pool.d/www.conf

[www]
user = www-data
group = www-data

pm = dynamic
pm.max_children = 5
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

listen = /run/php/php7.4-fpm.sock

listen.owner = www-data
listen.group = www-data

修改套接字权限:

chmod 777 /run/php/php7.4-fpm.sock

与nginx整合

编辑/etc/nginx/sites-available中的default文件,将下面内容添加到server节点下面。

#当请求网站下php文件的时候,反向代理到php-fpm
location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

配置完毕之后PHP整合结束,下面可以在/var/www/html下面编写名称为index.php的测试文件,将下面代码放入里面:

<?php
   echo phpinfo();
?>

此时,输入xxxx/index.php网址之后可以看到新的phpinfo的界面。