0

我在根示例中创建了文件夹:http ://www.zipholidays.co.uk/Cuba或http://www.zipholidays.co.uk/Florida

当我输入http://www.zipholidays.co.uk/cuba(小写立方体)时,它显示找不到页面。

我正在使用 Apache 服务器。人们正在链接到小写、大写、混合大小写的页面——不管怎样。我该怎么做才能使页面不区分大小写?

4

5 回答 5

3

mod_spelling 也许?mod_spelling

于 2009-09-25T11:43:25.717 回答
2

如果您使页面不区分大小写,则会出现一些重复的内容问题,因为您将拥有两个具有相同内容的页面。

一个好的解决方案是在存在小写等效项时在每个 404 页面上执行一些 301 重定向。

例如,在您的 404 默认页面中,您输入:

<?php
    $lower = strtolower($_SERVER['REQUEST_URL']);
    if (file_exists(PATH_TO_YOUR_APPLICATION . $lower) {
        header('location: ' . $lower, true, 301);
        die();
    }
?>

因此,当您加载 404 页面时,如果存在相同的小写 url,则重定向到那里。否则,您可以显示自己缺少的页面内容。

于 2009-09-25T11:43:18.510 回答
2

我不会让我的 URL 不区分大小写。相反,我会遵循创建此类 URL 的严格指南。例如,我将只使用小写 URL 路径,并将带有大写字母的 URL 路径的请求重定向到小写变体。

你甚至可以用mod_rewrite做到这一点(需要重写映射到内部tolower函数):

RewriteCond %{tolower:%{REQUEST_URI}} .+
RewriteRule ^[^A-Z]*[A-Z] %0 [L,R=301]
于 2009-09-25T13:36:51.370 回答
0

也许您可以将 linux for windows 替换为服务器操作系统。

Linux 上的 Apache 在文件路径中区分大小写,在 URI 中也是如此。Windows 文件系统不区分大小写,因此在那里没有关系。

于 2009-09-25T11:42:47.387 回答
-1

你不需要这样做。因为谷歌会认为你的网站上有重复的页面,会禁止你。这是SEO科学的规则。

于 2012-01-05T06:24:00.027 回答