ngrok 不适用于浏览器中的路径(Angular Webserver)
Posted
技术标签:
【中文标题】ngrok 不适用于浏览器中的路径(Angular Webserver)【英文标题】:ngrok doesn't work with path in browser (Angular Webserver) 【发布时间】:2021-03-22 05:37:22 【问题描述】:我目前正在使用 Angular 开发一个网站,并且我正在使用 Apache2 将它托管在我的 RaspberryPi 上。我正在使用 ngrok 隧道从 Internet 访问服务器。
只要我通过根路径打开它并在应用程序中单击我的方式,它就可以很好地工作。问题是每次我重新加载页面或尝试访问页面时,例如'/home' 手动,服务器返回 404 '在此服务器上找不到请求的 URL'。在本地主机上一切正常,所以它不能是 Angular。
有人知道为什么会发生这种情况以及如何解决吗?也许 ngrok 或 Apache 有问题?
非常感谢!
【问题讨论】:
在您的服务器上,您必须将对不存在的资产的每个请求重写为 index.html.. 谢谢!我完全忘记了 Angular 创建了一个 SPA。难怪找不到资源 【参考方案1】:问题解决了!
我在 Angular 资产中添加了一个 .htaccess 文件,以将每个请求重定向到 index.html
<IfModule mod_rewrite.c>
RewriteEngine On
# Redirection of requests to index.html
RewriteCond %DOCUMENT_ROOT%REQUEST_URI -f [OR]
RewriteCond %DOCUMENT_ROOT%REQUEST_URI -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) index.html [NC,L]
</IfModule>
【讨论】:
以上是关于ngrok 不适用于浏览器中的路径(Angular Webserver)的主要内容,如果未能解决你的问题,请参考以下文章