Можно достигнуть этого путем добавления некоторого mod_rewrite волшебства к .htaccess
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule .* http://www.example.com/404.php [R=301]
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Это - просто пример того, как можно сделать это, конечно, можно ли изменить порядок правил и место назначения их, просто иметь ли в виду то добавление [L]
будет мешать mod_rewrite оценить дальнейшие правила.
это должно работать, пока example.com DocumentRoot не является/www, но/www/something_else. Добавьте это к своему httpd.conf:
NameVirtualHost 87.65.43.21
NameVirtualHost 12.34.56.78
NameVirtualHost hidden.com
NameVirtualHost hidden.example.com
<VirtualHost 12.34.56.78 12.34.56.78 hidden.com hidden.example.com>
DocumentRooot /www/hidden
ServerName hidden.com
ServerAlias hidden
</VirtualHost>