1786
Commentaire:
|
1369
Utilisation d'une socket unix
|
Texte supprimé. | Texte ajouté. |
Ligne 9: | Ligne 9: |
1. Choisir un port entre 1025 et 65535, on le note p | |
Ligne 14: | Ligne 13: |
RewriteRule ^(.*)$ fcgi://127.0.0.1:8000 [P] | RewriteRule ^(.*)$ unix:/path/to/socket.sock|fcgi://localhost [P,NE,QSA,L] |
Ligne 16: | Ligne 15: |
en remplaçant 8000 par p 1. lancez {{{./manage.py runfcgi method=threaded host=127.0.0.1 port=8000 daemonize=false workdir=/}}} toujours en remplaçant 8000 par p pour tester. Quand tout marche bien, vous pouvez mettre {{{daemonize=false}}} pour lancer le serveur fcgi en arrière plan. |
1. lancez {{{./manage.py runfcgi method=threaded socket=/path/to/socket.sock daemonize=false workdir=/}}} pour tester. Quand tout marche bien, vous pouvez mettre {{{daemonize=false}}} pour lancer le serveur fcgi en arrière plan. |
Ligne 27: | Ligne 25: |
@reboot B/manage.py runfcgi method=threaded host=127.0.0.1 port=p daemonize=true workdir=B | @reboot B/manage.py runfcgi method=threaded /path/to/socket.sock daemonize=true workdir=B |
Ligne 29: | Ligne 27: |
* prendre p=8000 est une mauvaise idée comme c'est le port par defaut qu'utilise django, il risque d'être pris par quelqu'un d'autre. Un bon moyen de choisir un port est de le prendre au hasard, par exemple : {{{ valentin@nashi $ echo $(($(($RANDOM * 2)) + $(($RANDOM % 2)))) 15035 }}} donnera un port entre 0 et 65535. |
Faire fonctionner un site django sur sa page perso
- Choisir un dossier dans votre www (ça peut être le dossier www). On l'appellera le dossier A
- Aller dans votre projet django, on dira qu'il est dans le dossier B
Faites un ./manage.py collectstatic. Disons que les fichiers statiques sont collectés dans le dossier C
Faire un ln -s C A/static
- Créer un .htaccess dans le dossier A avec dedans :
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ unix:/path/to/socket.sock|fcgi://localhost [P,NE,QSA,L]
lancez ./manage.py runfcgi method=threaded socket=/path/to/socket.sock daemonize=false workdir=/ pour tester. Quand tout marche bien, vous pouvez mettre daemonize=false pour lancer le serveur fcgi en arrière plan.
- profit
Notes
- Pensez a faire correspondre le urls.py de votre projet et le STATIC_URL avec le prefixe de votre page perso. par exemple :
STATIC_URL=/login/static
Ça peut être bien de mettre la commande pour démarrer le serveur fcgi dans un cron pour la lancer au démarrage de la machine : lancer crontab -e et mettez dedans :
@reboot B/manage.py runfcgi method=threaded /path/to/socket.sock daemonize=true workdir=B