ubuntu

ubuntu nginx如何自定义错误页

小樊
54
2025-09-19 15:21:13
栏目: 智能运维

在Ubuntu上使用Nginx自定义错误页面,可以按照以下步骤进行操作:

1. 创建自定义错误页面

首先,创建你想要显示的自定义错误页面。例如,创建一个404错误页面:

sudo nano /usr/share/nginx/html/404.html

在文件中添加你想要显示的内容:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Page Not Found</title>
</head>
<body>
    <h1>404 - Page Not Found</h1>
    <p>Sorry, the page you are looking for does not exist.</p>
</body>
</html>

保存并关闭文件。

2. 配置Nginx

接下来,编辑Nginx的配置文件以指定自定义错误页面。通常,配置文件位于 /etc/nginx/nginx.conf/etc/nginx/sites-available/default

sudo nano /etc/nginx/sites-available/default

server 块中添加或修改 error_page 指令:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;

    server_name _;

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

    error_page 404 /404.html;
    location = /404.html {
        root /usr/share/nginx/html;
    }
}

在这个例子中,我们指定了当发生404错误时,Nginx应该显示 /usr/share/nginx/html/404.html 页面。

3. 测试配置

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

sudo nginx -t

如果配置文件没有问题,你会看到类似以下的输出:

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

4. 重新加载Nginx

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

sudo systemctl reload nginx

现在,当你访问一个不存在的页面时,Nginx应该会显示你自定义的404错误页面。

其他错误代码

你可以为其他HTTP错误代码(如500、502等)创建自定义错误页面,并在Nginx配置文件中进行相应的设置。例如:

error_page 500 502 503 504 /50x.html;
location = /50x.html {
    root /usr/share/nginx/html;
}

这样,当发生500、502、503或504错误时,Nginx会显示 /usr/share/nginx/html/50x.html 页面。

通过这些步骤,你可以在Ubuntu上使用Nginx自定义错误页面。

0
看了该问题的人还看了