Я хочу ограничить прямой IP-доступ к своему сайту. Я нашел несколько решений, связанных с .htaccess, но ни одно из них не работает. Я также нашел одно решение через конфигурацию виртуальных хостов apache, которое работало нормально, пока я не установил SSL-сертификат через CPanel. Я абсолютно не знаю, что было изменено в файле httpd.conf, но теперь настройка перенаправления не работает, даже если я удалю сертификат SSL.
Вот мои текущие настройки виртуальных хостов:
NameVirtualHost 192.168.1.1:80 NameVirtualHost *
<VirtualHost 192.168.1.1:80>
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /home/rotate/public_html
ServerAdmin me@mysite.com
UseCanonicalName Off
## User rotate # Needed for Cpanel::ApacheConf
UserDir disabled
UserDir enabled rotate
ScriptAlias /cgi-bin/ /home/rotate/public_html/cgi-bin/
</VirtualHost>
<VirtualHost 192.168.1.1:80>
ServerName 192.168.1.1
Redirect 403 /
ErrorDocument 403 "Sorry, direct IP access not allowed."
DocumentRoot /usr/local/apache/htdocs
ServerAdmin me@mysite.com
UseCanonicalName Off
UserDir disabled
</VirtualHost>
<VirtualHost *>
ServerName server.mysite.com
DocumentRoot /usr/local/apache/htdocs
ServerAdmin me@mysite.com
UserDir disabled
</VirtualHost>
NameVirtualHost 192.168.1.1:443
<VirtualHost 192.168.1.1:443>
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /home/rotate/public_html
ServerAdmin me@mysite.com
UseCanonicalName Off
UserDir disabled
UserDir enabled rotate
ScriptAlias /cgi-bin/ /home/rotate/public_html/cgi-bin/
SSLEngine on
#SSL stuff here
</VirtualHost>
IP и имена были заменены на общие. Часть «Redirect 403 /» не работает с момента установки сертификата SSL. Буду признателен, если кто-нибудь сможет пролить свет на то, что я делаю здесь неправильно. Благодарю.