Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Access denied or empty body

オープン
#209 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
javascript, node.js, redis
領域
backend

調査の方向性

Start by reproducing the 403 or empty-body response with the shown prerender-node middleware, comparing requests with and without the Googlebot user agent. Inspect the beforeRender and afterRender hooks, Redis cache behavior, and the /render?url=https://www.google.com/ path. Done means identifying the failure and restoring a non-empty response with useful error logging.

索引モデルが issue の本文から書いたものです。

説明

Issue: HTTP ERROR 403 - Access denied.
Issue appears during last 3 days, before everything was working fine.

Setup:

  • Server is Linux Ubuntu
  • Local prerender under Node, which is working fine, can access page: /render?url=https://www.google.com/
  • "prerender-node" setup with Redias cache.
  • Assessing website by browsing with googlebot in User agent string.

Deep dive into testing:

  • Website is accessible without googlebot in User agent string.
  • In afterRender event getting empty body for any request url
  • In afterRender error object is null
  • Redis cache is working, even when removing cache mechanism fully, issue persist
  • Files permission is correct and was not changed.
  • When removing app.use(prerender); website again accessible with googlebot in User agent string.
  • Version of packages including "prerender-node" was not released, so nothing to update
  • Version of "google-chrome-stable" checked and updated to latest one - 92.0.4515
  • Reason of this all points is not applicable: [https://docs.prerender.io/article/25-empty-or-partially-rendered-pages](Empty or partially rendered pages) as it is working with url /render?url=https://www.google.com/
  • pageDoneCheckInterval increased up to 20sec to make sure it is not a reason
  • Getting empty body immediately, some some error is happening there, but no any error log, as I have pageDoneCheckInterval: 5000, I should get response in 5 sec, which is not happening.

Ideas what can be a reason:

  • Something got broken in process of Prerender in some dependencies.
  • There is some limit of requested pages per month, but as I use Prerender locally, as I understood it is not limited somehow.
  • Some another crazy reason))

Code prerender section for any case:

// Setup prerender
prerender = require('prerender-node');
prerender.set('protocol', 'https');
prerender.crawlerUserAgents.push('Validator.nu/LV');
prerender.crawlerUserAgents.push('W3C-checklink');
app.use(prerender);

// Setup redis cache
var redis = require("redis"),
	client = redis.createClient();

client.flushdb( function (err, succeeded) {
});

prerender.set('beforeRender', function(req, done) {
	client.get(req.url, done);
}).set('afterRender', function(err, req, prerender_res) {
  if ( prerender_res ) {
    client.set(req.url, prerender_res.body)
  }
});

Anyway this was working previously very long and very stable.

Any idea will appreciated, thanks in advance.

主要言語
JavaScript
スター
921
フォーク
185
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

prerender/prerender-node のほかの issue

prerender/prerender-node の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。