Easy WordPress Automated Subdomain (for developers only)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • fris
    Too lazy to set a custom title
    • Aug 2002
    • 55679

    #1

    Easy WordPress Automated Subdomain (for developers only)

    Thought I would make a post for all you developers out there.

    I try and avoid WordPress Multisite/Network when I can.

    But I often find I have to setup many sites for testing.

    I thought I would share a quick and easy way to do this via .htaccess and apache 1.3 or 2.x

    First your apache entry for httpd.conf

    192.168.1.180 is the domains ip address for this example, and mydomain.com is the domain you are setting this method up for.

    Remember you need to add a *.mydomain.com entry either into your dns, or via your dns control panel with your host.

    Code:
    <VirtualHost 192.168.1.180>
    ServerName mydomain.com
    ServerAlias www.mydomain.com *.mydomain.com
    DocumentRoot /home/chris/public_html
    <Directory "">
    Options ALL -Indexes
    AllowOverride ALL
    </Directory>
    
    LogLevel warn
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    LogFormat "%{Referer}i -> %U" referer
    LogFormat "%{User-agent}i" agent
    ErrorLog /home/chris/public_html/logs/error.log
    CustomLog /home/chris/public_html/logs/access.log common
    CustomLog /home/chris/public_html/logs/referer.log referer
    
    </VirtualHost>
    Now for the htaccess bit.

    You will want to make a subdirectory in your mydomain.com directory called subs

    here is the apache entry for 2.x

    Code:
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^(www\.)?mydomain\.com$ [NC]
    RewriteCond %{HTTP_HOST} ^(.*\.)?([^\.]+)\.mydomain\.com$ [NC]
    RewriteCond %{DOCUMENT_ROOT}/subs/%2%{REQUEST_URI}/ -d
    RewriteRule [^/]$ http://%2.mydomain.com%{REQUEST_URI}/ [R=301,L]
    RewriteCond %{HTTP_HOST} ^.*\.([^\.]+\.mydomain\.com)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
    RewriteCond %{HTTP_HOST} !^(www\.)?mydomain\.com$ [NC]
    RewriteCond %{HTTP_HOST} ^([^\.]+)\.mydomain\.com$ [NC]
    RewriteCond %1:::%{REQUEST_URI} !^(.+):::/subs/\1(/.*)?$ [NC]
    RewriteCond %{DOCUMENT_ROOT}/subs/%1/ -d
    RewriteRule ^(.*)$ /subs/%1/$1 [QSA,L]
    this will map subdomain.mydomain.com to the /subs directory

    so create a subdirectory in /subs say for links, which would be mapped to links.mydomain.com

    so now links.mydomain.com will serve files in /subs/links.

    For those running apache 1.3 here is the correct htaccess

    Code:
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^(www\.)?mydomain\.com$ [NC]
    RewriteCond %{HTTP_HOST} ^(.*\.)?([^\.]+)\.mydomain\.com$ [NC]
    RewriteCond %{DOCUMENT_ROOT}/subs/%2%{REQUEST_URI}/ -d
    RewriteRule [^/]$ http://%2.mydomain.com%{REQUEST_URI}/ [R=301,L]
    RewriteCond %{HTTP_HOST} ^.*\.([^\.]+\.mydomain\.com)$ [NC]
    RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,L]
    RewriteCond %{ENV:REDIRECT_STATUS} ^$
    RewriteCond %{HTTP_HOST} !^(www\.)?mydomain\.com$ [NC]
    RewriteCond %{HTTP_HOST} ^([^\.]+)\.mydomain\.com$ [NC]
    RewriteCond %{DOCUMENT_ROOT}/subs/%1/ -d
    RewriteRule ^(.*)$ /subs/%1%{REQUEST_URI} [QSA,L]
    so now you can create subdirectories, say files, links, hello, etc and those will all be sub domains on mydomain.com

    I find this easier for me to develop without adding entries each time to my server config.

    Since 1999: 69 Adult Industry awards for Best Hosting Company and professional excellence.
  • fris
    Too lazy to set a custom title
    • Aug 2002
    • 55679

    #2
    bump for developers ;)
    Since 1999: 69 Adult Industry awards for Best Hosting Company and professional excellence.

    Comment

    • papill0n
      Unregistered Abuser
      • Oct 2007
      • 15547

      #3
      you shall be rewarded with pussy lips

      Comment

      • papill0n
        Unregistered Abuser
        • Oct 2007
        • 15547

        #4

        Comment

        • Markul
          Likes Pie
          • Dec 2007
          • 12403

          #5
          Thanks dude passed it on to my techie, said it was useful
          But.... I pulled out...

          Comment

          • Horny Dude
            Earn enough to buy coffee
            • May 2002
            • 4913

            #6
            How come u don't like Wordpress MS? I love to use it for building and testing. Thanks for the tip.

            Comment

            • 2012
              So Fucking What
              • Jul 2006
              • 17189

              #7
              very nice,thank you so much for your time and effort
              best host: Webair | best sponsor: Kink | best coder: 688218966 | Go Fuck Yourself

              Comment

              Working...