【发布时间】:2015-07-16 12:11:32
【问题描述】:
我有一个 angularjs 网站,其中包含几篇文章。
我希望我的用户能够通过各种社交网络分享他们的文章。
我正在使用一个名为 angularjs-socialshare 的 angularjs 插件。基本上,系统调用共享端点提供要共享的 url:
例如
http://www.linkedin.com/shareArticle?mini=true&url=http://www.google.com
现在,由于我的内容是通过 angularjs 动态加载的,这将显示类似 {{ description }} 和 {{ title }} 的内容
为了解决这个问题,我有一个执行 javascript 并向机器人提供静态 html 页面的 phantomjs 服务器。这是我用来告诉机器人请求的 htaccess(顺便说一句,这里也欢迎任何提示)。
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !\.(gif|jpg|png|ico|ico)$
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=/?(.*)$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*pinterest.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*linkedin.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*slack.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*facebook.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*google.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*yahoo.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*bing.*$
RewriteRule ^(.*)$ http://localhost:27366/$1 [P,L]
http://localhost:27366/$1 只是 phantomjs 服务器。
现在,Facebook 和 Google 都可以正常工作。 LinkedIn虽然没有,它要么停留在加载中,要么只显示页面的url。 我尝试查找一些文档,但每个答案都引用旧文档(其中 404s ),现在我迷路了。
编辑:
对不起,我在一段时间后重新阅读后发现这个问题没有多大意义。已编辑。
我写这个问题是出于有点沮丧,但我意识到我可能应该尝试联系在linkedin工作的人以了解发生了什么。
如果我找到解决方案,我会确保在这里更新以供将来参考
【问题讨论】:
-
您的实际问题是什么? what 是如何工作的?您在这里显示的只是一个 htaccess 文件,您没有显示任何代码来说明您正在尝试做什么。您是在使用某种库,还是对 api 进行查询?这里没有什么是显而易见的。
-
从表面上看,这看起来更像是一个关于 phantomjs 的问题,而不是关于 Angular 的问题;根本没有任何角度代码。