使用 Nginx 和 Gunicorn 部署 Django,
在执行python manage.py collectstatic,出现如下错误:Traceback (most recent call last):
File "manage.py", line 22, in
execute_from_command_line(sys.argv)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/core/management/__init__.py", line 376, in execute_from_command_line
utility.execute()
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/core/management/__init__.py", line 368, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/core/management/base.py", line 294, in run_from_argv
self.execute(args, *cmd_options)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/core/management/base.py", line 345, in execute
output = self.handle(args, *options)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 193, in handle
collected = self.collect()
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 124, in collect
handler(path, prefixed_path, storage)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 357, in copy_file
self.log("Copying '%s'" % source_path, level=1)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 218, in log
self.stdout.write(msg)
File "/home/toptran/sites/nbtoptran.com/env/lib/python3.4/site-packages/django/core/management/base.py", line 110, in write
self._out.write(force_str(style_func(msg)))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 69-74: ordinal not in range(128)
之后在django项目的setting中配置如下代码
import sys,io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
但是又提示如下错误:
UnicodeEncodeError: 'utf-8' codec can't encode character 'udce5' in position 69: surrogates not allowed
网上都说这是路径问题,不知道是什么路径,需要怎么改,小白,第一次用django,求大神解答!