Einige Seiten sind vom Oneboxing blockiert

Seit dem Update am 4. Mai habe ich ein Problem mit der Vorschau von Onebox-Nachrichten. Nicht alle Hyperlinks können erfolgreich eine Vorschau-Box erstellen.

Diese Hyperlinks funktionieren jedoch bis heute auf Meta einwandfrei. Erst heute habe ich einen Hyperlink mit einem ähnlichen* Problem auf Meta gefunden.
*anderer Fehlercode

Bitte geben Sie eine Empfehlung ab. Vielen Dank für die Hilfe.

https://medium.com/swlh/5-free-python-courses-for-beginners-to-learn-online-e1ca90687caf

1 „Gefällt mir“

Ich habe versucht, diesen Link auf meinem Forum zu Oneboxen und habe das gleiche Ergebnis erhalten.
Ich habe das sofort bemerkt, als ich mir den Link angesehen habe. Er hat zwei Ausnahmen zurückgegeben. Der Link kann deshalb nicht Oneboxed werden. Deshalb haben wir diese Nachricht im Onebox erhalten.

1 „Gefällt mir“

@jamie.wilson untersucht Probleme mit Medium-Oneboxes, eine Lösung ist in Arbeit.

4 „Gefällt mir“

Ja, das sieht nach demselben Problem aus, das einen 500-Fehler verursacht. Haben wir das angegangen, @jamie.wilson?

3 „Gefällt mir“

Der von @SkyLin bereitgestellte Link zeigt erneut eine Onebox:

https://medium.com/swlh/5-free-python-courses-for-beginners-to-learn-online-e1ca90687caf

Es scheint, als hätte Medium auf ihrer Seite einige Änderungen vorgenommen, die Schwachstellen in unserer Onebox-Generierung aufgedeckt haben. Diese Probleme wurden nun auf unserer Seite behoben und in den Code übernommen, was Oneboxing allgemein robuster macht (und nicht nur für Medium).

4 „Gefällt mir“

Dieses Problem wurde nach dem Update behoben. Vielen Dank!

Comparing bbb44698...a24b6daa · discourse/discourse · GitHub

Aber mein ursprüngliches Problem* besteht weiterhin. Gibt es weitere Schritte, die ich unternehmen kann, um dies zu lösen? Nochmals vielen Dank.

*Onebox funktioniert auf Meta einwandfrei, schlägt aber auf meiner Seite für dieselbe URL fehl:

1 „Gefällt mir“

Ich habe gerade alle drei deiner Links ausprobiert – den für Medium und die beiden für Udemy – sowohl auf meiner Website als auch hier auf Meta. Alle drei wurden sowohl auf meiner Website als auch hier auf Meta einwandfrei als Onebox dargestellt.

2 „Gefällt mir“

Danke für die freundlichen Informationen.

Ich habe die Methode aus Amazon Onebox schlägt auf meiner Site fehl, funktioniert aber hier ausprobiert und erhielt bei Udemy den Fehlercode 403. Ich habe sogar eine Site mit einem alten Backup geklont, und dort tritt das gleiche Problem auf. Ich frage mich, ob andere Gründe das Problem verursachen, zum Beispiel Einstellungen?

Bitte geben Sie einen Rat. Danke für die Hilfe.

root@localhost:~# curl https://www.udemy.com/course/certified-kubernetes-application-developer/ -o deleteme.html --verbose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:-- 0* Trying 2606:4700::6810:4255:443... * TCP_NODELAY set
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--  0* Connected to www.udemy.com (2606:4700::6810:4255) port 443  (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [19 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [3726 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [264 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: C=US; ST=California; L=San Francisco; O=Udemy, Inc.; CN=*.udemy.com
*  start date: Sep 10 15:45:40 2020 GMT
*  expire date: Oct 12 15:45:40 2021 GMT
*  subjectAltName: host "www.udemy.com" matched cert's "*.udemy.com"
*  issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign RSA OV SSL CA 2018
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x55ba70848e10)
} [5 bytes data]
> GET /course/certified-kubernetes-application-developer/ HTTP/2
> Host: www.udemy.com
> user-agent: curl/7.68.0
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 256)!
} [5 bytes data]
< HTTP/2 403
< date: Sat, 15 May 2021 09:15:50 GMT
< content-type: text/plain; charset=UTF-8
< content-length: 16
< x-frame-options: SAMEORIGIN
< cache-control: private, max-age=0, no-store, no-cache, must-revalidate, post-c                                                                             heck=0, pre-check=0
< expires: Thu, 01 Jan 1970 00:00:01 GMT
< cf-request-id: 0a10e892d400000ac0a696a000000001
< expect-ct: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-c                                                                             gi/beacon/expect-ct"
< set-cookie: __cf_bm=b04492251e1a16bfdad619155f03441f5707d134-1621070150-1800-AS6cROKp+jLfN9ubIJem+TuX5dANVYbshBzqeRTZhheBx6lOtfM8RPRDSGDLEObLD8tWwjbrp+D5Sh4RcCTXGNw=; path=/; expires=Sat, 15-May-21 09:45:50 GMT; domain=.udemy.com; HttpOnly; Secure; SameSite=None
< x-content-type-options: nosniff
< server: cloudflare
< cf-ray: 64fb4397bea70ac0-NRT
<
{ [16 bytes data]
100    16  100    16    0     0     10      0  0:00:01  0:00:01 --:--:--    10
* Connection #0 to host www.udemy.com left intact

1 „Gefällt mir“

Woher kommt das? 1970? Das ist schon über 50 Jahre her.

2 „Gefällt mir“

Stammt aus der Antwort dieses Befehls:

curl https://www.udemy.com/course/certified-kubernetes-application-developer/ -o deleteme.html --verbose

1 „Gefällt mir“

Und hier kommt die Antwort von Amazon mit dem Fehlercode 503.

root@localhost:~# curl https://www.amazon.com/Deep-Learning-Python-Francois-Chollet/dp/1617294438 -o deleteme.html --verbose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 162.219.225.118:443...
* TCP_NODELAY set
* Connected to www.amazon.com (162.219.225.118) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [19 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [4447 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [264 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=www.amazon.com
*  start date: Apr 26 00:00:00 2021 GMT
*  expire date: Apr 25 23:59:59 2022 GMT
*  subjectAltName: host "www.amazon.com" matched cert's "www.amazon.com"
*  issuer: C=US; O=DigiCert Inc; CN=DigiCert Global CA G2
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x55993f5fae10)
} [5 bytes data]
> GET /Deep-Learning-Python-Francois-Chollet/dp/1617294438 HTTP/2
> Host: www.amazon.com
> user-agent: curl/7.68.0
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [177 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
< HTTP/2 503
< server: Server
< date: Mon, 17 May 2021 01:37:18 GMT
< content-type: text/html
< strict-transport-security: max-age=47474747; includeSubDomains; preload
< x-amz-rid: 72RYS75V0EMTMX4RK38T
< vary: Content-Type,Accept-Encoding,X-Amzn-CDN-Cache,X-Amzn-AX-Treatment,User-Agent
< last-modified: Wed, 30 Sep 2020 23:54:00 GMT
< etag: "a6f-5b0909d09d600"
< accept-ranges: bytes
< content-length: 2671
<
{ [1139 bytes data]
100  2671  100  2671    0     0   3604      0 --:--:-- --:--:-- --:--:--  3599
* Connection #0 to host www.amazon.com left intact
root@localhost:~#

Eine Sache noch: Die Onebox-Vorschau für Amazon funktioniert jetzt nach Jamies Update-Code einwandfrei. Die Vorschau vor dem Update finden Sie in diesem Bild:

1 „Gefällt mir“

Gut mit dem Amazon-Link. Funktionieren die Udemy-Links jetzt, oder bekommst du immer noch eine 403-Fehlermeldung? Bei mir gibt es weiterhin keine Probleme, diese direkt einzubetten.

1 „Gefällt mir“

Vielen Dank noch einmal.

Alle Udemy-Links auf meiner Seite sind fehlgeschlagen.

Ich habe gerade ein anderes Forum auf Discourse-Basis ausprobiert und denselben Fehlercode 403 festgestellt.

Forum-Website: https://forum.quantifiedself.com/

Test 1: OK
Amazon Amazon.com

Test 2: NG mit Fehlercode 500. Ich vermute, diese Seite wurde noch nicht auf die neueste Version aktualisiert.
Medium https://medium.com/swlh/5-free-python-courses-for-beginners-to-learn-online-e1ca90687caf

Test 3: NG, derselbe Fehlercode 403, genau wie bei mir.
Udemy https://www.udemy.com/course/certified-kubernetes-application-developer/

1 „Gefällt mir“

Ich habe alle mir bekannten Discourse-basierten Seiten getestet, das Ergebnis sieht wie folgt aus:

onebox Site 1 Site 2 Site 3 Site 4 Site 5 Site 6 Site 7 Site 8
Amazon OK OK OK OK OK OK OK OK
Medium OK NG OK NG NG OK NG NG
Udemy NG NG OK OK OK OK NG OK
Standort* Tokio Kalifornien Kalifornien Kalifornien Kalifornien Paris Kalifornien England
Irland Virginia Chicago
Afrika Alaska
*getestet mit Check host

Site 1. https://vip.studycamp.tw/
Site 2. https://forum.quantifiedself.com/
Site 3. https://discussions.udacity.com/
Site 4. https://forum.uipath.com/
Site 5. https://forums.envato.com/
Site 6. https://rideabl.es/
Site 7. https://blenderartists.org/
Site 8. https://se23.life/

4 „Gefällt mir“

Du hast Glück, denn nur amazon.com funktioniert. Bei allen anderen Amazon-Seiten funktioniert die Onebox-Vorschau nicht.

2 „Gefällt mir“

Die Websites, die Sie testen, blockieren möglicherweise den Curl-Benutzeragenten. Der Oneboxing-Prozess verwendet je nach URL, die Sie Oneboxen möchten, den Benutzeragenten eines echten Browsers. Im Moment verwendet er in solchen Fällen folgenden Benutzeragenten:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15

Versuchen Sie, Ihre Curl-Tests mit der Option -A auszuführen. Zum Beispiel:

curl -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15" https://www.udemy.com/course/certified-kubernetes-application-developer/ -o deleteme.html --verbose

Was ist das Ergebnis dieses Befehls auf Ihrer Seite?

Falls es immer noch fehlschlägt:

  1. Haben Sie eine ungewöhnlich große Anzahl von Oneboxing-Anfragen an diese Websites gesendet? Möglicherweise wurden Sie von den betreffenden Websites vorübergehend blockiert, und die Dinge funktionieren nach einer angemessenen Wartezeit wieder (dies liegt bei den Betreibern der Websites, und leider können wir von unserer Seite nichts dagegen unternehmen).

  2. Wo befindet sich Ihr Server? Haben Sie Zugriff auf eine Maschine an einem anderen Standort, von der aus Sie Tests durchführen? Selbst das Testen von Ihrem persönlichen Computer anstelle Ihres Produktions-Servers könnte zu anderen Ergebnissen führen.

4 „Gefällt mir“

Danke für den Rat.

Der Rückgabecode ist immer noch 403:

root@localhost:~# curl -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15" https://www.udemy.com/course/certified-kubernetes-application-developer/ -o deleteme.html --verbose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 2606:4700::6810:4155:443...
* TCP_NODELAY set
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0* Connected to www.udemy.com (2606:4700::6810:4155) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [19 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [3726 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [264 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: C=US; ST=California; L=San Francisco; O=Udemy, Inc.; CN=*.udemy.com
*  start date: Sep 10 15:45:40 2020 GMT
*  expire date: Oct 12 15:45:40 2021 GMT
*  subjectAltName: host "www.udemy.com" matched cert's "*.udemy.com"
*  issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign RSA OV SSL CA 2018
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x5591c76d8e10)
} [5 bytes data]
> GET /course/certified-kubernetes-application-developer/ HTTP/2
> Host: www.udemy.com
> user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 256)!
} [5 bytes data]
< HTTP/2 403
< date: Mon, 17 May 2021 23:59:37 GMT
< content-type: text/plain; charset=UTF-8
< content-length: 16
< x-frame-options: SAMEORIGIN
< cache-control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
< expires: Thu, 01 Jan 1970 00:00:01 GMT
< cf-request-id: 0a1e5e6b920000952193363000000001
< expect-ct: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
< set-cookie: __cf_bm=3224e014d6b0b4eca1cf8a59c6c180928b2ffa0f-1621295977-1800-AU4UK/k3sl61kbMPYizcsl1TI7NAHkvE1mfjoKIPdrvGAJJeYUF8e72hQljXNwVTO+BcqfsAXxoiQDEy1cL+aVA=; path=/; expires=Tue, 18-May-21 00:29:37 GMT; domain=.udemy.com; HttpOnly; Secure; SameSite=None
< x-content-type-options: nosniff
< server: cloudflare
< cf-ray: 6510ccf28d0a9521-NRT
<
{ [16 bytes data]
100    16  100    16    0     0     10      0  0:00:01  0:00:01 --:--:--    10
* Connection #0 to host www.udemy.com left intact

Ja, das habe ich. Aber die Klon-Seite hat seit mehr als 20 Tagen keine Inhalte mehr veröffentlicht und hat das gleiche Problem.

Außerdem haben laut der Testtabelle, die ich gestern erwähnt habe, die Seiten 2 und 7 das gleiche Problem, und ich glaube, es ist der erste Udemy-bezogene Beitrag auf diesen Seiten.

Mein Serverstandort befindet sich in Japan. Ich kann die Klon-Seite später heute für Tests in eine andere Region wie die USA verlegen und werde dann erneut aktualisieren.

Update:

  1. Nach 11 Stunden ist es nach dem Verschieben der geklonten Testseite von Tokio nach Kalifornien immer noch derselbe 403er Fehler. Ich werde später nach Europa wechseln, um Tests durchzuführen, und morgen erneut aktualisieren.
  2. Der gleiche 403er Fehlercode in London.

Nochmals vielen Dank.

2 „Gefällt mir“

Ich habe von meiner Seite aus etwas mehr getestet.

Ich kann die Udemy-URL sowohl von meinem privaten Internetanbieter (Nordamerika) als auch von einer Maschine in einem hochwertigen Rechenzentrum (Nordamerika) erfolgreich mit curl erreichen.

Ein Versuch von einem populären Hosting-Anbieter (Nordamerika) schlägt fehl. Auch ein Versuch von einem anderen populären Hosting-Anbieter (Europa) schlägt fehl.

Wenn es fehlschlägt, lautet der zurückgegebene Inhalt:

error code: 1020

was von folgendem stammt:

Dieser Beitrag von Cloudflare erklärt, was ihr Fehler 1020 bedeutet und was Sie tun können, um ihn zu beheben:

https://community.cloudflare.com/t/community-tip-fixing-error-1020-access-denied/66439

5 „Gefällt mir“

Derzeit 2.7.0.beta8, falls das hilft.

2 „Gefällt mir“

Das neue Build löst dieses Problem; die Onebox-Vorschau von Udemy wird wieder angezeigt. Ich bin mir nicht sicher, welcher Teil das behoben hat.

3 „Gefällt mir“