Назад | Перейти на главную страницу

URL-адреса URI с умляутами, не работающие на другом сервере

мы собираемся перенести веб-сайт нашей компании (Drupal 7) со старого сервера A на новый сервер B. Как обычно, мы экспортировали / импортировали базу данных и скопировали все файлы через ftp.

Поскольку наша компания находится в Германии, у нас есть несколько изображений, имена файлов которых содержат немецкие умляуты. CMS правильно кодирует URL-адрес своего URI, чтобы существующий файл, например über uns.jpg представлена ​​с такой разметкой:

<img src="http://<path to file>/%C3%BCber%20uns.jpg" />

Именно этот процесс работает на серверах A и B, НО Сервер B отвечает 404 Not Foundдля того же пути, для которого сервер A возвращает изображение.

Оба Сервера используют стандартную установку «Лампа», при этом программное обеспечение Сервера B обновлено (Apache 2.4, PHP 7.0), а сервер A - тихо старое (~ 5 лет).

Я ценю любую помощь и заранее благодарю!

Этот действительно свел меня с ума! Я дважды проверил все возможные настройки локали и обнаружил, что для каждого из них задано значение UTF-8.

Самым странным было следующее: копирование / вставка URL-адреса в адресную строку браузера привело к ошибке 404. Но ввод того же адреса без вставки из источника вернул изображение. В Sublime Text у меня были »оба« URL-адреса (вставленный и напечатанный) в одном файле, отмечая первый и нажимая Ctrl-D не выбрал другой, поэтому URL-адреса были разными, и я предполагаю, что были некоторые проблемы с порядком байтов, но это только предположение.

Причина, по которой мне до сих пор неясна, но я могу сказать, как я ее исправил: я запустил FileZilla, загрузил каталог файлов на свой локальный компьютер и использовал его для загрузки и переопределения. Вот и все.

Мой коллега, который изначально скачал и загрузил все файлы, хранившие их на внутреннем сервере Mac перед загрузкой, и я предполагаю, что этот шаг как-то испортил файлы, но, опять же, это всего лишь предположение.