Nginx是一个高性能的HTTP和反向代理服务器,在Linux系统中被广泛使用。以下是Nginx在Linux中的安装、配置和使用方法。
sudo apt update
sudo apt install nginx
sudo yum install epel-release
sudo yum install nginx
sudo dnf install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
sudo systemctl reload nginx
sudo systemctl status nginx
Nginx的主要配置文件位于:
- /etc/nginx/nginx.conf
(主配置文件)
- /etc/nginx/sites-available/
(可用站点配置)
- /etc/nginx/sites-enabled/
(启用的站点配置,通常是sites-available的符号链接)
sudo nginx -t
/var/www/html
(Debian/Ubuntu)/usr/share/nginx/html
(RHEL/CentOS)/etc/nginx/sites-available/
中创建新配置文件sudo nano /etc/nginx/sites-available/example.com
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo mkdir -p /var/www/example.com/html
sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www/example.com
echo "<h1>Welcome to Example.com</h1>" > /var/www/example.com/html/index.html
sudo systemctl reload nginx
sudo apt install certbot python3-certbot-nginx # Debian/Ubuntu
sudo yum install certbot python3-certbot-nginx # RHEL/CentOS
sudo certbot --nginx -d example.com -d www.example.com
sudo certbot renew --dry-run
server {
listen 80;
server_name app.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
upstream backend {
server backend1.example.com;
server backend2.example.com;
server backend3.example.com;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
}
}
Nginx的日志文件通常位于:
- 访问日志:/var/log/nginx/access.log
- 错误日志:/var/log/nginx/error.log
worker_processes auto; # 通常设置为CPU核心数
events {
worker_connections 1024;
}
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
ps aux | grep nginx
sudo netstat -tulnp | grep nginx
sudo tail -f /var/log/nginx/error.log
sudo nginx -t
通过以上步骤,您应该能够在Linux系统上成功安装、配置和使用Nginx服务器。根据您的具体需求,可以进一步定制Nginx的配置。