Solved

mod rewrite wildcard subdomain to folders

Posted on 2009-05-04
7
414 Views
Last Modified: 2013-11-30
I'm trying to do a mod rewrite that will globally rewrite all subdomains to subdirectories unless it is www or example. The below code doesn't seem to work for some reason.
RewriteEngine On
 

#Grab the subdomain from the domain

RewriteCond %{HTTP_HOST} ^([^.]+).vsssl.com$
 

#Make sure the subdomain is not www or example

RewriteCond %{1} !^(www|example)$
 

#Check if the directory actually exists before we go there

RewriteCond /home/vsssl/public_html/%1 -d
 

#This stops it from looping

RewriteCond %{REQUEST_FILENAME} !^/home/vsssl/public_html/
 

#Finally, this is the actual rewrite

RewriteRule (.*) /home/vsssl/public_html/%1/$1 [Last]

Open in new window

0
Comment
Question by:MeridianManagement
  • 3
  • 2
  • 2
7 Comments
 
LVL 42

Expert Comment

by:David S.
ID: 24301669
Try this:
RewriteEngine On

 

#Make sure the subdomain is not www or example

RewriteCond %{HTTP_HOST} !^(www|example)\.vsssl\.com$

 

#Grab the subdomain from the domain

RewriteCond %{HTTP_HOST} ^([^.]+)\.vsssl\.com$

 

#Check if the directory actually exists before we go there

RewriteCond /home/vsssl/public_html/%1 -d
 

#This stops it from looping

RewriteCond %{REQUEST_FILENAME} !^/home/vsssl/public_html/

 

#Finally, this is the actual rewrite

RewriteRule (.*) /home/vsssl/public_html/%1/$1 [Last]

Open in new window

0
 
LVL 2

Author Comment

by:MeridianManagement
ID: 24301701
no, it didn't work. In fact members.vsssl.com just goes to document root.
0
 
LVL 42

Expert Comment

by:David S.
ID: 24301763
Are you using httpd.conf or .htaccess?
0
Zoho SalesIQ

Hassle-free live chat software re-imagined for business growth. 2 users, always free.

 
LVL 2

Author Comment

by:MeridianManagement
ID: 24301808
.htaccess
0
 
LVL 27

Expert Comment

by:caterham_www
ID: 24310367
"#This stops it from looping"

this stops your rewrite.
RewriteEngine On

 

#Grab the subdomain from the domain

RewriteCond %{HTTP_HOST} ^([^.]+)\.vsssl\.com$

 

#Make sure the subdomain is not www or example

RewriteCond %{1} !^(www|example)$

 

#Check if the directory actually exists before we go there

RewriteCond /home/vsssl/public_html/%1 -d

 

RewriteCond %1<>%{REQUEST_FILENAME} !^[^<]+<>/home/vsssl/public_html/\1/
 

RewriteRule ^(.*) /%1/$1 [Last]

Open in new window

0
 
LVL 2

Author Comment

by:MeridianManagement
ID: 24310777
The .htaccess gave me a internal configuration error. Here's one I created for one subdomain, I don't know if that helps. Maybe you could modify this one since it's working?

RewriteEngine On
RewriteCond %{HTTP_HOST}   ^[www\.]*members.vsssl.com [NC]
RewriteCond %{REQUEST_URI} !^/members/.*
RewriteRule   ^(.*)  /members/$1  [L]
0
 
LVL 27

Accepted Solution

by:
caterham_www earned 500 total points
ID: 24313073
The capturing group was missing,
RewriteEngine On

RewriteCond %{HTTP_HOST} ^([^.]+)\.vsssl\.com$

RewriteCond %{1} !^(www|example)$

RewriteCond /home/vsssl/public_html/%1 -d

RewriteCond %1<>%{REQUEST_FILENAME} !^([^<]+)<>/home/vsssl/public_html/\1

RewriteRule ^(.*) /%1/$1 [Last]

Open in new window

0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

#Citrix #Citrix Netscaler #HTTP Compression #Load Balance
ADCs have gained traction within the last decade, largely due to increased demand for legacy load balancing appliances to handle more advanced application delivery requirements and improve application performance.
Viewers will learn how to connect to a wireless network using the network security key. They will also learn how to access the IP address and DNS server for connections that must be done manually. After setting up a router, find the network security…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now