Diferencia entre revisiones de «Usuario:Lmorillas/desarrollo web servidor/flask/despliegue»
De WikiEducator
Línea 11: | Línea 11: | ||
{{Objetivo|1= | {{Objetivo|1= | ||
− | + | |TOCdepth=3 | |
+ | |Title=Pasos}} | ||
− | + | ====Instalar mod-wsgi==== | |
$ sudo apt-get update | $ sudo apt-get update | ||
$ sudo apt-get install libapache2-mod-wsgi | $ sudo apt-get install libapache2-mod-wsgi | ||
− | |||
− | |||
− | |||
+ | ==== Configurar usuario ==== | ||
+ | $ useradd -M flask | ||
+ | $ usermod -s /bin/false flask | ||
+ | $ usermod -L flask | ||
+ | $ adduser flask www-data | ||
+ | |||
+ | ==== lanzador.wsgi ==== | ||
<source lang="python"> | <source lang="python"> | ||
# Si usamos virtualenv | # Si usamos virtualenv | ||
Línea 32: | Línea 37: | ||
</source> | </source> | ||
− | + | : '''Tiene que tener permisos de ejecución ''' | |
+ | $ chmod +x lanzador.wsgi | ||
+ | |||
+ | ==== virtual host en apache ==== | ||
<source lang="apache"> | <source lang="apache"> | ||
<VirtualHost *> | <VirtualHost *> | ||
Línea 38: | Línea 46: | ||
WSGIDaemonProcess yourapplication user=user1 group=group1 threads=5 | WSGIDaemonProcess yourapplication user=user1 group=group1 threads=5 | ||
− | WSGIScriptAlias / /var/www/yourapplication/ | + | WSGIScriptAlias / /var/www/yourapplication/lanzador.wsgi |
<Directory /var/www/yourapplication> | <Directory /var/www/yourapplication> | ||
Línea 48: | Línea 56: | ||
</VirtualHost> | </VirtualHost> | ||
</source> | </source> | ||
− | |||
− | |||
+ | $ sudo a2ensite nuevo_sitio | ||
+ | $ sudo service apache2 restart | reload | ||
− | + | ==== con userdir ==== | |
− | + | ||
− | + | ||
<source lang="apache"> | <source lang="apache"> | ||
<Directory /home/*/public_html> | <Directory /home/*/public_html> | ||
Línea 63: | Línea 69: | ||
</Directory> | </Directory> | ||
</source> | </source> | ||
− | + | ||
− | + | ||
{{Objetivo| | {{Objetivo| |
Revisión de 04:42 12 dic 2013
Apache con WSGI
Documentación
* http://flask.pocoo.org/docs/deploying/mod_wsgi/ |
Pasos
Instalar mod-wsgi
$ sudo apt-get update $ sudo apt-get install libapache2-mod-wsgi
Configurar usuario
$ useradd -M flask $ usermod -s /bin/false flask $ usermod -L flask $ adduser flask www-data
lanzador.wsgi
# Si usamos virtualenv activate_this = '/ruta/al/env/bin/activate_this.py' execfile(activate_this, dict(__file__=activate_this)) # Si no está instalada la app: para poder importar import sys sys.path.insert(0, '/ruta/a/la/aplicacion') from <miaplicacion> import app as application
- Tiene que tener permisos de ejecución
$ chmod +x lanzador.wsgi
virtual host en apache
<VirtualHost *> ServerName example.com WSGIDaemonProcess yourapplication user=user1 group=group1 threads=5 WSGIScriptAlias / /var/www/yourapplication/lanzador.wsgi <Directory /var/www/yourapplication> WSGIProcessGroup yourapplication WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all </Directory> </VirtualHost>
$ sudo a2ensite nuevo_sitio $ sudo service apache2 restart | reload
con userdir
<Directory /home/*/public_html> Options Indexes FollowSymLinks MultiViews ExecCGI AddHandler wsgi-script .wsgi Order allow,deny Allow from all </Directory>