I have 1 server that is already taking up port 80 (a live site), and I have another server running wordpress mu that can ONLY run on port 80.
Is there a way with my router to transfer port 81 to look like it is port 80 to the wordpress install?
I have 1 server that is already taking up port 80 (a live site), and I have another server running wordpress mu that can ONLY run on port 80.
Is there a way with my router to transfer port 81 to look like it is port 80 to the wordpress install?
Setting up a port forward should be simple. Are you using the stock firmware or something else else like ddwrt? The problem you may have is that the wordpressmu install may output absolute URLs. If it does, they will not include the correct port.
You could setup a HTTP proxy that you forward port 80 to. That proxy can then be configured to forward the request to the correct internal host based on the hostname. If your existing web site is already running apache, you could even just setup an additional virtual host there and enable the proxy.
Assuming that the request is coming externally through the router you can set it to forward the external port 81 to the IP and port 80 on your internal server.
Check the firewall setup and the add a port-forwarder.
It's here in the setup:
Applications and Gaming > Port Range Forward
From the manual:
To forward a port, enter the information on each line for the criteria required.
Application In this field, enter the name you wish to give the application. Each name can be up to 12 characters.
Start/End This is the port range. Enter the number that
starts the port range in the Start
column and the number that ends the
range in the End column.
Protocol Select the protocol used for this application, either TCP or UDP, or Both.
IP Address For each application, enter the IP Address of
the PC running the specific
application.
Enable Select Enable to enable port forwarding for the relevant application.
The problem with the methods mentioned so far is that the solution is either more complicated than it needs to be (proxy, multiple port forwarding settings) or puts the burden on the client (alternate port). Why not run both sites on port 80 and use host headers to differentiate the two? This allows you to have a single port forwarding rule on your firewall (port 80), allows you to run multiple unique web sites internally, and allows your web site visitors to connect as they would with any other web site without having to specify the port number in their browser. I run 6 unique web sites on my home server this way.
This should work unless I'm misunderstanding your question.
I've never tried this but this should work without needing to restart the network adaptor nor taking down the live site for any reason:
Use an IP based virtual host approach: http://httpd.apache.org/docs/2.0/vhosts/ip-based.html
To make it work, bind your network card to 2 internal NAT IP addresses by adding the second IP in the network properties. Make Wordpress run on one of the IP addresses and the livesite run on the other IP address.... both on port 80. Then use your hosts file to send livesite.com to one IP and wordpresssite.com to the other IP address. Also, from the outside world make the domain resolve to the correct IP.
I was able to overcome this using a reverse proxy in IIS, that works like mod_proxy and translates everything after the / to the internal site using the HOSTS file and mapping the domain to the internal IP. It is messy, but it works.