Доброго времени суток!
Начинаю изучать Python и веб-фреймворк
Bottle. Так как перехожу с PHP на Python, после PHP все как-то сложновато понимать.
Использую mod_wsgi apache.
Конфиг виртуал хоста такой:
<VirtualHost *:80>
ServerName bottle
DocumentRoot /var/www/bottle/
ErrorLog /var/www/bottle/error.log
Customlog /var/www/bottle/access.log combined
WSGIDaemonProcess hello user=www-data group=www-data processes=1 threads=5
WSGIScriptAlias / /var/www/bottle/adapter.wsgi
WSGIProcessGroup hello
WSGIApplicationGroup %{GLOBAL}
WSGIScriptReloading On
<Directory /var/www/bottle/>
Options FollowSymLinks ExecCGI
AddHandler wsgi-script .wsgi
Order allow,deny
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
Не могу понять одного: почему когда я меняю что-нибудь в коде, изменения не применяются в выводе браузера или добавляешь route, но возвращается 404 ошибка. Все решается service apache2 reload. Сначала думал может кэш браузера - но нет. Вроде и нашел для конфига WSGIScriptReloading On - написано что должен как раз это решать, но почему-то, не помогает. Непонятно еще то, что я могу в функции поменять return "ABC" на return "DEF" и изменения видны в браузере, а например удалишь или добавишь новую функцию - помогает только релоад апача. Гуглил - ничего подобного не нашел, значит я, как новичок, что-то не монимаю и делаю не так.
adapter.wsgi:
import sys, os, bottle
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
os.chdir(os.path.dirname(os.path.abspath(__file__)))
import hello
application = bottle.default_app()
hello.py
from bottle import Bottle, route, run, template, request, get, post
app = Bottle()
Route('/test')
def test():
return "Test!"
Route('/hello/<name>')
def greet(name='user'):
return template('Hello <b>{{name}}</b>, how are you?', name=name)
Помогите советом! Не хочется связываться пока что с более груженными фреймворками для Питона - понравился Bottle тем что в одном файле и для новичка проще освоить. Но, пока что освоение застопорилось