- Issue created by @loriminciotti
- 🇩🇪Germany solimanharkas Hamburg
As a temporary workaround, accessing the URL with a double slash after "files" seems to work, e.g.
https://ftp.drupal.org/files//translations/all/drupal/ - 🇺🇸United States hestenet Portland, OR 🇺🇸
Testing - https://ftp.drupal.org/files/translations/8.x/webform/webform-8.x-5.30.i... it appears to be working properly?
Postponing pending more info.
- 🇩🇪Germany solimanharkas Hamburg
Ah, I noticed that this issue seems to be browser-specific. The translations download works correctly in Safari and Firefox, but not in Chrome, which is the browser I normally use. Using Chrome in Incognito mode does not resolve the problem.
- 🇮🇹Italy apaderno Brescia, 🇮🇹
I can confirm that accessing
https://ftp.drupal.org/files/translations/all/drupal/
with Chrome returns a 403 error, while accessinghttps://ftp.drupal.org//files/translations/all/drupal/
.The 403 error page shows details which could be helpful to understand what happens.
Error 54113
Details: cache-mxp6952-MXP 1756159877 3332670495Varnish cache server
Do the HTTP request headers differ significantly between browsers in this case?
- 🇺🇸United States hestenet Portland, OR 🇺🇸
I was reminded that this is actually a deliberate blocking of the chrome useragent for browsing these - because of a DDOS attack a couple weeks ago.
Do you have a primary use case for browsing these in browser rather than installing from the Drupal UI?
- 🇺🇸United States byrond
I can confirm that in both Chrome and Edge a 403 error is returned. Safari downlods the file fine, as does
curl
on the command-line. Adding an extra slash afterfiles
allows download via Chrome as described before.However, when we enable a module via Drush, we get errors downloading some translation files, and it's unlikely that the use a Chromium-based browser string.
> [notice] HTTP request to https://ftp.drupal.org/files/translations/all/restui/restui-8.x-1.22.en-gb.po failed with error: cURL error 6: Could not resolve host: ftp.drupal.org (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://ftp.drupal.org/files/translations/all/restui/restui-8.x-1.22.en-gb.po. > [notice] Checked en-gb translation for restui. > [notice] Translation file not found: https://ftp.drupal.org/files/translations/all/restui/restui-8.x-1.22.fr-ca.po. > [notice] Checked fr-ca translation for restui. > [notice] Checked fr translation for restui. > [notice] Checked de translation for restui. > [notice] Checked es translation for restui. > [notice] Checked ru translation for restui. > [error] Unable to download translation file https://ftp.drupal.org/files/translations/all/restui/restui-8.x-1.22.fr.po. > [error] TypeError: fgets(): Argument #1 ($stream) must be of type resource, bool given in fgets() (line 248 of /var/www/html/web/core/lib/Drupal/Component/Gettext/PoStreamReader.php) #0 /var/www/html/web/core/lib/Drupal/Component/Gettext/PoStreamReader.php(248): fgets(false)