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 [2026/03/06 00:20] (current) – old revision restored (2026/03/04 18:38) Sean Rhone | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Information ====== | ====== Information ====== | ||
| - | * freenginx ((https:// | + | * freenginx ((https:// |
| - | * PHP | + | * PHP ((https:// |
| * PHP-FPM | * PHP-FPM | ||
| * [[Information: | * [[Information: | ||
| Line 8: | Line 8: | ||
| ===== 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 | + | ====== Information ====== |
| - | ==== Verify Modules ==== | + | nginx -v |
| - | + | ||
| - | **** | + | |
| php -m | php -m | ||
| Line 38: | Line 24: | ||
| ====== Firewall ====== | ====== Firewall ====== | ||
| - | * 80/tcp is HTTP | ||
| - | * 443/tcp is HTTPS | ||
| * TODO | * TODO | ||
| - | |||
| - | sudo firewall-cmd --add-service=' | ||
| - | |||
| ====== Services ====== | ====== Services ====== | ||
| Line 49: | Line 30: | ||
| ===== Enable ===== | ===== Enable ===== | ||
| - | su -l | + | su - |
| sysrc nginx_enable=" | sysrc nginx_enable=" | ||
| Line 55: | Line 36: | ||
| sysrc php_fpm_enable=" | sysrc php_fpm_enable=" | ||
| - | ====== Config Defaults ====== | + | ===== Start ===== |
| - | ===== Backup ===== | + | su - |
| - | | + | |
| - | | + | |
| - | sudo mv '/ | + | ==== Stop ==== |
| - | | + | |
| - | ===== View ===== | + | service ' |
| - | | + | |
| - | nano '/ | + | ====== Disable Defaults ====== |
| - | nano '/ | + | ===== freenginx ===== |
| - | | + | |
| - | nano '/ | + | |
| + | |||
| + | ===== PHP-FPM ===== | ||
| + | |||
| + | su - | ||
| + | |||
| + | rm -fv '/ | ||
| + | |||
| + | ===== Check Defaults ===== | ||
| + | |||
| + | ==== nginx ==== | ||
| + | |||
| + | **** | ||
| + | |||
| + | ee '/ | ||
| + | |||
| + | ==== PHP ==== | ||
| + | |||
| + | * TODO: Other paths | ||
| + | |||
| + | ee '/ | ||
| + | |||
| + | | ||
| + | |||
| + | ee '/ | ||
| + | |||
| + | nano '/ | ||
| + | |||
| + | nano '/ | ||
| ====== nginx Settings ====== | ====== nginx Settings ====== | ||
| Line 85: | Line 94: | ||
| * '' | * '' | ||
| * '' | * '' | ||
| - | * '' | + | * '' |
| - | ===== Defaults | + | ===== Folders |
| - | ==== vhosts.d ==== | + | su - |
| - | **** | + | |
| - | + | ||
| - | sudo mkdir -p '/etc/nginx/ | + | |
| ===== HTTPS Redirect ===== | ===== HTTPS Redirect ===== | ||
| Line 99: | Line 106: | ||
| * 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 ' | + | |
| - | | + | return ' |
| - | }</ | + | } |
| + | |||
| + | # End</ | ||
| ===== Non-existent 404 ===== | ===== Non-existent 404 ===== | ||
| Line 113: | Line 124: | ||
| * 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 ' |
| - | http2 ' | + | http2 ' |
| - | server_name ' | + | |
| - | | + | return ' |
| - | }</ | + | } |
| + | |||
| + | # End</ | ||
| ===== Headers ===== | ===== Headers ===== | ||
| - | | + | |
| - | * Add to individual site configs as an '' | + | |
| - | | + | |
| < | < | ||
| - | add_header Strict-Transport-Security | + | add_header |
| - | add_header X-Content-Type-Options | + | add_header |
| - | add_header X-Frame-Options | + | add_header |
| - | add_header X-XSS-Protection | + | add_header |
| - | add_header Cache-Control | + | add_header |
| - | add_header Referrer-Policy | + | add_header |
| - | add_header Expect-CT | + | add_header |
| - | add_header Permissions-Policy | + | add_header |
| + | |||
| + | # End</ | ||
| ===== nginx ===== | ===== nginx ===== | ||
| - | | + | |
| - | | + | |
| < | < | ||
| - | user nginx; | + | worker_processes |
| - | worker_processes | + | #error_log |
| - | error_log / | + | |
| - | pid / | + | |
| - | + | ||
| - | include / | + | |
| events { | events { | ||
| - | | + | |
| + | worker_connections | ||
| } | } | ||
| http { | http { | ||
| + | # Logging | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| - | # Logging | + | access_log |
| - | log_format | + | |
| - | ' | + | |
| - | | + | |
| - | access_log | + | # Includes |
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| - | | + | # Config |
| - | | + | sendfile ' |
| - | | + | tcp_nopush ' |
| - | | + | tcp_nodelay ' |
| - | | + | keepalive_timeout ' |
| + | | ||
| - | # Config | + | # gzip |
| - | sendfile on; | + | |
| - | tcp_nopush on; | + | |
| - | tcp_nodelay on; | + | |
| - | keepalive_timeout 65; | + | |
| - | types_hash_max_size 4096; | + | |
| - | + | ||
| - | | + | |
| - | gzip on; | + | |
| - | gzip_vary on; | + | |
| - | gzip_proxied any; | + | |
| - | gzip_comp_level 9; | + | |
| - | gzip_types *; | + | |
| } | } | ||
| # 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 208: | ||
| ===== Let's Encrypt ===== | ===== Let's Encrypt ===== | ||
| - | * See [[servers;linux;nginx;lets_encrypt|Let' | + | * See [[servers:bsd:nginx:lets_encrypt|Let' |
| - | | + | |
| + | |||
| + | ee '/usr/local/etc/freenginx/ | ||
| < | < | ||
| - | 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 224: | ||
| 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 ====== | ||
| + | |||
| + | * [[https:// | ||
C:/www/wiki/data/attic/servers/bsd/freenginx_php_php-fpm.1732974828.txt.gz · Last modified: by Sean Rhone
