Nginx显示错误的时间/时区

Mil*_*ano 5 ubuntu nginx ubuntu-server ubuntu-16.04

如何确定Nginx时区?我已经配置nginx为提供目录,但是创建的日期时间比我的实时时间晚一小时。

我已添加到 /etc/init.d/nginx

export TZ='Europe/Bratislava'
Run Code Online (Sandbox Code Playgroud)

然后

sudo service nginx reload
sudo service nginx restart
Run Code Online (Sandbox Code Playgroud)

但这没有帮助,应该是14:19而不是13:19。

编辑

试图更改Ubuntu默认时区,但日期时间未更改。

sudo dpkg-reconfigure tzdata
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

gpg*_*kko 10

默认情况下,nginx 以 UTC 时间输出目录索引。如果您希望它显示本地时区的时间,您应该将autoindex_localtime指令设置为 on。

autoindex_localtime on
Run Code Online (Sandbox Code Playgroud)

  • 请注意,它不一定位于“location”级别,可以直接将其放在顶部的“server”块中。 (2认同)

小智 7

首先,您需要设置系统时区。您可以使用timedatectl list-timezones来获取名称。

sudo timedatectl set-timezone Europe/Moscow
Run Code Online (Sandbox Code Playgroud)

其次,在您站点的 nginx 配置文件中设置autoindex_localtime指令autoindex_localtime on;,例如/etc/nginx/sites-avaliable/default. 将指令放在前面autoindex on;

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

        root /var/www/dir;

        index index.html index.htm index.nginx-debian.html;

        server_name _;

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

        autoindex_localtime on;
        autoindex on;
}
Run Code Online (Sandbox Code Playgroud)