插件窝 干货文章 Ubuntu下Nginx如何安装与配置

Ubuntu下Nginx如何安装与配置

Nginx sudo 配置 bash 851    来源:    2025-04-24

Ubuntu下Nginx安装与配置指南

一、安装Nginx

1. 更新软件包列表

sudo apt update

2. 安装Nginx

sudo apt install nginx

3. 验证安装

安装完成后,Nginx会自动启动。可以通过以下命令检查状态:

sudo systemctl status nginx

或者访问服务器IP地址,应该能看到Nginx欢迎页面。

二、基本配置

1. 主要配置文件位置

  • 主配置文件:/etc/nginx/nginx.conf
  • 站点配置文件:/etc/nginx/sites-available/
  • 启用的站点链接:/etc/nginx/sites-enabled/

2. 管理Nginx服务

# 启动
sudo systemctl start nginx

# 停止
sudo systemctl stop nginx

# 重启
sudo systemctl restart nginx

# 重新加载配置(不中断服务)
sudo systemctl reload nginx

# 设置开机启动
sudo systemctl enable nginx

三、配置虚拟主机(站点)

1. 创建站点配置文件

sudo nano /etc/nginx/sites-available/example.com

2. 基本配置模板

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;
    }
}

3. 启用站点

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

4. 测试配置

sudo nginx -t

5. 重新加载配置

sudo systemctl reload nginx

四、SSL配置(HTTPS)

1. 安装Certbot

sudo apt install certbot python3-certbot-nginx

2. 获取SSL证书

sudo certbot --nginx -d example.com -d www.example.com

3. 自动续期测试

sudo certbot renew --dry-run

五、常见问题解决

1. 端口冲突

如果80或443端口被占用:

sudo netstat -tulnp | grep ':80\b'

然后停止相关服务或修改Nginx监听端口。

2. 权限问题

确保Nginx用户(www-data)有网站目录的读取权限:

sudo chown -R www-data:www-data /var/www/example.com
sudo chmod -R 755 /var/www

3. 403 Forbidden错误

检查: - 目录权限 - 索引文件是否存在 - SELinux状态(如果启用)

六、性能优化建议

  1. 启用Gzip压缩:
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
  1. 调整worker进程数(在nginx.conf中):
worker_processes auto;
  1. 启用缓存:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
    expires 30d;
    add_header Cache-Control "public, no-transform";
}

以上是Ubuntu下Nginx的基本安装与配置指南,根据实际需求可以进一步调整配置参数。