Our team have one line of internet and one public IP which have to handle many kind of web application behind it some of web application very simple and doesn't care about virtual domain, URL rewirte, authentication resource optimization. So it really need a front web-server who fill the gap and make the manage process more easy and secured. That where Nginx coming and give me a greate favour. Here is what Nginx currently do in my server:
- Forward request base on domain and url to the right web application behind
- Support https, SPDY to make web application faster and more secure.
- Caching and optimizing the response of web application's static resource.
- Authentication and authorization base on domain and URL.
- Rewrite the URL and add more information to request to help the web application understand more about user.
- Limited request rate and bandwidth, deny request base on IP and country to protect web application from abuse by bad visitor.
The Case 1:
We have a IP range in our local network which reserve for 4 virtual machine which run our demo product and can be managed directly by developer when they need to show case to our customer.
Problem is every time they want allow outside access to their demo product i have to add new record to Nginx or router to forward the request to demo server and now i go tired with that task. I want nginx to extract the forward destination by reading the domain information and forward request to that. For example, when user request http://acceptance01.8080.example.net/index.php nginx will forward lookup local DNS for computer name acceptance01 and forward to that computer on port 8080 with file index.php. If request failed some how Nginx will handle the bad situation by display a nice error message.
... to be continue...