.net core 后端服务站点 angular 前端页面站点
.Net Core使用IIS部署出现502Error 502.5 - Process Failure
在项目目录运行命令行,执行前端
dotnet XXXWeb.dll --XXXWeb.dll是启动项
若是.net core版本不对,则会提示须要安装某版本的.net core
完成安装便可
参考资料web
在appsettings.json中设置客户端地址ClientRootAddressjson
"App": { "ServerRootAddress": "http://localhost:3521/", "ClientRootAddress": "http://localhost:4201/", "CorsOrigins": "*" }
发布前记住关闭swagger ui等开发工具
关闭swagger ui,能够选择删去.xml文件,则swagger页面会报错
windows
在angular项目文件中执行后端
ng build --prod --aot
解决相关报错,生成dist文件夹,包括浏览器
bundle XXX --XXX是你的项目名
在IIS中,新建站点,将XXX文件夹做为根目录
在XXX文件夹中新建文件web.configapp
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="AngularJS" 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="/" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
在/XXX/assets/appconfig.prod.json中设置service地址remoteServiceBaseUrlide
{ "remoteServiceBaseUrl": "http://localhost:3521" }
由于Angular无刷新的特性,因此浏览器地址栏上的网址其实不会映射到磁盘的特定位置,因此咱们须要安装Microsoft URL Rewrite Module 2.0 for IIS (x64)
注意Angular项目所在目录的访问权限,能够设置为EveryOne工具