【问题标题】:URL problems with swfAddress, mod_rewrite and SEOswfAddress、mod_rewrite 和 SEO 的 URL 问题
【发布时间】:2011-02-12 06:02:14
【问题描述】:

大家好,我有一个完整的带有深度链接的 Flash 网站,我正在开发一个 php 脚本,该脚本将在页面上动态生成替代内容。

我无法让 swfaddress 的 SEO 版本工作,所以我正在尝试另一种方式。

到目前为止它是这样工作的 - 我的可抓取链接是这样的:

mydomain.com?id=video -----> 改写为:mydomain.com/video/

php 脚本读取 id 并准备适当的内容。问题是,当用户点击 flash 内容时,他们的 url 显示如下:

mydomain.com/video/#contact,
mydomain.com/video/#about-us
等等等等

这令人困惑。有没有办法用 PHP 或 javascript 摆脱 uri 路径中的“/video/”?有什么想法或不可能吗?

【问题讨论】:

  • 如果你有完整的 Flash 网站,它已经对 SEO 不友好,没有 url 会有所帮助
  • 这是常见的误解。我问的不是 Flash 问题,我问的是 php 和 mod_rewrite。
  • 哦,是的。而且更糟。我会说相互排斥。 mydomain.com/video/ 是一个 SEO 链接。所以你已经有了。所以,实际上你的问题是关于如何摆脱 SEO 链接。你真的知道你在做什么吗?
  • 我已经编辑了我的问题,使其更清晰一些。我正在尝试确定是否可以使用 js 或 php 在 URI 中关闭或隐藏目录。我认为这可能是不可能的,也许有一种解决方法......比如使用会话变量来存储页面 ID(例如 id=video)并刷新到根路径?
  • 您的大部分问题都没有得到解答,哈哈。这是一个标志。如果你做错了什么,开始思考的理由。而你是。你要求的这种重写是没有意义的。去图吧。

标签: php mod-rewrite seo uri swfaddress


【解决方案1】:

致任何可能与我处于相同位置的人;努力理解 Asual 的 swfAddress SEO 解决方案我得出了一个令人满意的结论。

我使用了单个 index.php 和支持 datasource.php,其中包含 switch 语句中的所有结果。 switch 语句首先在 index.php 中调用,并通过从通过 GET 发送的 id(例如?id=video)收集以下信息来运行。然后 switch 语句继续匹配适当的内容,为脚本的其余部分设置变量以供使用。我使用了以下内容:

$title
$description
$keywords
$canonical // hint: -> 'domain/video?id=somevid' to 'domain.com/video/' (see canonical in google)
$stylesheet
$body

在datasource.php之后,我在它下面包含一个“head.php”,它获取html滚动,doctype等(但主要关注

)并列出关键字,描述和内容,具体到那个页面。

Swfaddress javascript 将为 Flash 用户设置深度链接:

SWFAddress.setValue(< ?php echo "/$id" ?>); // eg."/video"

index.php 使用 swfobject 嵌入 - 我使用静态嵌入(我在某处听说它对 SE 更好,更多未来证明,但谁知道呢,不过我更喜欢它)。替代内容是一个 div,它与之前提取的存储的 $body 相呼应。

最后我使用 mod_rewrite 来设置我的可抓取链接。在测试期间,我直接引用我的文件。

< IfModule mod_rewrite.c >
Options +FollowSymLinks
Options +Indexes
RewriteEngine On
RewriteBase /

RewriteRule ^home/? ?id=home [NE,L]
RewriteRule ^about/? ?id=about [NE,L]
RewriteRule ^video/? ?id=video [NE,L]

这确保我的链接看起来像这样:http://www.mydomain.com/video/

结果:http://mydomain.com?id=video

搜索引擎可以完美地抓取它,只查看用户会看到 flash 的 html 内容,当他们点击链接时,他们会看到如下内容:

http://www.mydomain.com/video/#/contact

正如我所说,它令人满意,不如 Asual 的 SEO 解决方案理想,但足够干净。我在任何地方都找不到关于 swfaddress 的 SEO 示例的任何信息,而且我当然没有足够的 php 知识来深入研究大量未注释的代码。

哦,一定要把它包含在你的 index.php 的头部,它会确保你的链接不会在你的 swfs 加载外部文件时搞砸。

&lt; base href="http://www.mydomain.com/" /&gt;

希望能在某个时候对某人有所帮助。

【讨论】:

    猜你喜欢
    • 2011-05-16
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    相关资源
    最近更新 更多