NGINX + Apache httpd sous NetBSD
Introduction⌗
NGINX peut faire office de serveur web mais également de reverse proxy. Nous allons ici l’utiliser pour relayer les requêtes vers le serveur Apache httpd.
Apache http⌗
Ci-dessous un fichier de configuration minimal permettant de servir les fichiers statiques produits par Hugo et installés dans le répertoire /srv/www/hugo/public.
Listen 127.0.0.1:8080
ServerRoot "/usr/pkg"
LoadModule authz_core_module lib/httpd/mod_authz_core.so
LoadModule mpm_event_module lib/httpd/mod_mpm_event.so
LoadModule dir_module lib/httpd/mod_dir.so
LoadModule log_config_module lib/httpd/mod_log_config.so
LoadModule unixd_module lib/httpd/mod_unixd.so
DocumentRoot "/srv/www/hugo/public"
ErrorLog "/var/log/www/httpd-error.log"
LogLevel info
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog "/var/log/www/httpd-access.log" common
</IfModule>
<IfModule unixd_module>
User httpd
Group www
</IfModule>
<Directory "/">
Require all granted
</Directory>
NGINX⌗
Ci-dessous un fichier de configuration minimal permettant de relayer les requêtes HTTP/HTTPS reçu à destination de l’hôte www.
error_log syslog:server=unix:/var/run/log,nohostname;
user nginx www;
events {
worker_connections 1024;
}
http {
access_log syslog:server=unix:/var/run/log,nohostname;
server {
listen 80;
listen 443;
listen [::]:80;
listen [::]:443;
server_name triaxx.io;
ssl_certificate /etc/openssl/certs/TriaxxIo.pem;
ssl_certificate_key /etc/openssl/private/TriaxxIo.pem;
return 301 $scheme://www.$server_name$request_uri;
}
server {
listen 80;
listen [::]:80;
server_name www.triaxx.io;
return 301 https://www.$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name www.triaxx.io;
ssl_certificate /etc/openssl/certs/TriaxxIo.pem;
ssl_certificate_key /etc/openssl/private/TriaxxIo.pem;
ssl_protocols TLSv1.2 TLSv1.3;
location / {
proxy_pass http://localhost:8080/;
}
}
}