问题
I am working on AngularJs application with node.js. Using gulp, I have created (compiled) my application (app
in below image) and got the following directories
Now I completely struck how to proceed next. I want to host this application over IIS to run and see the pages (in views
folder) but I don't know how to host it on IIS.
I tried this article, but it guides to use express server.
The issue is, how IIS will figure out that the first page lies in views
folder, and even if I use the complete url
http://localhost:8078/views/index.html
it shows me all angular code with brackets like {{logginuser}}
etc
EDIT: Do I need web.config file here or not. If yes then how I will define entry point to the application?
回答1:
Just have to configure a Web Application under a website in IIS and create a custom web.config.
- In IIS, go to the Default Web Site, right-click and select Add Web Application
- Set the Alias to be AngularApp and the Physical Path to be the root of your directory
Add a web.config file at the root of the directory with the following code
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <defaultDocument> <files> <add value="views/index.html" /> </files> </defaultDocument> </system.webServer> </configuration>
Browse to your new Angular application by going to http://localhost/AngularApp (assuming http binding in IIS).
回答2:
Lost 2 hours with this
The solution was to go to WINDOWS FEATURES
and check 'static content', under COMMON HTTP
features.
Hope this helps someone.
回答3:
You need set as start page to you main screen (like index.html)
How can I set it in IIS?
Just go to web.config file and add following
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="index.html" />//Path of your Page
</files>
</defaultDocument>
</system.webServer>
More details : How do I set the default page of my application in IIS7?
来源:https://stackoverflow.com/questions/32719436/deploy-angular-application-on-iis