添加EPEL仓库:
sudo yum install epel-release
安装Nginx:
sudo yum install nginx
启动Nginx服务:
sudo systemctl start nginx
设置开机启动:
sudo systemctl enable nginx
添加Nginx官方仓库:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
安装Nginx:
sudo yum install nginx
启动并设置开机启动(同上)
/etc/nginx/nginx.conf
/etc/nginx/conf.d/default.conf
/etc/nginx/conf.d/
目录下创建单独的.conf
文件server {
listen 80;
server_name example.com www.example.com;
root /usr/share/nginx/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
location = /404.html {
internal;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
internal;
}
}
在/etc/nginx/nginx.conf
的http块中添加:
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
gzip_min_length 1000;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_vary on;
首先获取SSL证书(可以使用Let's Encrypt免费证书)
配置示例:
server {
listen 443 ssl http2;
server_name example.com www.example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
root /usr/share/nginx/html;
index index.html index.htm;
# 其他配置...
}
# HTTP重定向到HTTPS
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
sudo systemctl reload nginx
sudo systemctl status nginx
sudo nginx -t
如果启用了firewalld,需要开放HTTP和HTTPS端口:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
/var/log/nginx/access.log
/var/log/nginx/error.log
调整worker进程数(在/etc/nginx/nginx.conf
中):
worker_processes auto; # 通常设置为CPU核心数
调整连接数限制:
events {
worker_connections 1024;
multi_accept on;
}
启用文件缓存:
open_file_cache max=1000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
sudo nginx -t
sudo tail -f /var/log/nginx/error.log
sudo netstat -tulnp | grep :80
getenforce
,如果为Enforcing可能需要调整策略希望这个指南能帮助您在CentOS 7上成功安装和配置Nginx!如需更高级的配置,可以参考Nginx官方文档。