我正在尝试设置一个nginx服务器,以便在地址http://mydomain/memorygame上提供React应用
目前我有以下nginx路由配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/mydomain.com;
index index.html;
server_name mydomain.com www.mydomain.com;
location /memorygame {
root /var/www/mydomain.com/memorygame;
try_files $uri /$uri $uri/ /index.html $uri/index.html =404;
location ~* \.(css|js)$ {
try_files $uri /$uri =404;
}
}
css文件存储在/var/www/mydomain.com/memorygame下,在index.html中链接为/static/css/main.d5dd0bd5.css。
index.html加载正常,但css请求不会路由到我想要的位置。如果我从try_files中取出“/index.html”,则会加载css,但index.html不会。我怎样才能使它们同时工作?
(我的猜测是问题的一部分是发出的css请求发送到mydomain.com/static/css/style.css而不是mydomain.com/memorygame/static/css/style.css,但我可能是如果我没错,有没有办法自动添加/static/css/style.css相对于mydomain.com/memorygame文件夹?)
提前致谢!
答案 0 :(得分:0)
我自己想通了。删除location /memorygame
块之外的所有内容都可以解决问题。 Nginx默认完成了我想要实现的目标。