Nginx发音为engine x,是开源的高性能HTTP和反向代理服务器。它可用作HTTP/Web服务器,负载均衡,内容缓存和反向代理。
它可用作HTTP和非HTTP服务器的独立Web服务器,负载均衡器,内容缓存和反向代理。与Apache相比,Nginx可以处理大量并发连接,并且每个连接的内存占用量更小。
请确保您以具有sudo权限的用户登录,并且您没有在端口80或443上运行Apache或其它进程。
从CentOS 8开始,Nginx软件包在默认的CentOS存储库中可用。我们可以通过yum进行安装。
安装完成后,您可以通过运行systemctl命令查看服务的状态,从而确定Nginx服务是否正常启动。
FirewallD是Centos 8上的默认防火墙解决方案。在安装过程中,Nginx使用预定义规则创建防火墙服务文件。
打开HTTP协议的80
端口和HTTPS协议443
端口,允许来自这两个端口的连接。运行firewall-cmd
命令永久打开80
和443
和的端口。
sudo yum install nginx
sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2019-10-06 18:35:55 UTC; 17min ago
...
现在,您可以通过在Web浏览器中打开http://YOUR_IP
来测试Nginx的安装。您应该看到默认的Nginx欢迎页面。
Nginx配置文件的结构和最佳做法
所有Nginx配置文件都位于/etc/nginx/
目录中。主要的Nginx配置文件为/etc/nginx/nginx.conf
。
建议为每个域创建单独的配置文件。Nginx的虚拟主机配置文件必须以.conf
结尾,并存储在/etc/nginx/conf.d
目录中。您可以根据需要拥有任意数量的虚拟主机配置文件。
遵循标准命名约定是一种好的做法。例如,如果域名为mydomain.com
,则配置文件应命名为mydomain.com.conf
。
如果您在虚拟主机配置文件中使用可重复的配置片段,则最好将这些片段存放在单独的文件中,然后使用include指令包含它。
Nginx日志文件access.log
和error.log
位于/var/log/nginx/
目录中。建议为每个虚拟主机使用不同的access
和error
日志文件。
您可以将web站点根目录设置为所需的任何位置。Webroot的最常见位置包括:/home/<user_name>/<site_name>
,/var/www/<site_name>
。
/var/www/html/<site_name>
,/opt/<site_name>
,/usr/share/nginx/html
。
配置虚拟主机
配置Let's Encrypt SSL证书
mkcert创建本地SSL证书
结论
您已在CentOS 8服务器上成功安装Nginx。您现在就可以开始部署应用程序,并将Nginx用作Web或代理服务器。
您可以像管理systemd服务一样管理Nginx服务。如果您有任何疑问或反馈,请随时发表评论。