Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

Possible Duplicate:
How do I prevent access to an add-on domain's root directory from main hosting domain name

I am hosting a webshop with OpenCart and its current URL is e.g. http://mydomain.com/shop/
I have created two subdomains ( http://pg.mydomain.com/ and http://shop.mydomain.com/ ) and both subdomains are already working as they should. However, can I restrict direct access to mydomain.com/shop/ while leaving all the files (index.php, etc.) there?
Since both subdomains are pointing to http://mydomain.com/shop/, I thought this would restrict all access.

So in the end, I would like my two shops to be accessable through http://pg.mydomain.com/ and http://shop.mydomain.com/, but not http://mydomain.com/shop/ while leaving all the files in http://mydomain.com/shop/.

share|improve this question

marked as duplicate by paulmorriss, danlefree Sep 12 '12 at 0:45

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

add comment

2 Answers 2

up vote 2 down vote accepted

You can do it with the following rule. This file would need to be placed in your /shop/ subdirectory.

RewriteEngine on
RewriteBase / 

#if not already shop.mydomain.com
RewriteCond %{HTTP_HOST} !^shop\.mydomain\.com$ [NC] 
#if request is for shop/, go to shop.mydomain.com
RewriteRule ^shop/$ http://shop.mydomain.com [L,NC,R=301] 

For obvious reasons, you can't redirect a person to two places at once (you need to choose either pg.yourdomain.com or shop.yourdomain.com). Once you have done the above, you can always do a manual redirect from the pg.yourdomain.com to shop.yourdomain.com. The rule can also be used if you wanted to setup a second shop.

share|improve this answer
add comment

It's always bad practice to leave operational things in web accessible folder.

But you can always place a .htaccess file in the shop folder to redirect the traffic to another address.

share|improve this answer
    
Thank you for your answer. Where can I look up how to fill this .htaccess file? I'm rather new to configuring a server –  MechMK1 Jun 26 '12 at 12:32
add comment

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