Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日,其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。
从零开始搭建LNMP环境
- 系统版本:CentOS7.8(阿里云公共镜像)
- 服务器:阿里云
- Nginx版本:nginx/1.20.1
安装MariaDB,CentOS7.0之后将默认数据库从Mysql改为了MariaDB;
yum -y install mariadb-server
启动MariaDB;
systemctl start mariadb
设置MariaDB开机自启;
systemctl enable mariadb
安装php以及必要的组件,这里的必要组件是相对于Wordpress或者Typecho而言;
yum -y install php php-mysql php-gd php-xml php-mbstring php-fpm
注:在centos8.0以上版本安装mysql时,需要将php-mysql修改为php-pdo_mysql。
启动php-fpm,php-fpm是一个php fastcgi进程管理器,用于管理php进程池的软件,用于接受web服务器的请求;
systemctl start php-fpm
设置php-fpm开机自启;
systemctl enable php-fpm
安装Nginx;
yum -y install nginx
运行以下命令打开Nginx配置文件,vim是centos自带的一个文本编辑器;
vim /etc/nginx/nginx.conf
添加或修改location /配置信息
location / {
index index.php index.html index.htm;
}
添加或修改location ~ .php$配置信息
location ~ .php$ {
root /usr/share/nginx/html;
#将/usr/share/nginx/html替换为您的网站根目录
fastcgi_pass 127.0.0.1:9000;
#Nginx通过本机的9000端口将php请求转发给php-fpm进行处理。
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
#Nginx调用fastcgi接口处理PHP请求。
}
修改配置信息后,文件内容如下图所示:
启动nginx;
systemctl start nginx
设置nginx开机自启;
systemctl enable nginx
文中的“/usr/share/nginx/html”为nginx默认站点根目录,实际使用中如需切换至其他目录,注意同步修改配置文件中的该字段,nginx默认目录中并不存在phpinfo.php文件,所以以下命令事实上是用vim创建并打开了一个空文件;
vim /usr/share/nginx/html/phpinfo.php
在新建的文件中输入如下命令后保存并关闭;
<?php echo phpinfo(); ?>
在浏览器的地址栏输入如下地址进行访问;
http://ECS实例公网IP地址/phpinfo.php
如果安装无误,此时应该可以在浏览器中看到熟悉的php的自检信息页面。如果没有显示也不用着急,从头检查一遍是否有遗漏的步骤。