mod_wsgi 是 apache 上 PEP-333 的實做軟體,使用 Python 開發 web application 的人不用知道怎麼介接。
既然是 .htaccess
,apache 的部份就不講了。
Update:修正 mod_rewrite 的部份。
先從最簡單的「所有 request 都丟給 index.py」開始:
SetHandler wsgi-script
RewriteEngine on
RewriteBase /~gslin/py/
RewriteRule ^index.py$ - [L]
RewriteRule ^(.*)$ index.py/$1 [L]
如果不希望連靜態檔案都透過 index.py 處理 (像是 robots.txt),要做兩件事情。第一件是限制 wsgi-script 的範圍:
<Files *.py>
SetHandler wsgi-script
</Files>
然後修改 mod_rewrite 的條件,只有檔案不存在的 request 才丟給 index.py:
RewriteEngine on
RewriteBase /~gslin/py/
RewriteRule ^index.py$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.py/$1 [L]
不會很難,不過還是寫下來,以後應該會找到自己的文章...
請問如果是apache跟py的目錄設在同一個,如果網址是打"大寫的"INDEX.PY,會不會被apache直接輸出?source