servers:bsd:freenginx_php_php-fpm
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| servers:bsd:freenginx_php_php-fpm [2024/11/30 08:53] – WIP Sean Rhone | servers:bsd:freenginx_php_php-fpm [2025/10/30 23:42] (current) – Sean Rhone | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| * freenginx ((https:// | * freenginx ((https:// | ||
| - | * PHP | ||
| * PHP-FPM | * PHP-FPM | ||
| * [[Information: | * [[Information: | ||
| Line 8: | Line 7: | ||
| ===== Prerequisites ===== | ===== Prerequisites ===== | ||
| - | * [[bsd: | + | * [[bsd: |
| - | + | ||
| - | ===== Resources ===== | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| ====== Dependencies ====== | ====== Dependencies ====== | ||
| - | su -l | + | su - |
| - | pkg install freenginx | + | pkg install freenginx-devel php85 |
| - | ===== PHP Extensions | + | ===== PHP Modules |
| - | + | ||
| - | ==== Verify Modules | + | |
| **** | **** | ||
| php -m | php -m | ||
| - | |||
| - | ====== Firewall ====== | ||
| - | |||
| - | * 80/tcp is HTTP | ||
| - | * 443/tcp is HTTPS | ||
| - | * TODO | ||
| - | |||
| - | sudo firewall-cmd --add-service=' | ||
| - | |||
| ====== Services ====== | ====== Services ====== | ||
| Line 49: | Line 25: | ||
| ===== Enable ===== | ===== Enable ===== | ||
| - | su -l | + | su - |
| sysrc nginx_enable=" | sysrc nginx_enable=" | ||
| Line 59: | Line 35: | ||
| ===== Backup ===== | ===== Backup ===== | ||
| - | | + | |
| - | | + | mv -v '/usr/local/etc/freenginx/ |
| - | | + | mv -v '/usr/local/ |
| - | + | ||
| - | sudo mv '/etc/nginx/ | + | |
| - | + | ||
| - | ===== View ===== | + | |
| - | + | ||
| - | nano '/ | + | |
| - | + | ||
| - | nano '/ | + | |
| - | + | ||
| - | nano '/ | + | |
| - | + | ||
| - | nano '/ | + | |
| - | + | ||
| - | nano '/ | + | |
| ====== nginx Settings ====== | ====== nginx Settings ====== | ||
| - | |||
| - | ===== Notes ===== | ||
| - | |||
| - | * '' | ||
| - | * '' | ||
| - | * '' | ||
| ===== Defaults ===== | ===== Defaults ===== | ||
| - | ==== vhosts.d ==== | + | su - |
| - | + | ||
| - | **** | + | |
| - | | + | mkdir -p -m '0644' '/ |
| ===== HTTPS Redirect ===== | ===== HTTPS Redirect ===== | ||
| Line 99: | Line 53: | ||
| * This automatically redirects non-HTTPS site links to HTTPS | * This automatically redirects non-HTTPS site links to HTTPS | ||
| - | | + | |
| + | |||
| + | ee '/usr/local/etc/freenginx/ | ||
| < | < | ||
| server { | server { | ||
| - | listen | + | listen 80 default_server; |
| - | listen | + | listen [::]:80 default_server; |
| - | return | + | return 301 https:// |
| - | }</ | + | } |
| + | |||
| + | # End</ | ||
| ===== Non-existent 404 ===== | ===== Non-existent 404 ===== | ||
| Line 113: | Line 71: | ||
| * This prevents unconfigured subdomains from loading assets from other sites ((if a site/URL doesn' | * This prevents unconfigured subdomains from loading assets from other sites ((if a site/URL doesn' | ||
| - | | + | |
| + | |||
| + | ee '/usr/local/etc/freenginx/ | ||
| < | < | ||
| server { | server { | ||
| - | listen | + | listen 443 ssl default_server; |
| - | http2 'on'; | + | http2 on; |
| - | server_name | + | server_name _; |
| - | return | + | return 404; |
| - | }</ | + | } |
| + | |||
| + | # End</ | ||
| ===== Headers ===== | ===== Headers ===== | ||
| - | | + | |
| - | * Add to individual site configs as an '' | + | |
| - | | + | |
| < | < | ||
| Line 139: | Line 100: | ||
| add_header Referrer-Policy " | add_header Referrer-Policy " | ||
| add_header Expect-CT " | add_header Expect-CT " | ||
| - | add_header Permissions-Policy " | + | add_header Permissions-Policy " |
| + | |||
| + | # End</ | ||
| ===== nginx ===== | ===== nginx ===== | ||
| - | | + | |
| - | | + | |
| < | < | ||
| - | user nginx; | + | worker_processes |
| - | worker_processes | + | #error_log |
| - | error_log / | + | |
| - | pid / | + | |
| - | + | ||
| - | include / | + | |
| events { | events { | ||
| Line 162: | Line 121: | ||
| # Logging | # Logging | ||
| - | log_format | + | |
| - | ' | + | # |
| - | '" | + | # |
| - | access_log | + | |
| # Includes | # Includes | ||
| - | include /etc/nginx/ | + | include |
| - | include /etc/nginx/ | + | include |
| - | include /etc/nginx/ | + | include |
| default_type application/ | default_type application/ | ||
| Line 190: | Line 149: | ||
| # End</ | # End</ | ||
| - | |||
| - | ==== CSP Headers ==== | ||
| - | |||
| - | * The empty CSP allows all and can be useful for new site bring-ups, and should be placed in site-specific configs underneath the '' | ||
| - | |||
| - | < | ||
| - | |||
| - | < | ||
| ====== SSL Certs ====== | ====== SSL Certs ====== | ||
| Line 203: | Line 154: | ||
| ===== Let's Encrypt ===== | ===== Let's Encrypt ===== | ||
| - | * See [[servers;linux;nginx;lets_encrypt|Let' | + | * See [[servers:bsd:nginx:lets_encrypt|Let' |
| + | |||
| + | su - | ||
| - | | + | |
| < | < | ||
| - | ssl_certificate '/ | + | ssl_certificate '/usr/local/ |
| - | ssl_trusted_certificate '/ | + | ssl_trusted_certificate '/usr/local/ |
| - | ssl_certificate_key '/ | + | ssl_certificate_key '/usr/local/ |
| ssl_session_timeout ' | ssl_session_timeout ' | ||
| Line 217: | Line 170: | ||
| ssl_buffer_size ' | ssl_buffer_size ' | ||
| - | ssl_protocols ' | + | ssl_protocols |
| ssl_ciphers ' | ssl_ciphers ' | ||
| ssl_prefer_server_ciphers ' | ssl_prefer_server_ciphers ' | ||
| ssl_ecdh_curve ' | ssl_ecdh_curve ' | ||
| - | |||
| - | ssl_stapling ' | ||
| - | ssl_stapling_verify ' | ||
| # End</ | # End</ | ||
| + | |||
| + | ====== Resources ====== | ||
| + | |||
| + | ===== Original confs ===== | ||
| + | |||
| + | ee '/ | ||
| + | |||
| + | ee '/ | ||
/srv/www/wiki/data/attic/servers/bsd/freenginx_php_php-fpm.1732974828.txt.gz · Last modified: by Sean Rhone
