gpt4 book ai didi

angularjs - 如果我的 Apache 服务器不允许代理,如何利用 prerender.io 服务

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:40:09 25 4
gpt4 key购买 nike

有了一个 Angular 应用程序,我想从搜索引擎机器人的 HTML 预呈现中受益。

这是我的 .htaccess 配置:

<IfModule mod_headers.c>
RequestHeader set X-Prerender-Token "My_Token"
</IfModule>

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on

<IfModule mod_proxy_http.c>
RewriteCond %{HTTP_USER_AGENT} baiduspider|facebookexternalhit|twitterbot|rogerbot|linkedinbot|embedly|quora\ link\ preview|showyoubot|outbrain|pinterest|slackbot|vkShare|W3C_Validator [NC,OR]
RewriteCond %{QUERY_STRING} _escaped_fragment_

# Only proxy the request to Prerender if it's a request for HTML
RewriteRule ^(?!.*?(\.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))(.*) http://service.prerender.io/http://example.com/$2 [P,L]
</IfModule>


# Don't rewrite files or directories
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# Rewrite everything else to index.html to allow html5 state links
RewriteRule ^ index.html [L]
</IfModule>

我的问题是涉及代理的 P 标志导致 403 错误:
“您无权访问/”
当我运行以下命令时:
curl http://example.com?_escaped_fragment_=

我没有专用服务器,而是外部共享 Apache 服务器。我联系了这个服务器实例的支持,他们争辩说在共享实例上禁止代理,导致错误 403。

是否有任何解决方法可以在不切换到专用 Apache 服务器的情况下通过 Apache 和 .htaccess 配置来利用 prerender.io?

代理标志是强制性的吗?

最佳答案

代理标志是强制性的,因为重定向会错误地告诉抓取工具将您的用户发送到重定向的站点。

关于angularjs - 如果我的 Apache 服务器不允许代理,如何利用 prerender.io 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35224988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com