最近在将打包工具改成web版的,这样就不用每个人都配置自己的电脑了,我环境用的是win7(x64)+bottle+apache,比较简单。开始按照官方文档去配置,发现怎么改,都无法访问,最后无意中弄好了,在这里记录下。
1.下载mod_wsgi,由于我的电脑是64位的,而官网下载到的都是32位的,如果直接用会导致apache运行不正常。64位网址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
下载第一个zip包,里面就包含mod_wsgi-3.5.ap24.win-amd64-py2.7.zip,解压缩后将mod_wsgi.so复制到Apache2.2\modules目录下
2.修改apache的httpd.conf文件
加入如下内容:
LoadModule wsgi_module modules/mod_wsgi.so
DocumentRoot "D:/wamp/www/webBuild/"
WSGIScriptAlias / "D:/wamp/www/webBuild/app.wsgi"
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
3.修改app.wsgi和hello.py
app.wsgi
import os,bottle,sys
sys.path = ['D:/wamp/www/webBuild/'] + sys.path
os.chdir(os.path.dirname(__file__))
import hello
application = bottle.default_app()
hello.py
from bottle import route,request,template,run,Bottle,static_file
from AutoBuild import autoBuild
import os
#app = Bottle() ---去掉
#@app.route('/') ---改成下面的
@route('/')
def show():
return "hello world"
#run(app, host='localhost', port=8080) --去掉
注意:我注释的内容,当时就是在这里纠结了很久。
最后,打开浏览器,输入:http://localhost就可以了
另外,想让局域网内的电脑访问bottle自带的server,需要这样做:在cmd中进入项目目录,然后输入python main.py就可以了(因为我用的是IDLE编辑器,直接在里面F5运行main.py中的代码,我可以正常访问,但是局域网的同学怎么都访问不了,后来直接在cmd中python main.py就可以了)