При загрузке файла с кириллицей в имени, выбрасывает ошибку
'ascii' codec can't encode characters in position
Если вы воспользовались настройками стандартной интернационализации Django и позволили пользователям загружать файлы, то должны убедиться, что среда для запуска Apache настроена для обработки не ASCII символов.Если это не так, будет возбуждено исключение UnicodeEncodeError при вызове функций, подобных os.path с именами файлов, содержащими отличные от ASCII символы.
Чтобы избежать проблем, среда, в которой запущен Apache, должна содержать параметры, аналогичные следующим:
export LANG='en_US.UTF-8'
'ascii' codec can't encode characters in position
Это происходит из-за apache.
Копипаста из оф доки
http://djbook.ru/rel1.8/howto/deployment/wsgi/modwsgi.html#if-you-get-a-unicodeencodeerrorЕсли вы воспользовались настройками стандартной интернационализации Django и позволили пользователям загружать файлы, то должны убедиться, что среда для запуска Apache настроена для обработки не ASCII символов.Если это не так, будет возбуждено исключение UnicodeEncodeError при вызове функций, подобных os.path с именами файлов, содержащими отличные от ASCII символы.
Чтобы избежать проблем, среда, в которой запущен Apache, должна содержать параметры, аналогичные следующим:
export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8'
Обратитесь к документации вашей операционной системы, чтобы подобрать соответствующий синтаксис и настроить расположение конфигурационных файлов; /etc/apache2/envvars является общей для Unix-like систем. После внесения соответствующих изменений перезапустите Apache.
Обратитесь к документации вашей операционной системы, чтобы подобрать соответствующий синтаксис и настроить расположение конфигурационных файлов; /etc/apache2/envvars является общей для Unix-like систем. После внесения соответствующих изменений перезапустите Apache.
Комментариев нет:
Отправить комментарий