Tôi có một VPS chạy một cài đặt mới của Ubuntu 10.04 LTS. Tôi đang cố gắng thiết lập một ứng dụng trực tiếp bằng cách sử dụng vi phim Flask, nhưng nó gây rắc rối cho tôi. Tôi đã ghi chép trong khi tôi cố gắng để có được nó chạy và đây là play-by-play của tôi trong một nỗ lực để xác định chính xác nơi tôi đã đi sai.Xem bất cứ điều gì sai với nỗ lực của tôi để có được Flask chạy? (mod_wsgi + virtualenv)
LẮP ĐẶT
http://flask.pocoo.org/docs/installation/#installation
$ adduser myapp
$ sudo apt-get install python-setuptools
$ sudo easy_install pip
$ sudo pip install virtualenv
/home/myapp/
-- www/
$ sudo pip install virtualenv
/home/myapp/
-- www/
-- env/
$ . env/bin/activate
$ easy_install Flask
mod_wsgi
http://flask.pocoo.org/docs/deploying/mod_wsgi/
$ sudo apt-get install apache2
$ sudo apt-get install libapache2-mod-wsgi
Tạo tập tin WSGI
$ nano /home/myapp/www/myapp.wsgi
--myapp.wsgi contents:--------------------------
activate_this = '/home/myapp/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
from myapp import app as application
/home/myapp/
-- www/
-- myapp.wsgi
-- env/
Cấu hình Apache
$ nano /etc/apache2/sites-available/myapp.com
-----myapp.com file contents ---------------------
<VirtualHost *:80>
ServerName myapp.com
WSGIDaemonProcess myapp user=myapp group=myapp threads=5 python-path=/home/myapp/env/lib/python2.6/site-packages
WSGIScriptAlias//home/myapp/www/myapp.wsgi
<Directory /home/myapp/www>
WSGIProcessGroup myapp
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
Enable file máy chủ ảo Tôi vừa tạo
$ cd /etc/apache2/sites-enabled
$ ln -s ../sites-available/myapp.com
Restart Apache
$ /etc/init.d/apache2 restart
Servers cho tôi một trang lỗi 500 máy chủ. Đây là nhật ký lỗi mới nhất:
mod_wsgi (pid=3514): Target WSGI script '/home/myapp/www/myapp.wsgi' cannot be loaded as Python module.
mod_wsgi (pid=3514): Exception occurred processing WSGI script '/home/myapp/www/myapp.wsgi'.
Traceback (most recent call last):
File "/home/myapp/www/myapp.wsgi", line 4, in <module>
from myapp import app as application
ImportError: No module named myapp
Lỗi này ám chỉ rõ ràng, nhưng tôi khá lạc mất.
Nhân tiện, bạn có biết về lệnh 'cat' không? Nó in ra các nội dung của một tập tin (vì vậy trong bản ghi này nó sẽ tạo ra những gì bạn đã sao chép ra khỏi 'nano' tự động) –