启用EPEL仓库:
sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
安装Nginx:
sudo dnf install nginx
添加Nginx官方仓库:
sudo vi /etc/yum.repos.d/nginx.repo
添加以下内容:
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
安装Nginx:
sudo dnf install nginx
启动Nginx服务:
sudo systemctl start nginx
设置开机自启:
sudo systemctl enable nginx
检查服务状态:
sudo systemctl status nginx
配置防火墙允许HTTP/HTTPS流量:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
主配置文件位于:
/etc/nginx/nginx.conf
默认服务器块配置位于:
/etc/nginx/conf.d/default.conf
创建自定义网站配置(示例):
sudo vi /etc/nginx/conf.d/example.com.conf
添加以下内容:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
创建网站目录:
sudo mkdir -p /var/www/example.com
sudo chown -R nginx:nginx /var/www/example.com
创建测试页面:
echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/index.html
测试Nginx配置:
sudo nginx -t
重新加载Nginx配置:
sudo systemctl reload nginx
如果使用SELinux,可能需要调整设置:
允许Nginx访问网站目录:
sudo chcon -R -t httpd_sys_content_t /var/www/example.com
如果需要允许Nginx写入目录:
sudo chcon -R -t httpd_sys_rw_content_t /var/www/example.com
在浏览器中访问服务器的IP地址或域名,应该能看到Nginx欢迎页面或你创建的自定义页面。
配置HTTPS:
sudo dnf install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
设置自动续期:
sudo certbot renew --dry-run
性能调优:
/etc/nginx/nginx.conf
调整worker_processes和worker_connections检查错误日志:
sudo tail -f /var/log/nginx/error.log
检查访问日志:
sudo tail -f /var/log/nginx/access.log
检查端口监听:
sudo ss -tulnp | grep nginx
通过以上步骤,你应该已经在RHEL8上成功部署了Nginx Web服务。