我试图从运行Debian 8的Google计算引擎实例中提供静态文件(HTML,JS和CSS)。我使用git通过命令将Web应用程序克隆到文件夹/var/www/prod/app
sudo git clone <my repo>
我在启用站点的文件夹app.conf创build了一个conf文件。 这是内容
server { listen 80; root /var/www/prod/app; location / { } }
当我键入我的机器的IP地址/path时,这个configuration是否足以使我的机器提供文件?
当我在浏览器中input实例的IP地址时,我看到了welcome to nginx页面的welcome to nginx 。 但是没有任何prod / app中的文件被提供。 我尝试的所有path都得到了404。 有人可以帮我configuration这个。
您需要在位置中添加try_files ,并将其设置为默认服务器:
server { listen 80 default_server; root /var/www/prod/app; location / { try_files $uri $uri/ /index.html; } }
那么你需要重新启动nginx服务。
我想到了。 Nginx在下面的path中有一个默认configuration文件(没有扩展名“.conf”)
/etc/nginx/sites-enable/default
默认configuration有一个用于default_server的服务器块,用于服务文件夹/var/www/html 。 这将覆盖任何我没有server_name字段提供静态文件的configuration。
我评论说,这些线路和事情正在按预期工作。
感谢Alexy十和Tero Kilkaken指引我正确的方向。