2012-06-25 25 views
0

我正在構建一個繪圖應用程序,並使用TileStache進行圖塊生成和緩存。我已經在爲我的Rails應用程序使用NGinx + Passenger,並試圖弄清楚如何從同一個Web服務器(NGinx)提供我的Rails應用程序和TileStache。從NGinx文檔看來,NGinx需要重新編譯才能添加WSGI模塊。由於我已經在使用Phusion Passenger模塊,因此我不知道如何去做這件事。我在正確的軌道上嗎?任何建議,將不勝感激。TileStache和NGinx

+0

供參考:這是關於服務TileStache瓷磚的文檔。 http://tilestache.org/doc/#serving-tiles – whyvez

回答

0

由於這個特定的項目的數據是靜態的我決定使用TileStache種子/加熱緩存和服務器瓷磚作爲靜態資產。

0

我們使用nginx來提供拼貼。很棒。

我們配置nginx爲proxy_pass給wsgi服務器。在啓用了站點文件:

location/{ 
    proxy_pass   http://127.0.0.1:XXXXSOMEPORTXXXX; 
    proxy_set_header Host  $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_connect_timeout 900s; 
    proxy_read_timeout 900s; 
} 

我給它一個長期超時,所以客戶端可以等待一段時間,你可能要少。

然後我創建了python虛擬環境並安裝了gunicorn來運行tilestache服務器。它可以用這樣的命令來運行:

XXXXPATHTOVIRTUALENVXXXX/bin/gunicorn --max-requests 1 --timeout 900 --graceful-timeout 890 -b 127.0.0.1:XXXXSOMEPORTXXXX -w 20 "TileStache:WSGITileServer('XXXXPATHTOTILESCONFIGXXXX/tiles.conf')" 

我們保持gunicorn通過使用行supervisord所以主管負責終止時或系統重新啓動發射了gunicorn服務器上運行。

Tilestache非常棒!