jay*_*ani 5 html javascript php jquery angularjs
首先让我告诉你我想做什么。
我想索引我的用Angular JS制作的网站,为此,我已经阅读了Google出于这种目的的所有文档或文章。
我发现的是:
我需要使用html5Mode或hashbag模式将我的有角js网址转换为友好网址。
喜欢:http://www.example.com/#/about到http://www.example.com/#!/about或只是http://www.example.com/about
使用 <meta name="fragment" content="!">
因此,当任何爬虫程序会出现在我的网站上Googlebot时,它就会出现,并且它将看到我的网址,http://www.example.com/?_escaped_fragment_=/about因此现在我需要将此请求提供给静态html页面。...对吗?
现在我的问题是我如何才能使用php框架生成此html静态页面,并且该html仅在其内容完全加载后才自动创建,这意味着如果angular js使用$ http请求加载数据,则该html仅在所有数据加载后才会生成在html模板中。
仅当可以自动生成此html时,我才能将其提供给搜寻器。
我已经通过手动创建一些html页面在本地进行了测试,并检查请求是否带有_escaped_fragment_参数,然后它将服务于该特定的静态html页面。
但是我无法为此找到方法,我将使用php框架为特定的角度js请求创建html页面。
我不想使用任何npm服务。我想在php和/或任何中完全创建它jQuery Plugin。
除了需要将转义片段请求重定向到服务器之外,服务器在渲染各种视图后拍摄 HTML 快照,然后将其提供给 Googlebot 等,不要忘记您还需要一个设置您现有的 Web 服务器(例如 Apache 或 IIS)重定向到处理转义片段的新服务器。
我很高兴您正在寻找 PHP 解决方案,并且不想使用像 prerender 或 seoserver 包这样的 NPM,但我想以您的方式提供一种替代且更简单的解决方案:使用现有的托管解决方案,例如 https : //www.seo4ajax.com/或https://prerender.io/代替。他们将为您托管一个 SEO 服务器,可以抓取您的网站,通常这是免费的,除非您有一个超过数百页的大型数据驱动网站。减少您的负载,无需运行另一台服务器,并且您可以获得一些不错的管理面板来查看哪些爬虫已命中 SEO 重定向等。
一般来说,您需要在您提到的 HTML 中使用元标记,并在 AngularJS 配置中使用这些设置:
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix('!');
Run Code Online (Sandbox Code Playgroud)
然后是一些自定义重定向设置,例如在 .htaccess 文件中(如果您现有的服务器是 Apache),这些站点将为您提供这些设置,您可以复制和粘贴。
| 归档时间: |
|
| 查看次数: |
375 次 |
| 最近记录: |