我正在開發一個django應用程序。在開發服務器上,一切正常。 在生產服務器上(使用apache),沒有任何工作。django製作服務器:根路徑
1 /我有錯誤TemplateDoesNotExist在/。
在我的settings.py文件:
SITE_ROOT = os.path.abspath(os.path.dirname(__name__))
。這是項目的根路徑。
templateDir = os.path.join(SITE_ROOT, 'templates/')
TEMPLATE_DIRS = (
templateDir
)
這是模板路徑。
2 /如果我改變SITE_ROOT與該項目的絕對路徑:
SITE_ROOT="/var/www/europolix"
模板似乎承認,但我有另一個錯誤: 無模塊命名getEurlexIdsFunctions 下面是代碼:
import sys
sys.path.append('import')
import getEurlexIdsFunctions as eurlexIds
我認爲問題再次來自相對路徑。 Apache似乎在「var/www /」中搜索'import',而不是在「var/www/europolix /」中搜索。我對嗎?
這裏是我的Apache配置:
WSGIScriptAlias /europolix /var/www/europolix/europolix/wsgi.py
WSGIPythonPath /var/www/europolix/
<Directory /var/www/europolix/>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
它是根路徑的問題不承認,還是有其他問題?
非常感謝。
只爲一個良好的模塊的末端是UniPath。它以更正常的人語言方式幫助路徑。 – 2013-05-07 09:01:24
你能多解釋一下還是舉個例子?這是比我使用的更好/更清潔的解決方案嗎? – rom 2013-05-07 09:36:48
這裏是文檔:https://github.com/mikeorr/Unipath – 2013-05-07 10:30:06