我的网址如下:http://new2.silentdivers.com/links.php?lang=en
什么是SEO freindly URL的最佳方式?需要任何帮助。
lang = en可能是,lang = ge,lang = fr等
答案 0 :(得分:4)
在我看来,最重要的是你需要了解语言应该只基于URL(和/或域)。含义URL我的意思是你的脚本应该只检查url并决定选择哪种语言。许多人误解了它并使用cookie或会话来检查它们并选择语言,这对SEO来说是一个巨大的错误。
制作多语种网站有3种方法。在我看来,根据我作为SEO专家的经验,任何其他人都不会实际上是SEO友好的
方法1
domain.com
domain.com/lang2/
domain.com/lang3/
domain.comm/article
domain.com/lang2/article
domain.com/lang3/article
在此方法中,您始终在域后检查lang前缀。如果没有前缀,则显示默认语言。这是最简单的实施方法,几乎可以在任何地方使用
方法2
domain.com
domain.com/article
lang2.domain.com
lang2.domain.com/article
lang3.domain.com
lang3.domain.com/article
在此方法中,您始终需要检查子域确定语言。优点是您可以为子域名做SEO(许多目录不接受domain.com/lang2/但会接受lang2.domain.com)
方法3
domain.com
domain.com/article
domainforlang2.com
domainforlang2.com/article
domainforlang3.com
domainforlang3.com/article
当您真正需要不同的域时,此方法将用于更大的站点。缺点可能有时很难为每种语言找到好的域名
在上面的例子中,文章可以是任何东西,但事实上这部分也应该被翻译。例如,在英语方法1中,您可以使用domain.com/en/links/和domain.com/pl/linki(linki是英语单词“links”的波兰语翻译)
domain.com也只是一个例子。它可以是domain.net,domain.org或任何其他域。
你必须自己选择方法。对于小型站点,方法1和2就足够了(第二种方法可以更好地进行SEO活动)
修改强>
对于 method1 ,您可以使用此.htaccess:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)(.*)/?$ index.php
在PHP中,您应该简单地检查$_SERVER['REQUEST_URI']
在这种情况下,如果以lang2 /或lang3 /开头,则表示选择的语言,否则设置默认语言。