gpt4 book ai didi

angular - 刷新后将 Angular 2 部署到 GoDaddy 404

转载 作者:行者123 更新时间:2023-12-04 00:34:50 30 4
gpt4 key购买 nike

我希望你做得很好。我刚刚使用 CLI 为 godaddy 部署了一个我最近一直在工作的非营利组织网站(可在此处找到:www.leonesistersunited.com)。部署后,一切都和预期的一样好。但是,在任何页面上,如果您刷新浏览器,都会收到 404 错误。关于可能导致这种情况的任何想法?是我的问题还是 GoDaddy 的问题?我在 Windows 层 (IIS) 上托管。

谢谢。

最佳答案

对于 GoDaddy 网络托管有两种不同的解决方案

在 Angular index.html 中编写 base-href

  <base href="/nameOfTheappFolder/">  or

部署 ng build --prod --base-href "/nameOfTheAppFolder/"

在你 angular 6 app.module 调用这个提供者

    providers: [{ provide: APP_BASE_HREF, useValue: '/nameForTheAppFolder/'}]

对于 Linux 主机,您可以像这样使用 .htacces 文件替换应用程序目录文件夹名称

 <IfModule mod_rewrite.c>
Options Indexes FollowSymLinks
RewriteEngine On
RewriteBase /myappdirectory/
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /myappdirectory/index.html [L]
</IfModule>

对于 Windows 主机,您需要执行 web.config

         <?xml version="1.0" encoding="utf-8"?>
<configuration>

<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="./index.html" />
</rule>
</rules>
</rewrite>
</system.webServer>

</configuration>

关于angular - 刷新后将 Angular 2 部署到 GoDaddy 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45448414/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com