页面重新加载导致使用nginx auth#u basic+;找不到404;反应应用程序
因此,我尝试使用nginx basic auth模块通过以下方式保护一个暂存服务器:页面重新加载导致使用nginx auth#u basic+;找不到404;反应应用程序,nginx,react-router,Nginx,React Router,因此,我尝试使用nginx basic auth模块通过以下方式保护一个暂存服务器: server { listen 443 ssl http2; server_name <something>; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; ssl_protocols TLSv1.2;
server {
listen 443 ssl http2;
server_name <something>;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
ssl_protocols TLSv1.2;
ssl_certificate /etc/letsencrypt/live/<something>/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/<something>/privkey.pem;
gzip_static on;
brotli_static on;
location / {
root /usr/share/nginx/html;
index index.html;
try_files $uri $uri/ index.html;
auth_basic "Restricted Access";
auth_basic_user_file /etc/passwords/htpasswd;
}
# only enable on non-production environments
location /robots.txt {return 200 "User-agent: *\nDisallow: / \nNoindex: / \n";}
}
服务器{
监听443sslhttp2;
服务器名称;
包括/etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam/etc/letsencrypt/ssl-dhparams.pem;
ssl_协议TLSv1.2;
ssl_certificate/etc/letsencrypt/live//fullchain.pem;
ssl\u certificate\u key/etc/letsencrypt/live//privkey.pem;
gzip_静态开启;
brotli_静电开启;
地点/{
root/usr/share/nginx/html;
index.html;
尝试_文件$uri$uri/index.html;
授权基本“受限访问”;
验证基本用户文件/etc/passwords/htpasswd;
}
#仅在非生产环境中启用
location/robots.txt{return 200“用户代理:*\nDisallow:/\nNoindex:/\n”;}
}
由于应用程序的性质,这是一个单页应用程序,如果我重新加载页面(例如/仪表板),我会发现404未找到
它只在/
上工作,但对于单页应用程序,它应该是这样工作的。有任何线索欢迎
注:如果2020年到了,祝您新年快乐。不确定这是否能解决您的具体问题,但是
try\u files
语句的最后一个术语应该有一个前导/
。i、 e.try_文件$uri$uri//index.html代码>@RichardSmith嘿实际上这似乎解决了问题!