DjangoアプリをDotcloudにデプロイしました。
Geventとdjango-socketioでWebSocketを使用しているので、カスタムサービスを使用しました。今のところ、それを機能させるために「runserver_socketio」をまだ使用しています。
ここで、Nginxを使用して静的ファイルを提供したいと思います。私はこれを見つけました:https ://github.com/dotcloud/nginx-on-dotcloud
使ってみました。これが私のdotcloud.ymlです:
www:
type: custom
buildscript: nginx/builder
processes:
app: /home/dotcloud/env/bin/python myproject/manage.py runserver_socketio 0.0.0.0:$PORT_WWW
nginx: nginx
ports:
www: http
systempackages:
- libevent-dev
- python-psycopg2
- libpcre3-dev
db:
type: postgresql
そして、アプリのルートに「nginx」フォルダーを追加しました。
また、ポストインストールの最後に次のものを追加しました。
nginx_config_template="/home/dotcloud/current/nginx/nginx.conf.in"
if [ -e "$nginx_config_template" ]; then
sed > $HOME/nginx/conf/nginx.conf < $nginx_config_template \
-e "s/@PORT_WWW@/${PORT_WWW:-42800}/g"
else
echo "($nginx_config_template) isn't there!!! Make sure it is in the correct location or else nginx won't be setup correctly."
fi
しかし、アプリにアクセスすると、アプリをプッシュした後、次のエラーが発生します。
403 Forbidden, nginx/1.0.14
そして、Nginxはエラーページ404を提供します。
理由はわかりませんが、アプリにアクセスできなくなりました。Nginxでアプリを設定する方法について何か考えがありますか?
どうもありがとうございます