cvondrick / vatic

Efficiently Scaling Up Video Annotation with Crowdsourced Marketplaces. IJCV 2012
http://mit.edu/vondrick/vatic/
MIT License
603 stars 255 forks source link

Target WSGI script '/home/vatic/vatic/server.py' cannot be loaded as Python module. #41

Closed ymm8505 closed 8 years ago

ymm8505 commented 8 years ago

http://localhost/ index.html ok. but:

http://localhost/?id=33&hitId=offline show Server ERROR

vim /var/log/apache2/error.log

show error info:

[Fri May 13 14:32:26.949970 2016] mod_wsgi (pid=3338): Target WSGI script '/home/vatic/vatic/server.py' cannot be loaded as Python module. [Fri May 13 14:32:26.950557 2016] mod_wsgi (pid=3338): Exception occurred processing WSGI script '/home/vatic/vatic/server.py'. [Fri May 13 14:32:26.950872 2016] Traceback (most recent call last): [Fri May 13 14:32:26.951184 2016] File "/home/vatic/vatic/server.py", line 8, in [Fri May 13 14:32:26.951784 2016] from turkic.server import handler, application [Fri May 13 14:32:26.952156 2016] File "/usr/local/lib/python2.7/dist-packages/turkic-0.2.5-py2.7.egg/turkic/server.py", line 15, in [Fri May 13 14:32:26.960437 2016] from turkic.database import session [Fri May 13 14:32:26.961490 2016] File "/usr/local/lib/python2.7/dist-packages/turkic-0.2.5-py2.7.egg/turkic/database.py", line 12, in [Fri May 13 14:32:26.961909 2016] from sqlalchemy import create_engine [Fri May 13 14:32:26.962142 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/init.py", line 9, in [Fri May 13 14:32:26.962534 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/sql/init.py", line 8, in [Fri May 13 14:32:26.963555 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/sql/expression.py", line 31, in [Fri May 13 14:32:26.964792 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/sql/functions.py", line 11, in [Fri May 13 14:32:26.965310 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/sql/sqltypes.py", line 17, in [Fri May 13 14:32:26.966839 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/processors.py", line 128, in [Fri May 13 14:32:26.967501 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/cprocessors.py", line 7, in [Fri May 13 14:32:26.969733 2016] File "build/bdist.linux-x86_64/egg/sqlalchemy/cprocessors.py", line 4, in bootstrap [Fri May 13 14:32:26.970950 2016] File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 936, in resource_filename [Fri May 13 14:32:26.974003 2016] self, resource_name [Fri May 13 14:32:26.974399 2016] File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1567, in get_resource_filename [Fri May 13 14:32:26.975860 2016] self._extract_resource(manager, self._eager_to_zip(name)) [Fri May 13 14:32:26.980864 2016] File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1595, in _extract_resource [Fri May 13 14:32:26.982276 2016] self.egg_name, self._parts(zip_path) [Fri May 13 14:32:26.982597 2016] File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1002, in get_cache_path [Fri May 13 14:32:26.982858 2016] self.extraction_error() [Fri May 13 14:32:26.983152 2016] File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 982, in extraction_error [Fri May 13 14:32:26.983556 2016] raise err [Fri May 13 14:32:26.983789 2016] ExtractionError: Can't extract file(s) to egg cache [Fri May 13 14:32:26.983942 2016] [Fri May 13 14:32:26.984164 2016] The following error occurred while trying to extract file(s) to the Python egg [Fri May 13 14:32:26.984313 2016] cache: [Fri May 13 14:32:26.984498 2016] [Fri May 13 14:32:26.984638 2016] [Errno 13] Permission denied: '/var/www/.python-eggs' [Fri May 13 14:32:26.984815 2016] [Fri May 13 14:32:26.992586 2016] The Python egg cache directory is currently set to: [Fri May 13 14:32:26.993211 2016] [Fri May 13 14:32:26.993285 2016] /var/www/.python-eggs [Fri May 13 14:32:26.993317 2016] [Fri May 13 14:32:26.993335 2016] Perhaps your account does not have write access to this directory? You can [Fri May 13 14:32:26.993351 2016] change the cache directory by setting the PYTHON_EGG_CACHE environment [Fri May 13 14:32:26.993367 2016] variable to point to an accessible directory.

[Fri May 13 14:32:26.993383 2016]

vim /home/vatic/vatic/server.py
then add:

import os,sys os.environ['PYTHON_EGG_CACHE'] = '/tmp/.python-eggs' abspath = os.path.dirname(file) sys.path.append(abspath) os.chdir(abspath)

result:

import site

path for virtual env site packages

site.addsitedir('/usr/local/lib/python2.7/site-packages')

site.addsitedir('/usr/local/lib/python2.7/dist-packages')

import os.path, sys sys.path.append(os.path.dirname(os.path.abspath(file)))

os.environ['PYTHON_EGG_CACHE'] = '/tmp/.python-eggs' abspath = os.path.dirname(file) sys.path.append(abspath) os.chdir(abspath)

import config from turkic.server import handler, application from turkic.database import session import cStringIO from models import *

import logging logger = logging.getLogger("vatic.server")

@handler() def getjob(id, verified): job = session.query(Job).get(id)

logger.debug("Found job {0}".format(job.id))
gsikheria commented 8 years ago

@ymm8505 have u given all permission to server.py file. For this error http://localhost/?id=33&hitId=offline show Server ERROR. Might be you have not uploaded video in --offline mode.