我正在關於一個簡單的教程Setting up mod_wsgi on WampServer所有運行良好,直到我嘗試導入,我試圖搜索網絡,但沒有得到一個工作解決方案,這是一個錯誤問題(也許不是)或肯定是一個配置問題?導入模塊與mod_wsgi
如何導入在mod_wsgi的模塊?
設置: windows8的64/wampserver 64位/ mod_wsgi的x64bit
指南:
- Wampserver:C:/瓦帕
- WSGI應用程式:C:/瓦帕/萬維網/ wsgi
- Python27:c:/ python27
別名WSGI應用:{通過WAMP的教程按照創建創建別名選擇衝
WSGIScriptAlias /wsgi/ "c:/wamp/www/wsgi/wsgi.py"
<Directory "c:/wamp/www/wsgi/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
wsgi.py
from paste import httpserver
try :
p = sys.argv[1]
command = "from %(project)s import *" % {"project": p}
exec(command)
httpserver.serve(app, host='127.0.0.1', port='8080')
except :
print "Usage: python runner.py <main_package>"
sys.exit(0)
Apache的錯誤日誌:
- 目標WSGI腳本「C:/wamp/www/wsgi/wsgi.py」不能被加載爲 Python模塊。
- 出現異常處理WSGI腳本 'C:/wamp/www/wsgi/wsgi.py'。
def application(environ, start_response): status = '200 OK' output = 'Hello World!' response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output]
它打印輸出:
- 從貼進口的httpserver 導入錯誤:如果我在上面的代碼更改爲不能導入名稱 的httpserver
不過。
選項試圖wsgi.py:
import os, sys
sys.path.append("c:\\wamp\\www\\wsgi\\paste\\")
sys.path.append(os.path.dirname(__file__))
sys.path.append('c:/wamp/www/wsgi/')
sys.path.insert(0, 'c:/wamp/www/wsgi')
sys.path.insert(1, 'c:/wamp/www')
sys.path.insert(0, "c:/wamp/www/wsgi/wsgi.py")
sys.path.insert(0, "c:/wamp/www/wsgi/paste")
編輯:粘貼模塊在應用程序的根目錄。
你爲什麼不安裝粘貼到Python安裝或使用一個Python虛擬環境。將第三方軟件包納入您的項目通常不是一個好主意。 –
嗨@GrahamDumpleton是的,我不同意你的項目文件夾,包括第三方的不是一個好主意。我確實在Python的site-pakages目錄中粘貼了,如果這就是你的意思,並且我將它包含在我的apps目錄中,因爲應用程序拋出一個導入錯誤;但這也沒有幫助,我不想使用virtualenv;因爲我正在學習如何在沒有virtualenv的情況下讓它工作。 –