所以我刚刚更改了网络主机,我试图在我的网站主机上重新应用一些相同的IP地址限制。但是,进行完全相同的更改似乎不起作用。
例如,我想只允许一个IP地址,这就是我旧的网络主机上的内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
order deny,allow
deny from all
allow from xx.xx.xx.xx
</IfModule>
我的IP地址明显混淆了。但是,当我在新的Web服务器上执行此操作时,它似乎甚至不允许我的IP地址。如果这是完全相同的配置,我并不是100%完全确定为什么会发生这种情况。
FWIW,我正在使用VirtualHosts,所以我在/etc/apache2/sites-available/domain.conf文件中有虚拟主机的配置,但没有任何关于mod_rewrite或任何与IP地址限制有关的内容。这个变化正在特定Web主机的HTML目录中的.htaccess文件中创建。此更改在特定Web主机的HTML目录中的.htaccess文件中进行。
如果我只删除这3行,一切都很好,所以我有点不解。
非常感谢任何帮助。
*更新*
所以我尝试使用&#34;要求&#34;进行调整,这是Apache 2.4的首选,似乎我仍然被拒绝访问。这是我的虚拟主机配置文件的一个示例:
DocumentRoot /var/www/html/mysite
<Directory /var/www/html/mysite/>
Options Indexes FollowSymLinks
AllowOverride All
#Require all granted
<IfModule mod_authz_core.c>
<RequireAny>
Require ip <myip>
</RequireAny>
</IfModule>
</Directory>
我已经尝试过使用IfModule而没有它,而且对于RequireAny也是如此。尝试更换&#34;要求所有被授予&#34;用那个&#34;要求ip&#34;声明并仍然被拒绝。