2011-07-13 76 views
0

因此,我有一個新的mac,我試圖讓它運行與mod_python,mod_wsgi和django的Apache。我有一個測試test.py,僅僅包含: #!/usr/bin/python print "Content-type: text/html" print print "<html><head>" print "" print "</head><body>" print "Test Page" print "</body></html>"獲取apache在mac上運行python

我剛剛下載xcode4,使用的MacPorts通過這些網站上提供的步驟安裝Apache,PHP5,並mod_wsgi的: http://www.phpied.com/installing-php-and-apache-on-mac-osx-that-was-pretty-easy/ http://heisel.org/blog/2009/09/25/mod-wsgi-mac/ 出於某種原因mod_python的是行不通的,所以我從網上下載SVN最新的源代碼,做標準./configure --with-apxs=/opt/local/apache2/bin/apxs make sudo make install

,然後用在LoadModule等等模塊配置的httpd.conf/blah.so

,當我開始了跟Apache

sudo /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper start 

並導航到test.py在我的瀏覽器中,我看到整個文件以純文本與我知道這是不正確的。 我在httpd.conf開啓蟒蛇調試和看到這個當我瀏覽到test.py了這再次彈出:

MOD_PYTHON ERROR 

ProcessId:  93626 
Interpreter: 'dfelsmanmpx6.blah.blah' 

ServerName:  'dfelsmanmpx6.blah.blah' 
DocumentRoot: '/Users/me/folder/workspace/' 

URI:   '/test.py' 
Location:  None 
Directory:  '/' 
Filename:  '/Users/me/folder/workspace/test.py' 
PathInfo:  '' 

Phase:   'PythonHandler' 
Handler:  'text' 

Traceback (most recent call last): 

    File "/Library/Python/2.6/site-packages/mod_python/importer.py", line 1537, in HandlerDispatch 
    default=default_handler, arg=req, silent=hlist.silent) 

    File "/Library/Python/2.6/site-packages/mod_python/importer.py", line 1202, in _process_target 
    module = import_module(module_name, path=path) 

    File "/Library/Python/2.6/site-packages/mod_python/importer.py", line 304, in import_module 
    return __import__(module_name, {}, {}, ['*']) 

ImportError: No module named text 

人知道什麼是錯的或知道如何做到這一點在Mac上一個教程與xcode 4(是的,在我的研究中,實際上是相關的,因爲xcode 4取消了一些架構支持,從而使一些模塊過時)?

+2

[不要使用mod_python。](http://blog.dscpl.com.au /2010/06/modpython-project-is-now-officially.html) –

+0

我怎麼會這樣做沒有mod_python ?,只是得到test.py運行在Apache的是。 – Derick

+0

使用CGI或編寫WSGI腳本。 –

回答

0

正如@ ignatio-vazquez-abrams指出的那樣,mod_python已被棄用,但如果您設置了使用它,您可能需要檢出Homebrew。一旦安裝了Homebrew,您可以在終端中運行brew install mod_python。安裝完成後,您將看到關於將編譯的mod添加到Apache配置的註釋(以及棄用警告)。

+0

那麼我怎麼做,而不使用mod_python呢? – Derick