以前尝试过《Drupal系列网站用robotstxt模块生成独立robots.txt》,可以实现多站点的每个站点都有不同的robots.txt,但缺点是需要逐个编辑,当子站数量多、修改次数多的时候,依然显得麻烦。 后来也尝试过程序动态生成robots.txt,但一直没有成功,昨天还尝
以前尝试过《Drupal系列网站用robotstxt模块生成独立robots.txt》,可以实现多站点的每个站点都有不同的robots.txt,但缺点是需要逐个编辑,当子站数量多、修改次数多的时候,依然显得麻烦。
后来也尝试过程序动态生成robots.txt,但一直没有成功,昨天还尝试了在自定义module中编写,但显示的内容包含在html.tpl.php, page.tpl.php等模板之中,也不行。
再多查了一些网上的资料并反复测试,终于是可以实现了,步骤如下:
- 删除原来的robots.txt;
- 编写一个robots.php,用PHP程序来动态输出内容;
- 修改.htaccess,让用户访问robots.txt的时候重定向到robots.php的输出内容。
一个robots.php的例子:
<?php header("Content-Type: text/plain"); $server_name=$_SERVER['SERVER_NAME']; $output=" # jamesqi 2013-8-29 16:27 # Add Start # Sitemap: http://$server_name/sitemap.xml Sitemap: http://$server_name/rss.xml User-agent:Mediapartners-Google Disallow: User-agent: * Allow: /sites/default/files/ Disallow: /boost_stats.php # Add End # Crawl-delay: 10 # Directories Disallow: /includes/ Disallow: /misc/ Disallow: /modules/ Disallow: /profiles/ Disallow: /scripts/ Disallow: /themes/ # Files Disallow: /CHANGELOG.txt Disallow: /cron.php Disallow: /INSTALL.mysql.txt Disallow: /INSTALL.pgsql.txt Disallow: /INSTALL.sqlite.txt Disallow: /install.php Disallow: /INSTALL.txt Disallow: /LICENSE.txt Disallow: /MAINTAINERS.txt Disallow: /update.php Disallow: /UPGRADE.txt Disallow: /xmlrpc.php # Paths (clean URLs) Disallow: /admin/ Disallow: /comment/reply/ Disallow: /filter/tips/ Disallow: /node/add/ Disallow: /search/ Disallow: /user/register/ Disallow: /user/password/ Disallow: /user/login/ Disallow: /user/logout/ # Paths (no clean URLs) Disallow: /?q=admin/ Disallow: /?q=comment/reply/ Disallow: /?q=filter/tips/ Disallow: /?q=node/add/ Disallow: /?q=search/ Disallow: /?q=user/password/ Disallow: /?q=user/register/ Disallow: /?q=user/login/ Disallow: /?q=user/logout/ "; print $output; ?>
在.htaccess中定义的ReWrite规则:
RewriteCond %{REQUEST_URI} ^\/robots\.txt$ RewriteRule ^(.*)$ /robots.php [L]
先在我的博客中测试成功,电脑版、手机版分别是不同的robots.txt内容:
- http://jamesqi.com/robots.txt
- http://m.jamesqi.com/robots.txt
其中的Sitemap提交给搜索引擎的是各自的sitemap地址。
以后可以把这个办法实现到各个系列的网站中去。
?
自由标签:
- robots.txt
- PHP
- 程序
原文地址:动态生成robots.txt的PHP程序, 感谢原作者分享。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境