Vue.js nginx在重新加载我的生产vue cli应用程序页面时出现404错误
我知道,在vue路由器中使用历史记录模式时,这是一个已知的问题,甚至在vue cli文档中也有解释 如果在历史记录模式下使用Vue路由器,则简单的静态文件服务器将失败。例如,如果将Vue路由器与/todos/42路由一起使用,则已将开发服务器配置为正确响应localhost:3000/todos/42,但服务于生产构建的简单静态服务器将使用404来响应 要解决这个问题,您需要将生产服务器配置为 对于与静态索引不匹配的任何请求,请回退到index.html 文件 但是我已经在配置文件中这样做了,当我手动重新加载页面时,问题仍然存在Vue.js nginx在重新加载我的生产vue cli应用程序页面时出现404错误,vue.js,nginx,vue-router,nginx-config,vue-cli-3,Vue.js,Nginx,Vue Router,Nginx Config,Vue Cli 3,我知道,在vue路由器中使用历史记录模式时,这是一个已知的问题,甚至在vue cli文档中也有解释 如果在历史记录模式下使用Vue路由器,则简单的静态文件服务器将失败。例如,如果将Vue路由器与/todos/42路由一起使用,则已将开发服务器配置为正确响应localhost:3000/todos/42,但服务于生产构建的简单静态服务器将使用404来响应 要解决这个问题,您需要将生产服务器配置为 对于与静态索引不匹配的任何请求,请回退到index.html 文件 但是我已经在配置文件中这样做了,当
server {
listen 80;
server_name my.domain.name.com;
rewrite ^ https://$server_name$request_uri permanent;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name my.domain.name.com;
root /var/www/my-frontend-dist-root;
location / {
try_files $uri $uri/ /index.html;
}
location ~*.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|ta$
expires 365d;
log_not_found off;
access_log off;
}
access_log /var/log/nginx/my.access.log;
error_log /var/log/nginx/my.error.log debug;
ssl on;
ssl_certificate /etc/letsencrypt/live/my.domain.name/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/my.domain.name/privkey.pem;
keepalive_timeout 60;
ssl_ciphers "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aN$
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/ssl/dhp-2048.pem;
proxy_buffers 16 64k;
proxy_buffer_size 128k;
}
我缺少什么?配置更改后是否重新启动了Nginx@是的-(这很奇怪。在某些路由中,应用程序可以重新加载。但在其他路由中,此配置仅提供404。您是否在配置选项“模式:'历史'”中将Vue路由器设置为历史模式?