Python
如何讓 apache 在 RHEL6 中使用 MOD_WSGI 或 MOD_PYTHON 執行 python 腳本?
我正在嘗試讓 apache 執行 python 腳本。我在 RHEL6 上安裝了 MOD_WSGI 、 Apache 、 Python 。我什至編輯了 httpd.conf 文件以包含這些行。
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews ExecCGI AddHandler cgi-script .cgi AddHandler wsgi-script .wsgi AllowOverride None Order allow,deny allow from all </Directory>
我也重新啟動了apache伺服器。但是當我嘗試執行 python 腳本時,它只是在瀏覽器中列印為純文字。它根本沒有被執行。請有人幫忙。
apache2ctl -t -D DUMP_MODULES
通過發出或來查看模組是否正確載入apachectl -t -D DUMP_MODULES
。如果不是,請編輯您的httpd.conf
或包含的文件以包含以下內容(如果需要,請替換lib
為lib64
):
LoadModule wsgi_module /usr/lib/httpd/modules/mod_wsgi.so
請注意,您不能使用 WSGI 執行任何 python 腳本——如果我沒記錯的話,它必須支持與 WSGI 處理程序的介面。如果你想執行任何 python 腳本,也許你應該使用普通的舊 CGI,它很慢(如果你的使用者比你自己多,請不要在生產中使用它)但很容易。如果您的腳本在其中並且它們在頂部
cgi-bin
有正確的shebang ,那麼它們應該已經可以正常工作了。如果您想使用 mod_python 讓 Apache 執行正常 python 腳本,請首先確保您正在載入模組:
LoadModule python_module modules/mod_python.so
然後將其添加到您的配置中,例如在目錄塊中,首先刪除您的其他更改:
AddHandler mod_python .py PythonHandler mod_python.publisher