wiki/HowtoOpenBSD/httpd.md

92 lines
1.7 KiB
Markdown
Raw Normal View History

2019-02-21 18:40:53 +01:00
---
title: HowtoOpenBSD/httpd
categories:
...
2019-02-18 20:15:21 +01:00
2019-02-21 18:40:53 +01:00
* Manpage httpd <https://man.openbsd.org/httpd.8>
* Manpage httpd.conf <https://man.openbsd.org/httpd.conf.5>
2019-02-18 20:15:21 +01:00
2019-02-21 18:40:53 +01:00
_httpd(8)_ est le démon http présent dans le système de base sous _OpenBSD_. Léger et intuitif, il sera suffisant pour les cas les plus simples.
2019-02-18 20:15:21 +01:00
2019-02-21 18:40:53 +01:00
## Utilisation de base
2019-02-18 20:15:21 +01:00
Vérifier la configuration :
~~~
2019-02-18 21:02:24 +01:00
# httpd -n
2019-02-18 20:15:21 +01:00
~~~
2019-02-21 18:40:53 +01:00
> *Note* : on peut spécifier un fichier de configuration alternatif en utilisant l'argument "-f"
2019-02-18 20:15:21 +01:00
2019-02-18 21:02:24 +01:00
Lancer en mode debug :
2019-02-18 20:15:21 +01:00
~~~
2019-02-18 21:02:24 +01:00
# httpd -dvvv
2019-02-18 20:15:21 +01:00
~~~
2019-02-18 21:02:24 +01:00
Lancer le démon avec rcctl(8):
2019-02-18 20:15:21 +01:00
~~~
2019-02-18 21:02:24 +01:00
# rcctl enable httpd
# rcctl start httpd
~~~
Stopper le démon :
~~~
# rcctl stop httpd
~~~
Pour définir des arguments au démarrage du démon, on peut les
2019-02-21 18:40:53 +01:00
rajouter a rc.conf(8).
## Configuration simple
Exemple d'une configuration minimale :
~~~
server "default" {
listen on * port 80
root "/htdocs"
}
~~~
> *Note* : le serveur chroot(8) dans /var/www par défaut
2019-02-21 18:40:53 +01:00
## Configuration avancée
Voici une configuration pour servir un site Wordpress en HTTP/HTTPS :
~~~
types { include "/usr/share/misc/mime.types" }
server "example.com" {
listen on * port 80
alias "www.example.com"
block return 302 "https://$SERVER_NAME$REQUEST_URI"
}
server "example.com" {
listen on * tls port 443
alias "www.example.com"
root "/example/www/"
directory index index.php
location "/.*" { block }
location "/upload/*.php" { block }
location "/files/*.php" { block }
location "/*.php*" {
fastcgi socket "/run/php-fpm-7.2.sock"
}
tls {
certificate "/etc/ssl/example.crt"
key "/etc/ssl/private/example.key"
}
log access "example.com.log"
log style combined
}
~~~