Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为你的网站(谷歌机器人…)编制索引的蜘蛛有“蜘蛛”吗;文化;?_Php_Seo_Internationalization_Web Crawler - Fatal编程技术网

Php 为你的网站(谷歌机器人…)编制索引的蜘蛛有“蜘蛛”吗;文化;?

Php 为你的网站(谷歌机器人…)编制索引的蜘蛛有“蜘蛛”吗;文化;?,php,seo,internationalization,web-crawler,Php,Seo,Internationalization,Web Crawler,这是一个SEO问题: 我可以根据访问者的文化选择显示页面标题 如果是英语: <title> <?php if ($sf_user->getCulture() == 'en') : ?> Hello, this is an english website <?php else ?> Bonjour, ceci est un site français <?php endif ?> </title>

这是一个SEO问题:

我可以根据访问者的文化选择显示页面标题

如果是英语:

<title>
  <?php if ($sf_user->getCulture() == 'en') : ?>
     Hello, this is an english website
  <?php else ?>
     Bonjour, ceci est un site français
  <?php endif ?>
</title>

机器人在您设置的默认本地化中查看页面,因为它没有登录。(您的页面如何知道哪个访问者来自哪个国家?如果您愿意,您可以使用地理ip查找进行黑客攻击)


您的网站在访客中如何显示为未注册?

谷歌机器人在没有任何登录或注册的情况下为其在您的网站上找到的语言编制索引。因此,如果网站的默认视图是英语,那么谷歌索引中只有英语内容。提供有关如何对站点进行爬网的更多背景信息

关键是在你的网站上提供链接,机器人可以跟随链接,从而引导它以各种语言访问你的内容


回答您的问题,不,谷歌机器人将没有文化,因为这取决于您的应用程序和用户在应用程序中的偏好。

请参阅。处理多种语言的最佳方法不是动态返回不同的语言,而是为每种语言提供不同的域或不同的URL。如果您想给访问者一个登陆页面,请考虑将该页面重定向到特定于语言的页面。此外,为了最大限度地提高爬行,考虑有一个链接,允许用户切换到同一页面的不同语言版本。

这取决于他们预览的浏览器语言:如果你什么都不是法语,你会看到这个网站在英语中,如果你是法国人,你会在法语中看到它。我说的是未登录的usersSo,symfony是从用户代理字符串推断出来的,还是它是如何在服务器端获得此设置的?我还没有找到这方面的信息。事实上,他在两种语言中做出选择:第一次访问时查看:/:culture=$request->getPreferredCulture(array('en','fr')$此->getUser()->setCulture($culture)$此->getUser()->isFirstRequest(false);Symfony说getPreferredCulture()基于
HTTP\u ACCEPT\u语言
HTTP头工作。我不能肯定机器人是否会发送这个。我的浏览器似乎没有。那么,有没有办法知道蜘蛛会用什么语言看到我的网站?只有英语?只有在fr中?两者都有OI已经有了不同的URL:一旦你进入我的网站,它就会通过询问你的浏览器它是用哪种语言设置的来猜测你的语言。我的URL是这样的:www.example.com/en/article/id www.example.com/fr/article/id我有两个域,一个在.fr,一个在.com,我想我会将.fr重定向到.com,以便任何人使用.com,这是个坏主意吗?(我不认为我会用一个表示英语,另一个表示法语……我想……)好的,谢谢你的文章帮助我回答了关于重复内容的最后一个问题。但我仍然不知道蜘蛛会用什么语言看到我的网站。@Tristan:我讨厌网站自动决定我应该看什么语言。无论您选择哪种语言,都要允许用户决定使用哪种语言。多语言网站的各个部分经常不同步,结果是某些内容只能以一种语言提供,而不能以另一种语言提供。自动重定向可以有效地防止用户查看他们正在查找的页面,并导致页面的非自愿隐藏(SEs看到一个页面,用户看到另一个页面)。不要重定向。检测并提出建议。“Afficher la version française du site?”@Tristan:此外,你不能假设浏览器的语言和用户的语言是相同的。例如,你有没有去过国外的网吧?地理位置和浏览器语言允许您猜测用户语言是什么,但这只是猜测。你真的不知道,一个错误的猜测变成了一场完全的可用性噩梦。如果你在国外时曾试图在航空公司网站上预订机票,你就会明白为什么无声重定向是一个非常糟糕的主意。好吧,浏览器的语言是最好的选择,而不是询问用户。。。您可以默认使用浏览器的语言,并让用户选择更改语言。Skype.com做到了这一点,并使其易于更改。谷歌真的很讨厌,因为它默认使用geo-IP。不,这不是用户的偏好,这就是为什么我问蜘蛛会用什么语言看到它:p
<?php $culture = $request->getPreferredCulture(array('en', 'fr')); 
    $this->getUser()->setCulture($culture); 
    $this->getUser()->isFirstRequest(false); ?>