doc/packaging_apps_nginx_conf_fr.md
2020-04-20 19:17:40 +02:00

59 lines
2.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Configuration Nginx
Ce tutoriel a pour but daider à la mise en place dune configuration Nginx pour le packaging dapplication.
#### Configuration Nginx
La configuration doit être mise dans `conf/nginx.conf`. Il sagira dutiliser **FastCGI** ou un **proxy_pass** suivant lapplication :
* **FastCGI** est utilisé dans les applications PHP :
```nginx
location YNH_EXAMPLE_PATH {
alias YNH_WWW_PATH ;
if ($scheme = http) {
rewrite ^ https://$server_name$request_uri? permanent;
}
index index.php;
try_files $uri $uri/ index.php;
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $request_filename;
}
# Include SSOWAT user panel.
include conf.d/yunohost_panel.conf.inc;
}
```
* **`proxy_pass`** dans le cas dapplications Python, Node.js, Go et Java :
```nginx
location YNH_EXAMPLE_PATH/ {
rewrite ^YNH_EXAMPLE_PATH$ YNH_EXAMPLE_PATH/ permanent;
proxy_pass http://YNH_EXEMPLE_DOMAIN:YNH_EXAMPLE_PORT/;
proxy_set_header Host $host;
proxy_buffering off;
}
```
#### Script dinstallation
Il sagit de modifier le fichier `conf/nginx.conf` avec les paramètres de lapplication. Pour cela, on utilise des termes génériques `YNH_EXAMPLE_PATH` que lon modifie par des valeurs souhaitées avec la commande `sed` :
```bash
sed -i "s@YNH_EXAMPLE_PATH@$path@g" ../conf/nginx.conf
sed -i "s@YNH_EXAMPLE_PORT@$port@g" ../conf/nginx.conf
sed -i "s@YNH_EXEMPLE_DOMAIN@$domain@g" ../conf/nginx.conf
```
Il faut ensuite déplacer ce fichier de configuration dans la configuration de Nginx, puis recharger la configuration de Nginx :
```bash
cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf
sudo service nginx reload
```
Si Nginx ne redémarre pas, il se peut que le fichier de configuration ne soit pas correct.
#### Script de suppression
Il sagit de supprimer la configuration Nginx pour cette application, puis de recharger la configuration de Nginx :
```bash
rm -f /etc/nginx/conf.d/$domain.d/$app.conf
sudo service nginx reload
```