我正在尝试使用 @ nuxt / pwa starter-template 设置 Nuxt 应用,以在共享主机上进行服务器端渲染。 但是我的Nuxt应用程序正在“ http://localhost:50000”上运行。我正在尝试通过.htaccess中的重写规则来显示“ http://example.com”中正在运行的应用。
尝试访问“ http://example.com”时显示404。如果没有“索引(/)”路由,则其他所有路由都可以。即使从任何其他路径进入“索引(/)”路径也都可以。尝试直接加载“ /”路由时仅显示404。
例如:
http://example.com
不起作用
http://example.com/contact
工作正常
*** Github上已经存在与我完全相同的问题:https://github.com/nuxt/nuxt.js/issues/2625 但是我从那里找不到任何帮助。
这是我正在使用的 .htaccess 文件。 -
Options +FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^(.*) http://127.0.0.1:50000/$1 [P,L]
</IfModule>
有人可以帮我解决这个问题吗???预先感谢!
答案 0 :(得分:0)
这个答案似乎有点晚了,但是我只在github上找到了它,并且想帮助任何发现相同问题的人。
此htaccess对我有用,在我刷新并导航正常时,它将正常加载index.vue页面。
用您的域替换我的域。
RewriteEngine on
# Forcing all incoming requests to HTTPS.
# HTTPS is required for PWA. If you don't want PWA feature you can deisable next 2 lines
RewriteCond %{HTTP_HOST} ^my-domain.com.br$
RewriteRule "(.*.(jpg|gif|png|svg|js|css|woff2))$" "http://127.0.0.1:3000/$1" [P,NC]
RewriteRule ^(.*) "http://127.0.0.1:3000/$2" [P,L]
答案 1 :(得分:0)
使用我的.htaccess代码:
RewriteRule ^index.html.var$ http://127.0.0.1:3000/ [P]
RewriteRule ^(.*) http://127.0.0.1:3000/$1 [P]
这个问题也困扰了我很长时间。 我添加了_index.vue动态vue-router,并且
validate ({params}) {
console.log (params.index);
}
终端输出“ index.html.var”。 所以我在想,当我们访问主页时,Apache发送了一个代理,但是nuxt.js收到的请求URL不是“ /”而是“ index.html.var”。
答案 2 :(得分:-1)
RewriteEngine on
RewriteCond%{HTTP_HOST} ^ my-domain.com.br $ RewriteRule“(.. 。(jpg | gif | png | svg | js | css | woff2))$”“ http://127.0.0.1:3000/ $ 1” [P,NC] RewriteRule ^(。)“ http://127.0.0.1:3000/ $ 2” [P,L]
为我工作。