Php 允许谷歌只访问一个文件夹,并阻止网站的其余部分

Php 允许谷歌只访问一个文件夹,并阻止网站的其余部分,php,apache,.htaccess,mod-rewrite,url-rewriting,Php,Apache,.htaccess,Mod Rewrite,Url Rewriting,编辑:用robots.txt这样做对我来说不够好 这段代码会阻止整个网站访问谷歌。我不知道如何保持这个代码的功能,但允许谷歌访问网站上的一个文件夹 RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} Googlebot [OR] RewriteRule ^(.*)$ - [F,L] 如果我有两个条件,这是否有效 Options +FollowSymLinks -MultiViews # Turn mod_rewrite o

编辑:用robots.txt这样做对我来说不够好

这段代码会阻止整个网站访问谷歌。我不知道如何保持这个代码的功能,但允许谷歌访问网站上的一个文件夹

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteRule ^(.*)$ - [F,L]
如果我有两个条件,这是否有效

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteCond %{HTTP_USER_AGENT} yahoo [OR]
RewriteCond %{REQUEST_URI} !^/allowed-folder/ [NC]
RewriteRule ^ - [F,L]

按照注释中的建议,在文档根目录下创建一个文件
robots.txt
,包含以下内容:

User-Agent: googlebot
Disallow: /
Allow: /allowed-folder/
如果您确实想通过mod_rewrite处理此问题,请通过
httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放入
文档根目录下的
.htaccess
中:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_USER_AGENT} Googlebot [NC]
RewriteCond %{REQUEST_URI} !^/allowed-folder/ [NC]
RewriteRule ^ - [F,L]

创建名为robots.txt的文件

插入

User-agent: *
Disallow: /folder you dont wont google inside in/
Disallow: /other folder you dont wont google inside in/

请看robots.txt文件,而不是
robots.txt
是好的,
robots.txt
服从我们,
robots.txt
有一个永远不会受伤的闪亮的屁股。用robots.txt这样做对我来说不够好。用htaccess也不行,如果有一天你切换到另一个Web服务器,你会头疼这就是为什么我想两者兼而有之。你知道如何使用htacess吗,我只是不希望谷歌能够阅读我的内容。让他知道如果他切换Web服务器,
.htaccess
将带来的麻烦…@iamnot拖延:同意在
robots.txt
中处理这项任务更干净。htaccess可以,我只是想知道如果我有两个条件,代码是什么——例如:1)RewriteCond%{HTTP\u USER\u AGENT}Googlebot[NC]和2)RewriteCond%{HTTP\u USER\u AGENT}Yahoo[NC]@Zox我为你的上述两个选项都提供了,
robots.txt
是我个人对这项任务的偏好。我将使用这两个选项,然而,机器人并不能很好地工作,因为我根本不希望谷歌阅读我的内容。