這邊使用 nginx+uwsgi 示範。
1. 新增 production.ini 設定檔
$ cp /etc/ckan/default/development.ini /etc/ckan/default/production.ini
2. 修改 production.ini
搜尋並修改/新增下列字串:
[server:main] use = egg:Paste#http host = site.domain port = 80 #... ckan.site_url = http://site.domain #... #add the following lines at the bottom [uwsgi] socket = /tmp/uwsgi.sock master = true chmod-socket = 666
3. 安裝 nginx
$ sudo apt-get install nginx
4. nginx 伺服器設定
新增 /etc/nginx/sites-available/ckan 檔案,並編輯加入以下設定:
proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=cache:30m max_size=250m; proxy_temp_path /tmp/nginx_proxy 1 2; server { client_max_body_size 100M; location / { include uwsgi_params; uwsgi_pass unix:///tmp/uwsgi.sock; uwsgi_param SCRIPT_NAME ''; } }
建立 alies 至 sites-enabled:
$ sudo ln -s /etc/nginx/sites-available/ckan /etc/nginx/sites-enabled/ckan
5. uwsgi 設定
在 virtual env 下安裝 uwsgi:
$ . /usr/lib/ckan/default/bin/activate (pyenv) $ pip install uwsgi
6. 執行與測試
不要離開 virtual env,執行 nginx 與 uwsgi:
$ sudo service nginx start (pyenv) $ uwsgi --ini-paste /etc/ckan/default/production.ini
打開瀏覽器,前往 http://127.0.0.1/ ,若能看到頁面,恭喜您已經完成所有設定!