我知道堆栈上已经有一个类似的问题(即这个问题:how to host angular 2 website?),但这并没有真正解决我的问题。
我已经在Angular 2中制作了我的第一个应用程序,现在我想使其在线。我已经在Wix和Weebly拥有(免费)网站。通过将所有文件放入与现在相同的文件夹结构中(运行ng build --prod
之后),是否可以在这些网站之一上托管我的应用程序?
还是我必须使用将文件上传到服务器的适当程序?
或者这些都不起作用,真的像我现在认为的那么复杂吗?
答案 0 :(得分:0)
您应检查.htaccess文件以正确解析URL。 (如果Wix拥有一个,或者您可以访问它)。有一种可能是,您尝试加载的URL没有指向Angular应用程序的index.html。在.htaccess文件中搜索Angular,您可能会发现问题。
您在ng build --prod
中是正确的,然后只需将dist
文件夹的内容上传到public_html
文件夹。您不需要任何特殊类型的程序。您只是在上传包含大量Javascript的静态网站。
答案 1 :(得分:0)
运行ng build --prod后,编译后的angular应用的结果将是javascript,html,css,图像或字体,所有这些只是服务器端的静态http服务器,通常情况下,如果需要iis,则需要更新url writer例如,在两种情况下,如果您将应用托管在子域或基本URL而不是根目录上,则在映射需要更新基本URL的情况下,都应更改路由哈希状态。
这是我在github页面上对主机angular应用程序的配置
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"baseHref": "https://malbarmawi.github.io/angular-lessons/"
}
}
},