#18496 closed Uncategorized (invalid)
wsgi.py script need to add project path to sys.path
| Reported by: | Owned by: | nobody | |
|---|---|---|---|
| Component: | Uncategorized | Version: | 1.4 |
| Severity: | Normal | Keywords: | wsgi, sys.path |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | yes | UI/UX: | no |
Description (last modified by )
In Django 1.4, the default wsgi.py script should append the project path to sys.path in order for the apache wsgi process to be able to import from the project apps.
Something along these lines:
import sys
path = os.path.abspath(os.path.join(__file__, '..', '..'))
if path not in sys.path:
sys.path.append(path)
Change History (3)
comment:1 by , 13 years ago
| Description: | modified (diff) |
|---|---|
| Resolution: | → invalid |
| Status: | new → closed |
follow-up: 3 comment:2 by , 13 years ago
Some WSGI servers (Apache/mod_wsgi in particular) do still require you to explicitly add the path, but that should be done via your Apache configuration using the WsgiPythonPath directive. The documentation on using Django with mod_wsgi includes this.
comment:3 by , 13 years ago
Replying to carljm:
Some WSGI servers (Apache/mod_wsgi in particular) do still require you to explicitly add the path, but that should be done via your Apache configuration using the
WsgiPythonPathdirective. The documentation on using Django withmod_wsgiincludes this.
Thank you so much carljm, your comment was very enlightening to me.
AFAIK the new WSGI script was precisely introduced to eliminate such
sys.pathhacks.There's probably a problem with your
PYTHONPATHand/or the way you import your project apps.Here are the recommended support channels.