I was set a puzzle via email last week - how to redirect an entire domain to a new server / domain, apart from three specific directories / folders which are to remain on the old server.
Clearly, this is a task for
mod_rewrite, and the natural and instrincive reaction is to write a regular expression match to somehow select all domains except those which need to remain on the current server, and to redirect them. Alas, that will proove to be easier said than done. There turns out to be a much easier way to do it ...
1. Rewrite each of the directories that's to be left on the current server, making it a last rule with the
[L] option:
RewriteRule ^lv/(.*) lv/$1 [L]
RewriteRule ^lt/(.*) lt/$1 [L]
RewriteRule ^ee/(.*) ee/$1 [L]
2. Then rewrite all remaining URLs to the new server:
RewriteRule (.*) http://newservername.com/$1
You may choose to add
[R=301] on the end of this if you wish to indicate to your visitor that your change is a permanent one.
(written 2012-09-17, updated 2012-09-22)
Associated topics are indexed under
A603 - Web Application Deployment - Further httpd Configuration [4001] Helping search engines with appropriate 400 error codes - (2013-02-11)
[3955] Building up from a small PHP setup to an enterprise one - (2012-12-16)
[3635] Parse error: parse error, unexpected T_STRING on brand new web site - why? - (2012-03-03)
[3449] Apache Internal Dummy Connection - what is it and what should I do with it? - (2011-09-19)
[3133] An image from a website that occasionally comes out as hyroglyphics - (2011-01-14)
[2900] Redirecting a page - silent, temporary or permanent? - (2010-08-03)
[2478] How did I do THAT? - (2009-10-26)
[2272] Monitoring and loading tools for testing Apache Tomcat - (2009-07-07)
[2060] Database connection Pooling, SSL, and command line deployment - httpd and Tomcat - (2009-03-01)
[1974] Moving a directory on your web site - (2009-01-03)
[1955] How to avoid duplicating web page maintainance - (2008-12-20)
[1954] mod_rewrite for newcomers - (2008-12-20)
[1939] mod_proxy_ajp and mod_proxy_balancer examples - (2008-12-13)
[1778] Pointing all the web pages in a directory at a database - (2008-08-30)
[1767] mod_proxy and mod_proxy_ajp - httpd - (2008-08-22)
[1762] WEB-INF (Tomcat) and .htaccess (httpd) - (2008-08-20)
[1707] Configuring Apache httpd - (2008-07-12)
[1636] What to do if the Home Page is missing - (2008-05-08)
[1619] User and Group settings for Apache httpd web server - (2008-04-22)
[1566] Strange behaviour of web directory requests without a trailing slash - (2008-03-06)
[1564] Default file (MiMe types) for Apache httpd and Apache Tomcat - (2008-03-04)
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath) - (2008-02-24)
[1551] Which modules are loaded in my Apache httpd - (2008-02-23)
[1381] Using a MySQL database to control mod_rewrite via PHP - (2007-10-06)
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat) - (2007-10-02)
[1355] .php or .html extension? Morally Static Pages - (2007-09-17)
[1351] Compressing web pages sent out from server. Is it worth it? - (2007-09-14)
[1207] Simple but effective use of mod_rewrite (Apache httpd) - (2007-05-27)
[1121] Sharing the load with Apache httpd and perhaps Tomcat - (2007-03-29)
[1080] httpd.conf or .htaccess? - (2007-02-14)
[1009] Passing GET parameters through Apache mod_rewrite - (2006-12-27)
[934] Clustering, load balancing, mod_rewrite and mod_proxy - (2006-11-21)
[853] To list a directory under httpd on a web server, or not? - (2006-09-02)
[755] Using different URLs to navigate around a single script - (2006-06-11)
[662] An unhelpful error message from Apache httpd - (2006-03-30)
[649] Denial of Service ''attack'' - (2006-03-17)
[631] Apache httpd to Tomcat - jk v proxy - (2006-03-03)
[550] 2006 - Making business a pleasure - (2006-01-01)
[526] Apache httpd - serving web documents from different directories - (2005-12-12)
[466] Separating 'per instance' data from binaries and web sites - (2005-10-16)
[345] Spotting a denial of service attack - (2005-06-12)
A607 - Web Application Deployment - Apache httpd mod_rewrite [3753] Adding a passcode to a directory - (2012-06-05)
[3568] Telling which ServerAlias your visitor used - useful during merging domains - (2012-01-04)
[3339] Simplest ever proxy configuration? - (2011-06-28)
[3197] Finding and diverting image requests from rogue domains - (2011-03-08)
[2981] How to set up short and meaningfull alternative URLs - (2010-10-02)
[2773] Dynamically watching your web site via a PHP wrapper - (2010-05-21)
[2768] Carrying a long URL around - looking for memorable shorts - (2010-05-17)
[2728] Redirecting a home page using mod_rewrite - (2010-04-17)
[2555] Bookkeeping - (2009-12-29)
[2094] If you have a spelling mistake in your URL / page name - (2009-03-21)
[1771] More HowTo diagrams - MySQL, Tomcat and Java - (2008-08-24)
[1731] Apache httpd, MySQL, PHP - installation procedure - (2008-08-01)
[1376] Choosing between mod_proxy and mod_rewrite - (2007-10-02)
[1006] Apache httpd and Apache Tomcat together tips - (2006-12-24)
5572
Some other Articles
Celebrate! Buses from Meksham to BathWhat makes Well House Manor different?Guest Guide for Well House Manor and MelkshamFive new fans at Well House ManorForwarding a whole domain, except for a few directories - Apache http serverMelksham Food Festival - the food fayre - picturesMelksham to Steam in Swindon, by train - great day outYouve Been Selected for the 2012 Edition of the Global RegistryThe apple crop of 2012Why has the mouth not said much for the last week or two?