python之bottle框架配置,非虚拟地址 和 虚拟地址 都有

参考 :https://blog.csdn.net/iloster/article/details/41803383

0.安装python

yum install python

pip install bottle

1. 安装apache

yum install httpd #安装

yum install httpd-devel#安装

chkconfig --levels 235 httpd on#启动时运行

vi /etc/httpd/conf/httpd.conf,找到 ServerName ,添加“域名【或ip地址】:80”,保存并退出。

service httpd restart#重启apache

这个时候能访问/var/www/html下的文件了,一般php程序,这样就配置完毕了。

2.安装mod_wsgi

yum install mod_wsgi #很重要,必须

3. 修改httpd.conf

ServerName 1.2.3.4:80 #这个在步骤一种已经设置了

LoadModule wsgi_module modules/mod_wsgi.so #不load也没事,

DocumentRoot "/var/www/bottleapp" #默认目录为bottleapp

WSGIScriptAlias / /var/www/bottleapp/app.wsgi #增加此行

<Directory "/var/www/bottleapp"> #配置详情

Options Indexes FollowSymLinks

AllowOverride None

Require all granted

</Directory>

4. 在bottleapp中存放3个文件

----bottle.py #框架库。这个可以不要,因为已经执行了pip install bottle了。

----app.wsgi #后缀也可以是.py,对应的其他地方的app.wsgi 也要改为app.py

import os,bottle,sys
sys.path = ['/var/www/bottleapp/'] + sys.path
os.chdir(os.path.dirname(__file__))
import hello
application = bottle.default_app()

  

----hello.py

from bottle import route, run
@route('/hello')
def hello():
    return "Hello World!"
#run(host='localhost', port=8080, debug=True)

  

5.注意,python代码修改后,最好systemctl restart httpd重启一下服务器,否则新代码会不太稳定。

配置虚拟主机地址如下

例如场景:apache主要运行php环境【80端口】。笔者希望在不影响原来的配置框架的基础上新开一个8082端口,用来运行bottle。

--------------------------------------------------------------------------

--------------------------------------------------------------------------

--------------------------------------------------------------------------

--------------------------------------------------------------------------

--------------------------------------------------------------------------

红色部分为新增配置。

Listen 80 #原来就有的配置。

Listen 8082

<VirtualHost *:8082>

  ServerName 41.114.129.143 #这里要注意,写ip地址,访问域名有时候会出错;尽量写需要测试或者用的servername类型

  DocumentRoot "/var/www/bottleapp"

  #WSGIDaemonProcess bottleapp user=apache group=apache processes=1 thread s=5

  WSGIScriptAlias / /var/www/bottleapp/app.wsgi

  <Directory "/var/www/bottleapp">

    Options Indexes FollowSymLinks

    AllowOverride None

    Require all granted

  </Directory>

</VirtualHost>