I have a website which is accessible via several hostnames.

I would like to put something in an .htaccess file that would simply block any request requesting a particular hostname.

For example, say example1.com and hello.somehost.com both point to the same website. I would like to put something in the .htaccess file that will allow users to view the website if they visit example1.com, but will not allow users to view it if they visit hello.somehost.com.

You'd think this would be easy to Google but if there are any results out there, they're drowned out by people who want to block access if the user is coming from a particular hostname...

2 Answers 2


Apparently newer versions of apache (2.4) support conditional statements in .htaccess files, although i havent found a reference... just lots of results on other stack exchange sites.

You might also be able to accomplish what you want to do using rewrite rules.

Otherwise, the most obvious place to do this is in your virtual host config.

If you have a global php include file, you could do it there as a last resort.


You can implement it using mod_rewrite. Have mod_rewrite check for the HTTP_HOST and show a 403 Forbidden error:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^hello\.somehost\.com$
RewriteRule .* - [F]

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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