在用PHP构建网站时,我发现URL能够包含不属于的额外信息,即
http://www.mydomain.com/index.php/extrainformation
我已经读到它是$_SERVER['PATH_INFO']
的一部分,但需要找到一种方法来阻止这些信息在 Google 搜索结果中显示时显示。我可以通过在 .htaccess 文件中添加条件来防止这种情况吗?
有什么见解吗?
从技术上讲,该信息是有效的URL,即使您的网页忽略了它。因此,如果像谷歌这样的搜索引擎找到一个URL,可能通过一个链接,其中包含额外的信息,并且它拉出一个有效的网页,他们将在他们的结果中显示它。
您可以通过以下几种方式解决此问题:
- 使用规范网址指定正确的网址,而无需额外信息
- 执行 301 重定向到没有垃圾信息的 URL(如果附加到 URL 中)
- 返回错误 (HTTP 40x),指出 URL 无效
这三个都将阻止谷歌将具有此类URL的页面编入索引。
这些看起来像Apache的多视图。将此添加到您的 htaccess 文件中:
Options -MultiViews