Что не так с этим.htaccess? Ограничить доступ к дополнительному домену HostMonster
Я использую следующее .htaccess
файл, чтобы запретить доступ к дополнительному домену через мою учетную запись хост-монстра. Однако к папкам / файлам все еще можно получить доступ, перейдя по адресу мой домен.com/domains/addon-domain.
Я много редактировал файл, пробовал разные вещи и брал кусочки тут и там, но он просто не работает. Если у кого-то есть опыт, особенно в том, как это делает HostMonster, это было бы здорово.
# Use PHP54CGI as default
AddHandler fcgid54-script .php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Options -Indexes
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ [NC]
RewriteCond %{REQUEST_URI} ^/domains/addon-domain1/(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^/domains/addon-domain2/(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^/domains/addon-domain3/(.*)$
RewriteRule ^(.*)$ - [L,R=404]
2 ответа
Вам нужно переместить это правило так, чтобы оно было перед вашим правилом WordPress. Вы также можете, вероятно, объединить некоторые из условий:
# Use PHP54CGI as default
AddHandler fcgid54-script .php
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ [NC]
RewriteCond %{REQUEST_URI} ^/domains/(addon-domain3|addon-domain2|addon-domain1)/
RewriteRule ^ - [L,R=404]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Options -Indexes
Местоположение вашего.htaccess очень важно.
Чтобы предотвратить доступ к этим другим доменам, он должен находиться в корне вашего сайта. Или вы можете поместить.htaccess в корень ваших различных поддоменов.
У вас может быть это в подкаталоге, где ваша установка WordPress.