如何解决这个问题?最直接的方法是让用户只能通过域名来访问网站,而不能通过IP来直接访问。这个可以修改Apache配置文件httpd.conf来实现。下面是小站的实现:
NameVirtualHost 121.*.*.* <VirtualHost 121.*.*.*> ServerName 121.*.*.* <Location /> Order Allow,Deny Deny from all </Location> </VirtualHost> <VirtualHost 121.*.*.*> DocumentRoot /var/www/nowamagic/ ServerName www.2013cms.com </VirtualHost> <VirtualHost 121.*.*.*> DocumentRoot /var/www/nowamagic/ ServerName nowamagic.net </VirtualHost>
第一部分代码是实现拒绝直接通过 121.*.*.* 这个IP的任何访问请求,这时如果你用 121.*.*.* 访问,会提示拒绝访问。
第二部分代码就是允许通过 http:/www.2013cms.com/ 这个域名访问,主目录指向 /var/www/
第三部分代码是允许不带 www 的域名访问,应该能和上面的合并一起写吧。
|