首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Robots.txt指南

当搜索引擎访问一个网站时,它首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件。Robots.txt文件用于限定搜索引擎对其网站的访问范围,即告诉搜索引擎网站中哪些文件是允许它进行检索(下载)的。这就是大家在网络上常看到的“拒绝Robots访问标准”(Robots Exclusion Standard)。下面我们简称RES。 Robots.txt文件的格式:Robots.txt文件的格式比较特殊,它由记录组成。这些记录通过空行分开。其中每条记录均由两个域组成:   1) 一个User-Agent(用户代理)字符串行;   2) 若干Disallow字符串行。   记录格式为:<Field> ":" <value>   下面我们分别对这两个域做进一步说明。 User-agent(用户代理):   User-agent行(用户代理行) 用于指定搜索引擎robot的名字,以Google的检索程序Googlebot为例,有:User-agent: Googlebot   一个robots.txt中至少要有一条User-agent记录。如果有多条User-agent记录,则说明有多个robot会受到RES标准的限制。当然了,如果要指定所有的robot,只需用一个通配符"*"就搞定了,即:User-agent: * Disallow(拒绝访问声明):   在Robots.txt文件中,每条记录的第二个域是Disallow:指令行。这些Disallow行声明了该网站中不希望被访问的文件和(或)目录。例如"Disallow: email.htm"对文件的访问进行了声明,禁止Spiders下载网站上的email.htm文件。而"Disallow: /cgi-bin/"则对cgi-bin目录的访问进行了声明,拒绝Spiders进入该目录及其子目录。Disallow声明行还具有通配符功能。例如上例中"Disallow: /cgi-bin/"声明了拒绝搜索引擎对cgi-bin目录及其子目录的访问,而"Disallow:/bob"则拒绝搜索引擎对/bob.html和/bob/indes.html的访问(即无论是名为bob的文件还是名为bob的目录下的文件都不允许搜索引擎访问)。Disallow记录如果留空,则说明该网站的所有部分都向搜索引擎开放。 空格 & 注释   在robots.txt文件中,凡以"#"开头的行,均被视为注解内容,这和UNIX中的惯例是一样的。但大家需要注意两个问题:   1) RES标准允许将注解内容放在指示行的末尾,但这种格式并不是所有的Spiders都能够支持。譬如,并不是所有的Spiders都能够正确理解"Disallow: bob #comment"这样一条指令。有的Spiders就会误解为Disallow的是"bob#comment"。最好的办法是使注解自成一行。   2) RES标准允许在一个指令行的开头存在空格,象"Disallow: bob #comment",但我们也并不建议大家这么做。 Robots.txt文件的创建:   需要注意的是,应当在UNIX命令行终端模式下创建Robots.txt纯文本文件。好的文本编辑器一般都能够提供UNIX模式功能,或者你的FTP客户端软件也“应该”能够替你转换过来。如果你试图用一个没有提供文本编辑模式的HTML编辑器来生成你的robots.txt纯文本文件,那你可就是瞎子打蚊子——白费力气了。 对RES标准的扩展:   尽管已经提出了一些扩展标准,如Allow行或Robot版本控制(例如应该忽略大小写和版本号),但尚未得到RES工作组的正式批准认可。 附录I. Robots.txt用法举例:   使用通配符"*",可设置对所有robot的访问权限。   User-agent: *   Disallow:   表明:允许所有搜索引擎访问网站下的所有内容。   User-agent: *   Disallow: /   表明:禁止所有搜索引擎对网站下所有网页的访问。   User-agent: *   Disallow: /cgi-bin/Disallow: /images/   表明:禁止所有搜索引擎进入网站的cgi-bin和images目录及其下所有子目录。需要注意的是对每一个目录必须分开声明。   User-agent: Roverdog   Disallow: /   表明:禁止Roverdog访问网站上的任何文件。   User-agent: Googlebot Disallow: cheese.htm   表明:禁止Google的Googlebot访问其网站下的cheese.htm文件。   上面介绍了一些简单的设置,对于比较复杂的设置,可参看一些大型站点如CNN或Looksmart的robots.txt文件(www.cnn.c

02

Serv-U服务器的管理3

8.编辑IP访问规则   对于某些扰乱服务器秩序但又不方便删除其账户的用户,可以利用“编辑IP访问规则”允许或阻止特定的IP访问。Serv-U对用户IP访问规则的设置相当灵活,不仅可以设置允许访问本服务器的用户IP,也可以设置拒绝访问的用户IP;不仅可对每个账户进行单独编辑,也可对整个服务器所有账户进行统一编辑,还支持“”和“?”通配符。 1)拒绝访问   对于捣蛋的用户,如果不方便删除其账户,可以从“域日志”中查找到该用户连接的IP。在“规则”文本框中,点击“添加”,Serv-U就会将此规则添加到下方的“IP访问规则”列表框中。这对于那些拥有固定IP的用户相当有效。但如果该用户是拨号上网用户,只要断线后重新拨号,就会获得一个新IP,显然,此IP访问规则对于该用户来说已经失效。要解决此问题,就要用到通配符和“-”符号。假设我们要屏蔽的用户IP是192.168.X.X,可以在“规则”中输入192.168..,也可以输入192.168.﹖.﹖-192.168.﹖﹖﹖.﹖﹖﹖或者192.168.0.0-192.168.255.255,效果一样。合理使用这些符号,还可以有效防止******。   2)允许访问   如果想将自己的FTP站点仅供几个特定的用户使用,可以选中“允许访问”,在“规则”中输入特定用户的IP,再点“添加”。同样,如果特定用户的IP是动态IP,可以使用通配符和“-”符号进行设置。 其实作为站长,更多的时候需要将两种规则灵活混用,比如从拒绝访问的IP中设置某个IP为允许访问,抑或相反。需要提醒的是:对于某些局域网用户,比如网吧,如果将其IP设置为拒绝访问,则整个局域网都将会被服务器屏蔽掉。 9.服务器带宽等资源管理   对于服务器来说,最重要的就是如何保证服务器带宽等系统资源及其性能不被浪费。为此,还需要进行一些设置,进入“本地服务器→设置→常规”选项卡。 “最大速度”:即可以使用的最大带宽(KB/秒),根据服务器总带宽资源填入合适的数值。如果不填数值,Serv-U将使用所有可用的带宽,这样当连接的用户达到一定数量时,会导致服务器上其它的网络应用不可用。以512Kbps ADSL为例,最好设置为50KB/秒或以下。   “最大用户数”:设置在同一时间内允许连接到本服务器的最大用户数。由于每个连接到服务器的用户即使不上传、下载任何文件,也会占用一定带宽,因而最好进行设置,否则系统不会控制登录用户数,直至为此耗尽所有资源。   “删除部分已上传的文件”:删除不完整的上传文件。如果选择此项,系统会自动删除没有完全上载的文件,以最大可能地节省服务器硬盘空间。是否选择,要视服务器用户平时上传的文件大小决定。   “禁用反超时调度”:很多FTP服务器为了防止用户长时间不操作却占用带宽及连接数而做了超时设置,当用户连接超过一定时间但未做任何操作,就会被服务器自动踢除。针对这点,一些FTP客户端程序会自动向服务器端发送一些命令,以保证不被踢除。如果选择此项,服务器将采用一种独特的计时方式以防止FTP客户端程序的这些反超时设置。建议选择。   “拦截连接超过 ×次于× 秒×分钟”:用来设置如果一个用户在×秒内持续连接了×次,那么屏蔽他的IP地址×分钟,可以有效防止用户使用如网络蚂蚁等高速多线程下载软件连接服务器。   以上的设置对于“域”下所有服务器都有效。但是这些设置对于具体的某个FTP服务器或某个账户来说过于粗浅,不利于细致地管理。不过不要紧,Serv-U针对每个服务器下的每个账户都提供了细化的设置功能。可进入该账户的“常规”选项卡:   “只允许X从相同的IP登录”:很多用户在下载两个或两个以上文件时,为了节省下载等待时间,往往会同时打开两个以上的FTP客户端软件登录。对于服务器来说,每个登录进程实际上就是一个用户,这样不仅占用了系统带宽,而且挤占了其他用户的登录权。这就需要选中此选项来防止此种情况。选中后,服务器就只允许某个IP同时最多有X个连接。   “最大上传速度和最大下载速度(KB/秒)”:用来设置该账户用户最大的上传/下载速度。对于特定账户,可以设置得比一般账户高些,以体现特权。   “空闲超时和任务超时(秒)”:“空闲超时”用来设置当用户空闲超过一定时间时就会被服务器自动踢除以免占用资源,“任务超时”设置当用户与服务器进行每个任务时,超出一定时间就会被系统自动踢除。   “最大用户数量”:设置在同一时间内用此账户登录服务器的最大用户数。 完成这些设置后,实际上你已经拥有一台处于准专业管理水平下的准专业FTP服务器了。之所以还只是准专业管理水平,是因为你还没有实现当今最时尚最炫的远程管理功能。 10.实现远程FTP服务器管理   有没有想过在家中架设FTP服务器,在办公室也可以像坐在家中一样对服务器进行各种设置和管理呢?Serv-U就提供了这种远程管理功能。为方便说明,先假设我们在

02

浅谈 Apache 的访问控制配置

为了更好地控制对网站资源的访问,所以需要为特定的网站目录添加访问授权。 客户机地址限制: 通过 Require 配置项,可以根据主机的主机名或IP地址来决定是否允许客户端访问,在 httpd服务器的主配置文件的 <Location>、<Directory>、<Files>、<Limit> 配置段中均可以使用 Require 配置项来控制客户端的访问。 常用格式如下: Require all granted :表示允许所有主机访问 Require all denied :表示拒绝所有主机访问 Require local :表示仅允许本地主机访问 Require [not] host <主机名或域名列表> :表示允许或拒绝指定主机或域访问 Require [not] IP <IP地址或网段列表> :表示允许或拒绝制定IP或网段访问 具体用法: 路径:/usr/local/httpd/conf/httpd.conf 1、允许所有

02

解决MySQL连接问题:Access Denied和SSL警告;MySQL数据库连接失败:Access Denied异常的解决方法;如何在Java应用程序中正确配置MySQL数据库连接

报错“Connected to the target VM, address: '127.0.0.1:59549', transport: 'socket' Wed Sep 13 16:56:02 CST 2023 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification. java.sql.SQLException: Access denied for user 'username'@'localhost' (using password: YES) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:127) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:862) at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:444) at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:230) at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:247) at BookManagement.<init>(BookManagement.java:21) at BookManagement.main(BookManagement.java:62) Disconnected from the target VM, address: '127.0.0.1:59549', transport: 'socket' 进程已结束,退出代码 0

01
领券