ubuntu

如何在Ubuntu上配置Nginx服务器

小樊
43
2025-05-17 18:06:10
栏目: 云计算

在Ubuntu上配置Nginx服务器的步骤如下:

1. 安装Nginx

首先,你需要安装Nginx。打开终端并运行以下命令:

sudo apt update
sudo apt install nginx

2. 启动Nginx服务

安装完成后,启动Nginx服务并设置开机自启动:

sudo systemctl start nginx
sudo systemctl enable nginx

3. 验证Nginx安装

打开浏览器并访问服务器的IP地址或域名,你应该会看到Nginx的默认欢迎页面。

4. 配置Nginx

Nginx的主要配置文件位于/etc/nginx/nginx.conf,但通常你会在/etc/nginx/sites-available目录下创建虚拟主机配置文件,并通过符号链接到sites-enabled目录。

创建虚拟主机配置文件

例如,创建一个名为example.com的虚拟主机配置文件:

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

在文件中添加以下内容:

server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/example.com;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    error_page 404 /404.html;
    location = /404.html {
        root /var/www/example.com;
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /var/www/example.com;
    }
}

启用虚拟主机

创建符号链接以启用该配置文件:

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

测试配置文件

在重新加载Nginx之前,测试配置文件是否有语法错误:

sudo nginx -t

如果一切正常,你会看到以下输出:

nginx: configuration file /etc/nginx/nginx.conf test is successful

重新加载Nginx

重新加载Nginx以应用新的配置:

sudo systemctl reload nginx

5. 配置防火墙

如果你的服务器启用了防火墙(如UFW),确保允许HTTP和HTTPS流量:

sudo ufw allow 'Nginx Full'

6. 配置SSL(可选)

为了启用HTTPS,你需要配置SSL证书。可以使用Let’s Encrypt免费获取SSL证书。

安装Certbot

sudo apt install certbot python3-certbot-nginx

获取并安装SSL证书

运行以下命令来获取并安装SSL证书:

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

按照提示完成证书的安装过程。

7. 配置自动续期

Certbot会自动设置一个cron任务来定期续期SSL证书。你可以手动测试续期过程:

sudo certbot renew --dry-run

如果一切正常,你可以手动续期证书:

sudo certbot renew

通过以上步骤,你应该能够在Ubuntu上成功配置Nginx服务器。

0
看了该问题的人还看了