Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Access denied or empty body

Offen
#209 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
javascript, node.js, redis
Bereich
backend

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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.

Vorherrschende Sprache
JavaScript
Sterne
921
Forks
185
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus prerender/prerender-node

Alle Issues in prerender/prerender-node

Ähnliche Issues

Weitere Issues zu JavaScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.