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>

原文地址:https://www.cnblogs.com/dongfangchun/p/9196876.html