如何才能使某个地址只能访问我的某个虚拟主机?
我试过了:
<VirtualHost *:80>
DocumentRoot "C:\Web Server\phpmyadmin"
ServerName localhost
<Directory />
Require all granted
Require ip 192.168.0.10
</Directory>
# Other directives here
</VirtualHost>
和
DocumentRoot“C:\ Web Server \ phpmyadmin” ServerName localhost
<Directory />
<RequireAll>
Require all granted
Require ip 192.168.0.10
</RequireAll>
</Directory>
# Other directives here
但Apache拒绝开始。
答案 0 :(得分:1)
一旦我通过vhost配置尝试了相同的操作,并因为依赖于其他apache配置文件而失败。我最终使用.htaccess文件限制只访问我的IP - 它在我迄今为止的所有场景中都有效:
示例htaccess配置:
RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.php
RewriteCond %{REMOTE_ADDR} !=111.111.111.111
RewriteRule ^.*$ /maintenance.php [R=302,L]
它会将IP不是111.111.111.111的任何用户重定向到maintenance.php文件,在该文件中,您可以向用户发送一条消息,告知访问被阻止。
我给你这个例子是因为我看到这个问题也被标记为&#34; .htaccess&#34;。
答案 1 :(得分:0)
这应该可以解决问题:
<VirtualHost *:80>
DocumentRoot /var/www/test
<Directory /var/www/test>
Order deny,allow
Deny from all
Allow from <IP>
</Directory>
</VirtualHost>
2.4使用中的更新:
<Directory /var/www/test>
Require ip <IP>
</Directory>