Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Apache部署带有ImageKit的Django时出错;无法导入名称conf";_Python_Django_Apache_Deployment_Django Imagekit - Fatal编程技术网

Python 使用Apache部署带有ImageKit的Django时出错;无法导入名称conf";

Python 使用Apache部署带有ImageKit的Django时出错;无法导入名称conf";,python,django,apache,deployment,django-imagekit,Python,Django,Apache,Deployment,Django Imagekit,我试图用Apache部署我的Django站点,但我遇到了ImageKit库的问题。下面是来自/var/log/apache2/error.log的错误: No handlers could be found for logger "django.request" [1.2.3.4] mod_wsgi (pid=17276): Exception occurred processing WSGI script '/var/www/mysite.com/portfoliosite/portfolio

我试图用Apache部署我的Django站点,但我遇到了ImageKit库的问题。下面是来自/var/log/apache2/error.log的错误:

No handlers could be found for logger "django.request"
[1.2.3.4] mod_wsgi (pid=17276): Exception occurred processing WSGI script '/var/www/mysite.com/portfoliosite/portfoliosite/wsgi.py'.
[1.2.3.4] Traceback (most recent call last):
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/django/core/handlers/wsgi.py", line 189, in __call__
[1.2.3.4]     response = self.get_response(request)
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/django/core/handlers/base.py", line 218, in get_respo$
[1.2.3.4]     response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/django/core/handlers/base.py", line 264, in handle_un$
[1.2.3.4]     if resolver.urlconf_module is None:
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/django/core/urlresolvers.py", line 395, in urlconf_mo$
[1.2.3.4]     self._urlconf_module = import_module(self.urlconf_name)
[1.2.3.4]   File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
[1.2.3.4]     __import__(name)
[1.2.3.4]   File "/var/www/mysite.com/portfoliosite/portfoliosite/urls.py", line 21, in <module>
[1.2.3.4]     url(r'^', include('portfolio.urls')), # route root through portfolio routes
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/django/conf/urls/__init__.py", line 33, in include
[1.2.3.4]     urlconf_module = import_module(urlconf_module)
[1.2.3.4]   File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
[1.2.3.4]     __import__(name)
[1.2.3.4]   File "/var/www/mysite.com/portfoliosite/portfolio/urls.py", line 3, in <module>
[1.2.3.4]     from . import views
[1.2.3.4]   File "/var/www/mysite.com/portfoliosite/portfolio/views.py", line 9, in <module>
[1.2.3.4]     from .models import Project
[1.2.3.4]   File "/var/www/mysite.com/portfoliosite/portfolio/models.py", line 2, in <module>
[1.2.3.4]     from imagekit.models import ImageSpecField
[1.2.3.4]   File "/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/imagekit/__init__.py", line 2, in <module>
[1.2.3.4]     from . import conf
[1.2.3.4] ImportError: cannot import name conf
/etc/apache2/apache2.conf(增加第一部分):

WSGIPythonPath/var/www/mysite.com/portfoliosite:/home/ubuntu/.virtualenvs/portfoliositenv/lib/python3.4/site-packages/
别名/media//var/www/mysite.com/portfoliosite/portfoliosite/media/
别名/static//var/www/mysite.com/static/
要求所有授权
要求所有授权
WSGIScriptAlias//var/www/mysite.com/portfoliosite/portfoliosite/wsgi.py
要求所有授权

这真是令人沮丧,任何帮助都将不胜感激。谢谢大家!

找到了!我混合了Python版本,您可以在日志中看到一些指向Python 2.7的路径,而我的virtualenv使用的是Python 3。我创建了一个新的虚拟环境,并将所有路径更改为使用Python2.7,现在它似乎可以工作了

import os
import sys
import site

# Add the site-packages of the chosen virtualenv to work with
site.addsitedir('/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/')

# Add the app's directory to the PYTHONPATH
sys.path.append('/var/www/mysite.com/portfoliosite')
sys.path.append('/var/www/mysite.com/portfoliosite/portfoliosite')

os.environ['DJANGO_SETTINGS_MODULE'] = 'portfoliosite.settings'

# Activate your virtual env
activate_env=os.path.expanduser('/home/ubuntu/.virtualenvs/portfoliositeenv/bin/activate_this.py')
exec(open(activate_env).read(), dict(__file__=activate_env))

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
WSGIPythonPath /var/www/mysite.com/portfoliosite:/home/ubuntu/.virtualenvs/portfoliositeenv/lib/python3.4/site-packages/

Alias /media/ /var/www/mysite.com/portfoliosite/portfolio/media/
Alias /static/ /var/www/mysite.com/static/

<Directory /var/www/mysite.com/static>
    Require all granted
</Directory>

<Directory /var/www/mysite.com/media>
    Require all granted
</Directory>

WSGIScriptAlias / /var/www/mysite.com/portfoliosite/portfoliosite/wsgi.py

<Directory /var/www/mysite.com/portfoliosite>
    <Files wsgi.py>
        Require all granted
    </Files>
</Directory>