簡體   English   中英

無法在Mac上的Django中安裝mod_wsgi

[英]Cant install mod_wsgi in Django on Mac

我在Django上安裝mod_wsgi時遇到了麻煩。 這是終端的回溯。 我正在使用MacOS。

Mac-mini-3:~ Sqooge_Ahmed$ pip install mod_wsgi
Collecting mod_wsgi
  Using cached mod_wsgi-4.5.7.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/14/x0m8m6p16bs9mfrmrs54zrjc0000gn/T/pip-build-0NyGFW/mod-wsgi/setup.py", line 247, in <module>
        APR_INCLUDES = get_apr_includes().split()
      File "/private/var/folders/14/x0m8m6p16bs9mfrmrs54zrjc0000gn/T/pip-build-0NyGFW/mod-wsgi/setup.py", line 219, in get_apr_includes
        stdout=subprocess.PIPE, stderr=subprocess.PIPE)
      File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 711, in __init__
        errread, errwrite)
      File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1343, in _execute_child
        raise child_exception
    OSError: [Errno 2] No such file or directory

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/14/x0m8m6p16bs9mfrmrs54zrjc0000gn/T/pip-build-0NyGFW/mod-wsgi/

我已經使用了更新了setuptools

pip install --upgrade setup

如果您使用的是MacOS X Sierra,則問題在於Apple不再提供安裝命令行工具所需的某些命令行工具,從而完全破壞了安裝第三方Apache模塊的能力。

即使如此,在mod_wsgi 4.5.8中,仍存在一種變通方法,可以使pip install mod_wsgi仍然有效。 這僅適用於pip安裝方法,而不適用於較舊的configure / make / make install方法,后者找不到簡單的解決方法。

盡管此時4.5.8尚未發布,但將在第二天左右發布。 在過渡期間,您可以通過運行以下命令從GitHub存儲庫安裝:

pip install https://github.com/GrahamDumpleton/mod_wsgi/archive/develop.zip

至於沒有理由安裝mod_wsgi進行開發的想法,這是一種誤導。 mod_wsgi-express的主要要點之一是使其非常易於開發,包括Django。 在某些方面,最好使用mod_wsgi-express不是內置的開發服務器,因為然后使用的是與生產方式相同的WSGI服務器。 這意味着您將遇到與最終部署方法有關的問題,而在僅使用Django開發服務器時就不會。 因此,如果mod_wsgi將是您的最終目標,則最好將一些對mod_wsgi-express並入開發中。 您仍然可以獲得諸如自動代碼重新加載等功能的好處,因為mod_wsgi-express支持該功能,以及諸如集成Python調試器支持之類的其他功能。

關於使用mod_wsgi-express的誤解可能會出現,因為人們認為您必須完成所有手動配置才能運行它,因此這太難了。 你不知道 運行mod_wsgi-express與運行其他可以從命令行運行的WSGI服務器沒有什么不同,因為mod_wsgi-express將為您處理所有配置。 因此,無需手動配置Apache。 這一切都是自動發生的。

在發布4.5.8並更新PyPi詳細信息之前,查看關於如何使用mod_wsgi-express最新描述的最佳位置是:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM