過去 3 か月間、web.py を使用して Web サイトを開発してきました。私のマシンでローカルに正常にビルドした後、Linux ami の下の amazon ec2 サーバーにデプロイしようとしています。ただし、実行に問題があったため、クックブックの例に従いました。
Linux AMI で Apache 2.2.25 と python 2.6.8 を使用しているため、Red Hat のデプロイ例 ( http://webpy.org/cookbook/mod_wsgi-apache ) に従っています。
サイトをうまく展開できなかったので、一歩下がって、可能な限り単純なプログラムを展開しようとしました (上記のリンクにリストされている例)。繰り返しますが、機能していませんでした。いくつかのチュートリアルに従ってみましたが、役に立ちませんでした。例: http://theadaptiveweb.org/2011/11/04/how-to-setup-mod_wsgi-on-ec2-amazon-ami/ http://www.thefourtheye.in/2013/03/deploying-webpy- application-in-apache.html
これらのチュートリアルを修正して、機能するかどうかを確認しました。これらは私たちが取ったステップです:
サーバーのセットアップ
0. Set the Time
sudo rm /etc/localtime
cd /user/share/zoneinfo
ln -s /user/share/zoneinfo/America/Edmonton /etc/localtime
1. Get Pip
wget http://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#md5=62a9f08dd5dc69d76734568a6c040508
tar -xvf pip*.gz
cd pip*
sudo python setup.py install
1.1 Or Easy install
(Included in directory)
2. Get Web.py
yum install python-webpy (fedora)
or: easy_install web.py
we added a file call app.py into /var/www/html/app.py
3. Get Apache
sudo yum install httpd httpd-devel
4. Get mod_wsgi
sudo yum install mod_wsgi
4.1: Configure mod_wsgi
sudo vim /etc/httpd/conf/httpd.conf
Add this: *http://webpy.org/cookbook/mod_wsgi-apache*
LoadModule wsgi_module modules/mod_wsgi.so
WSGIScriptAlias /app /var/www/html/app.py
Alias /app/static /var/www/html/static/
AddType text/html .py
<Directory /var/www/html/>
Order deny,allow
Allow from all
Options Indexes FollowSymLinks Multiviews
</Directory>
4.2 Change Permissions
cd /var/run
sudo mkdir wsgi
sudo chown -R ec2-user wsgi
sudo chgrp -R ec2-user wsgi
sudo chmod -R 775 wsgi
cd /var/www
sudo chown -R ec2-user html
sudo chgrp -R ec2-user html
sudo chmod -R 775 html
5. Run Apache
sudo /sbin/service httpd start
5.1 To view error logs
sudo su
cd /var/log/httpd/
tail -n 300 error_log
を実行するsudo /sbin/service httpd start
と、取得できますStarting httpd:
が、何もありません
[ OK ]
(通常、正常に実行されている場合に表示されます)。
*注: このエラーを防ぐために、オプション インデックス FollowSymLinks マルチビューが追加されました: ディレクトリ インデックスはオプション ディレクティブによって禁止されています: /var/www/html/"
/var/www/html/app.py/
に変更したことにも注意してください/var/www/html/app.py
Apache が動作していることはわかっています。http://ec2-54-226-136-215.compute-1.amazonaws.comにアクセスすると、標準のメイン ページが表示されます。
ただし、http://ec2-54-226-136-215.compute-1.amazonaws.com/appにアクセスすると、 「見つかりません」としか表示されません。
エラーログを確認しても問題ありません。Webサイトにアクセスしても「見つかりません」としか表示されません。 道に迷っており、デバッグ方法についての情報がなく、続行する方法もありません。