I’m currently working on a project to bring two of our hosted servers (one email, one web) in-house to run alongside our other web server. Hosting one web server is fairly straightforward, but I need help with how I can divert the traffic to the correct server once it reaches our network.

I’ve read that a proxy server will do this. I’ll be using IIS 7.5 with Application Request Routing and URL Rewrite. I have been trying different methods but I haven’t had any success so I must be missing something.

Would I use URL Rewrite to change the external web address to in internal IP address for the correct server, and then a different port for each individual website on that server? Or is it possible to say the URL of example.com goes to this internal IP, and the URL of company.com goes to this IP?

Current Setup

The two external servers are running Plesk 10 and 11. They host multiple websites and the emails related to those websites. Two examples:-
example.com – info@example.com
company.com – info@company.com

We currently host one web server in-house at IP running IIS 6. This server contains the sub-domain websites for company.com:-

Our router forwards incoming traffic on port 80 to

Desired Setup

We will have the router forward incoming traffic on port 80 to IP.6
The server at IP.6 will be running IIS 7.5 with Application Request Routing and URL Rewrite. I want this server to direct the traffic to either one of the following servers.

A server at IP.5 to replace our current internal web server will be running IIS 8 and hosting the sub-domain websites for company.com:-

A server at IP.11 to replace our current external web server will be running Plesk 12 hosting many websites including:-

As I mentioned in the brief, we will be transferring our email server as well. This will be located at IP.10 running Plesk 12. Am I correct that I will also need the router to forward incoming traffic on ports 25 and 143 to IP.10? This server will be hosting the webmail websites:-

  • What you need is a reverse proxy. And yes, the router should forward port 25 to the mail machine. By the way, if all you need is a reverse proxy on the IP.6 server, why not use Linux instead, and keep your valuable Windows Server licenses for something you can't easily replicate in Linux (active directory, etc).. – user186340 May 13 '15 at 14:23
  • @André - The reason I'm using Windows IIS server for a reverse proxy instead of Linux is we already have a server set aside for this with a few other tasks. – James Winstanley May 13 '15 at 15:23

What is your public facing edge router?

Based on the port request you can forward to the proper server. You will need to detect host header to know which website to point to in the case of 80 and 443. URL rewrite I would only use on the same server and not to redirect to a separate server.

Under your desired approach you would forwarding to a windows server which adds another point of common failure and adds unnecessary load to the one windows server. You generally do not want to open any unnecessary ports on any computer. Run the web servers with just 80, 443 and generally nothing else [maybe RDP on a custom port for management - I would much rather VPN in to the network and use RDP on the local subnet only]

By using your edge router you eliminate one point of common failure. I am using a CISCO ASA series to do this. I have also used an ASUS 200.00 router to do this on a budget.

The email portion configure SMTP 25, POP3 110, IMAP 143, SMTP 587, also 993.

Email from the web servers - outbound responses can be processed by the exchange server so local SMTP 25 to the exchange server only.

This can be done a few ways either route or nat. You can place the servers in a DMZ and allow packets to be routed or you can NAT. Each has advantages and disadvantages to consider.

I would be more inclined to route the MS Exchange server and NAT the web servers. Review the hardening steps for running exchange server

Hope this helps

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.