我们不能SEOMern堆栈应用程序和reactjs应用程序吗?



我是一个开发新手,我最近创建了一个MERN堆栈应用程序,它使用reactjs作为前端,Nodejs作为后端,MongoDB作为数据库。之后,我搜索了一些方法来优化这个应用程序。但是在互联网上的许多文章中,他们提到我们不能SEO Reactjs应用程序,相反,我们需要实现SSR(服务器端渲染)。现在我有以下几个问题。有人能解释一下吗?

  1. 我们可以将现有的MERN应用程序升级到NextJs吗?
  2. 是否有其他方法来优化这个MERN应用程序?
  3. 所以我必须阻止使用React作为我未来项目的前端吗?相反,我是否需要在我未来的项目中使用Nextjs ?如果是这样,reactjs是无用的吗?

谢谢。

Surjeet很好地回答了你的第一个问题。回答你的第二个和第三个问题,有一些工具,比如React Router和React Helmet,可以为React项目添加一些SEO。这里有一篇很有帮助的文章:

https://medium.com/@prestonwallace 3-ways-improve-react-seo-without-isomorphic-app-a6354595e400

快速总结一下,React Router将允许你为每个新路由生成一个uri。React Helmet会在组件的头部创建元数据标签,比如标题或页面描述,然后googlebot就可以拾取这些标签。

是的,您不能执行react应用程序的SEO。你必须使用SSR

回答你的问题:

1。可以将现有的MERN应用程序升级到NextJs吗?

  • 可以但这是一个漫长的手工过程。所有的组件都可以直接使用。有很多东西需要修改:

    • 路由(NextJs有不同的路由方式)
    • 样式导入方式
    • 运行package.json脚本
    • 如果你使用过浏览器的东西,如windowobject,localStorage那么你必须处理这些在SSR
    • 在运行应用程序时可能会遇到其他问题

2。是否有其他的方法来优化这个MERN应用程序?

  • 否,必须使用SSR

3。我是否必须阻止在未来的项目中使用React作为前端?相反,我是否需要在我未来的项目中使用Nextjs ?如果是这样,reactjs是无用的吗?

  • 如果SEO是必须的,你想要SSR(例如:电子商务网站,个人网站),使用NextJs
  • 如果没有SEO,使用React(例如:管理面板,特定的基于用户的Web应用程序)

相关内容

最新更新