reactjs - prerender.io .htaccess 变量 - Reactjs CRA

标签 reactjs .htaccess prerender cra

我为 CRA 设置了 prerender.io 并且它运行良好,但是当机器人点击没有参数的 URL 时,它会放在 URL 的末尾 - 字符串“.var”
enter image description here
我尝试了 (.*) 的变体,但似乎不起作用。有任何想法吗?
这是 .htaccess 文件

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

<IfModule mod_headers.c>
    RequestHeader set X-Prerender-Token "TOKEN"
    RequestHeader set X-Prerender-Version "prerender-apache@2.0.0"
</IfModule>

<IfModule mod_rewrite.c>
    RewriteEngine On
    <IfModule mod_proxy_http.c>
        RewriteCond %{HTTP_USER_AGENT} googlebot|bingbot|yandex|baiduspider|facebookexternalhit|twitterbot|rogerbot|linkedinbot|embedly|quora\ link\ preview|showyoubot|outbrain|pinterest\/0\.|pinterestbot|slackbot|vkShare|W3C_Validator|whatsapp [NC,OR]
        RewriteCond %{QUERY_STRING} _escaped_fragment_
        RewriteCond %{REQUEST_URI} ^(?!.*?(\.js|\.css|\.xml|\.less|\.png|\.jpg|\.jpeg|\.gif|\.pdf|\.doc|\.txt|\.ico|\.rss|\.zip|\.mp3|\.rar|\.exe|\.wmv|\.doc|\.avi|\.ppt|\.mpg|\.mpeg|\.tif|\.wav|\.mov|\.psd|\.ai|\.xls|\.mp4|\.m4a|\.swf|\.dat|\.dmg|\.iso|\.flv|\.m4v|\.torrent|\.ttf|\.woff|\.svg))

        RewriteRule ^(index\.html|index\.php)?(.*) https://service.prerender.io/%{REQUEST_SCHEME}://%{HTTP_HOST}/$2 [P,END]
    </IfModule>
</IfModule>

最佳答案

最近@MrWhite 给了我们另一个更好更简单的解决方案 - 只需添加 DirectoryIndex index.html .htaccess 文件也会这样做。

从一开始我就写了 DirectoryIndex正在工作,但没有!
当您尝试 prerender.io 时,它似乎工作正常,但实际上它显示的网站是这样的:
enter image description here
我不得不删除它。
所以它不是 .htaccess 文件的问题,它来自服务器。
我所做的是进入 WHM->Apache Configurations->DirectoryIndex Priority,我看到了这个列表
enter image description here
是的,就是这样!
为了修复我刚搬家 index.html最上面的第二个是index.html.var在剩下的之后。
不知道是什么index.html.var是为了,但我没有冒险将其删除。希望它可以帮助像我一样挣扎的人。

关于reactjs - prerender.io .htaccess 变量 - Reactjs CRA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67439746/

相关文章:

javascript - React 找不到 Material UI 组件的导入

javascript - 可选链接在 create-react-app 中不起作用

reactjs - 我是否需要 Azure AD 应用程序才能将 Power BI 报告嵌入到我自己的应用程序中?

.htaccess - Htaccess domain.com 到 www.domain.com 有效,但它失去了与 SEO 相关的其他规则

node.js - 最佳实践 : Angular SSR Partial Pre-rendering with dynamic fallback

javascript - 如何检测请求是来自 prerender.io(爬虫)还是来自 JavaScript 中的真实用户(浏览器)?

javascript - 在 React Native 中根据状态更新 tabBarLabel

php - SEO 友好的 .htaccess RuleRewrites

html - 如何使用 htaccess 重定向 html 扩展?

javascript - 预渲染 HTTPS 可选站点