2011-04-14 19 views
0

我目前正在從PHP到Python的網站移植。該php web應用程序正在使用extenionless網址使用Python擴展的URL與出mod_rewrite

DefaultType application/x-httpd-php 

是否有這樣的事情,我可以爲python做?我已經通過Google進行了搜索,並試圖添加對Python非常有用的MIME類型,但迄今尚未成功。如果可能的話,我寧願這樣做,而不是使用mod_rewrite。

謝謝。

更新:我的服務器當前設置爲使用wsgi,但是如果我的python腳本沒有擴展名,瀏覽器將下載它們作爲反對被服務器解析。

回答

1

WSGI根本不使用/需要擴展;您的路由框架會適當地處理URL。如果你不使用WSGI ......爲什麼不呢?

+0

我使用WSGI,但是當我嘗試訪問一個python腳本進行擴展瀏覽器下載它,它不會被服務器解析。 – Drew 2011-04-14 02:27:24

+0

然後你沒有使用WSGI。 – 2011-04-14 02:30:45

+0

你是對的我配置了錯誤的感謝。 – Drew 2011-04-14 03:04:13

0

我想一個完整的答案會永遠拿,但運行在Apache蟒蛇的最佳途徑是通過WSGI,所以我建議你開始看這裏:http://code.google.com/p/modwsgi/

這將基本上需要兩兩件事:

  1. 的mod_wsgi的Apache(小警告,易包安裝將切換你的Apache MPM和可能卸載mod_php的;他們可以住在一起,但會需要一些手工)
  2. 實現基本WSGI接口
  3. python腳本

如果你正在建立一個網站,那麼你必須要處理很多事情,使用MVC框架是有意義的,Django是python的自然選擇,除非你需要像websockets支持。 它配備了一個偉大的教程上設置你的機器(用於WSGI:http://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/

什麼是好是Django的(大多數MVCS)取路由你的請求照顧 - 讓你不僅實現了擴展名,而是一個完整的類似REST的訪問。

隨着MVC框架,你基本上正從一個面向頁面的網站轉到一個真正的web應用程序......大括號!

這個答案開始,你應該能夠找到剛纔這麼多相關的Q &作爲計算器和serverfault ...

+0

謝謝!這是一個很好的鏈接。 – Drew 2011-04-14 03:04:41

+0

樂意幫忙! – Stefano 2011-04-14 17:07:38