Angular2 apache重写
Angular2 apache rewriting
我正在使用 Angular2 构建 Web 移动应用程序,当我构建我的项目并在本地 运行 时,一切正常,但当我将其推送到我们的生产系统时我遇到了问题,我认为这是关于 Apache 重写的!
我的 url 在本地 http://127.0.0.1/
我的 url 未生产 http://domain.tld/mobile/
当我的应用程序投入生产时,它不会加载任何 link,例如 css 或 js ...所以我的应用程序无法运行!
我的 .htaccess 看起来像这样:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
因此,为了解决我的问题,我想我需要编辑我的 htaccess,但我怎么能告诉它使用 /mobile 和/但如果我只放 /mobile,我的应用程序将无法在本地运行..
所以如果你有什么想法?
谢谢:)
您可以尝试将您的本地开发更改为从名为 mobile
的子文件夹提供服务,并将您的项目放在那里。您需要将 index.html
中的 base href
标签更改为:
<base href="/">
另一种选择是仅更改生产版本 index.html
内的基本 href。
如果您使用的是 angular-cli
,它可以选择在构建过程中编辑 base href
:
ng build --base-href=mobile
我正在使用 Angular2 构建 Web 移动应用程序,当我构建我的项目并在本地 运行 时,一切正常,但当我将其推送到我们的生产系统时我遇到了问题,我认为这是关于 Apache 重写的!
我的 url 在本地 http://127.0.0.1/ 我的 url 未生产 http://domain.tld/mobile/
当我的应用程序投入生产时,它不会加载任何 link,例如 css 或 js ...所以我的应用程序无法运行!
我的 .htaccess 看起来像这样:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
因此,为了解决我的问题,我想我需要编辑我的 htaccess,但我怎么能告诉它使用 /mobile 和/但如果我只放 /mobile,我的应用程序将无法在本地运行..
所以如果你有什么想法?
谢谢:)
您可以尝试将您的本地开发更改为从名为 mobile
的子文件夹提供服务,并将您的项目放在那里。您需要将 index.html
中的 base href
标签更改为:
<base href="/">
另一种选择是仅更改生产版本 index.html
内的基本 href。
如果您使用的是 angular-cli
,它可以选择在构建过程中编辑 base href
:
ng build --base-href=mobile