我正在使用nginx
来提供在Ubuntu 18.04
服务器上运行的Go Web应用程序。我希望它在进入mydomain.com
时首先响应index指令,但是在nginx
配置下,它直接进入Web应用程序,而忽略了index.html文件。如果我得到mydomain.com/index.html
却可以,但是不会从索引中获取该文件。 /var/log/nginx/error.log
没有错误。
使用chown
将静态文件root:www-data
修改为chmod 640
。
我的静态文件位于/srv/static/
上,而我的Go Web服务器位于/srv/web/
上
这是我的网站可用的配置文件:
server {
listen 80;
server_name mydomain.com;
return 301 https://$server_name$request_uri;
}
server {
server_name mydomain.com;
listen 443 ssl;
ssl on;
ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem;
root /srv/static;
index index.html;
location / {
try_files $uri @proxy;
}
location @proxy {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8000;
}
}
答案 0 :(得分:2)
location / {
try_files $uri $uri/ @proxy; # add $uri/ here
}