终于搞定flask+win+apache+mod_wsgi+virtualenv的部署发布!!
2014-11-05 12:27
981 查看
1、安装python 2.7
2、安装apache或者xampp
3、下载mod_wsgi.so,放到apache下modules文件夹下,并修改httpd.conf以加载模块。
http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
4、安装pip,指南: https://pip.pypa.io/en/latest/installing.html#install-pip
5、安装virtualenv,cmd下
pip install virtualenv
6、建立虚拟环境FlaskEnv2,cmd下
virtualenv D:\PythonProjects\FlaskEnv2
7、进入FlaskEnv2目录,cmd下
cd D:\PythonProjects\FlaskEnv2\Scripts
8、安装Flask和其他插件,cmd下
pip install flask
pip install flask-login
pip install flask-openid
pip install flask-mail
pip install flask-sqlalchemy
pip install sqlalchemy-migrate
pip install flask-whooshalchemy
pip install flask-wtf
pip install flask-babel
pip install guess_language
pip install flipflop
pip install coverage
9、修改apache的设置文件 C:\xampp\apache\conf\extra\httpd-vhosts.conf
注意!!路径里的斜杠“/”是这个方向的,不是“\”这个方向的!这里要搞死人了!
还有下面的权限设置,用这里的这段。查了很久!
10、修改hosts文件,加入解析来测试
127.0.0.1 example.com
11、创建一个wsgi文件来测试 D:\PythonProjects\apricot\apricot.wsgi
代码如下:
这段代码引入了独立环境到项目中,注意哦!
还是要注意那个斜杠“/”,走了不少弯路
然后就是那几个路径了,之前建立的独立环境等
12、建立一个测试的py文件 D:\PythonProjects\apricot\app.py
代码如下:
13、打开Apache,然后开ie,打开http://example.com/,看到了吧
经测试,包括sqlite的本地读写,都一切正常^_^
14、有关静态文件的访问(图、js和css等),还没研究。
参考:
Windows Python虚拟环境配置(Distribute + pip + virtualenv + virtualenvwrapper-powershell) http://my.phirobot.com/blog/2014-02-python_in_windows.html
引入独立环境的方法 http://blog.nutenstudio.com/flask-apache-virtualenv/
有关静态1 http://jyd.me/python/use-django-with-apache-mod_wsgi/
留一下 http://blog.xavierskip.com/2014-06-18-apache-wsgi/
留2 https://www.digitalocean.com/community/tutorials/how-to-deploy-a-flask-application-on-an-ubuntu-vps
django有关静态的设置 https://django-chinese-docs.readthedocs.org/en/latest/howto/deployment/wsgi/modwsgi.html
2、安装apache或者xampp
3、下载mod_wsgi.so,放到apache下modules文件夹下,并修改httpd.conf以加载模块。
http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
LoadModule wsgi_module modules/mod_wsgi.so
4、安装pip,指南: https://pip.pypa.io/en/latest/installing.html#install-pip
5、安装virtualenv,cmd下
pip install virtualenv
6、建立虚拟环境FlaskEnv2,cmd下
virtualenv D:\PythonProjects\FlaskEnv2
7、进入FlaskEnv2目录,cmd下
cd D:\PythonProjects\FlaskEnv2\Scripts
8、安装Flask和其他插件,cmd下
pip install flask
pip install flask-login
pip install flask-openid
pip install flask-mail
pip install flask-sqlalchemy
pip install sqlalchemy-migrate
pip install flask-whooshalchemy
pip install flask-wtf
pip install flask-babel
pip install guess_language
pip install flipflop
pip install coverage
9、修改apache的设置文件 C:\xampp\apache\conf\extra\httpd-vhosts.conf
<VirtualHost *:80> ServerName example.com WSGIScriptAlias / "D:/PythonProjects/apricot/apricot.wsgi" <Directory "D:/PythonProjects/apricot"> <IfVersion < 2.3 > Order allow,deny Allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> </Directory> </VirtualHost>
注意!!路径里的斜杠“/”是这个方向的,不是“\”这个方向的!这里要搞死人了!
还有下面的权限设置,用这里的这段。查了很久!
10、修改hosts文件,加入解析来测试
127.0.0.1 example.com
11、创建一个wsgi文件来测试 D:\PythonProjects\apricot\apricot.wsgi
代码如下:
##########开始####### activate_this = 'D:/PythonProjects/FlaskEnv2/Scripts/activate_this.py' execfile(activate_this, dict(__file__=activate_this)) import site import sys # Remember original sys.path. prev_sys_path = list(sys.path) # Add site-packages directory. site.addsitedir('D:/PythonProjects/FlaskEnv2/Lib/site-packages') # Reorder sys.path so new directories at the front. new_sys_path = [] for item in list(sys.path): if item not in prev_sys_path: new_sys_path.append(item) sys.path.remove(item) sys.path[:0] = new_sys_path sys.path.insert(0, 'D:/PythonProjects/apricot') from app import app as application if __name__ == '__main__': #感觉写在这里好点 app.run(debug=True) ##############结束#########
这段代码引入了独立环境到项目中,注意哦!
还是要注意那个斜杠“/”,走了不少弯路
然后就是那几个路径了,之前建立的独立环境等
12、建立一个测试的py文件 D:\PythonProjects\apricot\app.py
代码如下:
###########开始####### from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello, I'm Apricot!" if __name__ == "__main__": app.run() ###########结束#######
13、打开Apache,然后开ie,打开http://example.com/,看到了吧
经测试,包括sqlite的本地读写,都一切正常^_^
14、有关静态文件的访问(图、js和css等),还没研究。
参考:
Windows Python虚拟环境配置(Distribute + pip + virtualenv + virtualenvwrapper-powershell) http://my.phirobot.com/blog/2014-02-python_in_windows.html
引入独立环境的方法 http://blog.nutenstudio.com/flask-apache-virtualenv/
有关静态1 http://jyd.me/python/use-django-with-apache-mod_wsgi/
留一下 http://blog.xavierskip.com/2014-06-18-apache-wsgi/
留2 https://www.digitalocean.com/community/tutorials/how-to-deploy-a-flask-application-on-an-ubuntu-vps
django有关静态的设置 https://django-chinese-docs.readthedocs.org/en/latest/howto/deployment/wsgi/modwsgi.html
相关文章推荐
- 搭建Apache+mod_wsgi+python+flask+virtualenv网站正式环境
- flask部署:Apache+mod_wsgi+python+virtualenv
- Apache+mod_wsgi+Flask部署文档--ubuntu
- Flask + mod_wsgi + Apache on Windows 部署成功(随时接受提问)
- Flask + mod_wsgi + Apache on Windows 部署成功
- 采用Apache+mod_wsgi在windows下搭建Flask项目(本地部署Flask的生产环境)
- windows + Apache + mod_wsgi 部署发布Django项目
- Apache + Flask + mod_wsgi部署
- win+Apache+mod_wsgi部署python程序-apache2.2+python2.7
- Flask + mod_wsgi + Apache on Windows 部署成功(随时接受提问)
- Win下python+Pydev+Django+apache+mod_wsgi开发部署配置记录
- win+Apache+mod_wsgi部署python程序-apache2.2+python2.7
- WIN, Apache2.2+Django1.6(Python2.7.5)+mod_wsgi 实现网站部署
- 使用Apache + mod_wsgi部署webpy应用
- apache&mod_wsgi&django部署多个项目
- Linux下安装Apache并以mod_wsgi方式部署django站点
- CentOS 6.5 Python 2.6.6+Flask 用wsgi方式部署在Apache 2.2.15下
- Windows环境下使用Apache+mod_wsgi部署webpy
- Linux下安装Apache并以mod_wsgi方式部署django站点