| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| servers:bsd:nginx:wordpress [2026/06/15 07:49] – [Prerequisites] Sean Rhone | servers:bsd:nginx:wordpress [2026/07/07 12:43] (current) – Sean Rhone |
|---|
| ===== Prerequisites ===== | ===== Prerequisites ===== |
| |
| * [[bsd:server:freebsd_15.1|FreeBSD 15.1]] | * [[bsd:server:arm:freebsd_16.0|FreeBSD 16.0]] |
| * [[servers:bsd:freenginx_php_php-fpm|freenginx + PHP + PHP-FPM]] | * [[servers:bsd:freenginx_php_php-fpm|freenginx + PHP + PHP-FPM]] |
| * [[servers:bsd:nginx:lets_encrypt|Certbot (Let's Encrypt)]] | * [[servers:bsd:nginx:lets_encrypt|Certbot (Let's Encrypt)]] |
| # End</code> | # End</code> |
| |
| ===== Themes Deny ===== | ===== Deny Directive ===== |
| |
| * https://github.com/WordPress/WordPress/tree/master/wp-content/themes | * https://github.com/WordPress/WordPress/tree/master/wp-content/themes |
| * Deny all except ''twentytwentyfive'' | * Blocks themes except ''twentytwentyfive'' |
| |
| su - | su - |
| |
| ee '/usr/local/etc/freenginx/default.d/wp-themes-deny.conf' | ee '/usr/local/etc/freenginx/default.d/wordpress-deny.conf' |
| |
| <code> | <code> |
| | # Themes Block |
| location '~' '/wp-content/themes/(twentyeleven|twentyfifteen|twentyfourteen|twentynineteen|twentyseventeen|twentysixteen|twentyten|twentythirteen|twentytwelve|twentytwentyfour|twentytwentyone|twentytwentythree|twentytwentytwo|twentytwenty)/' { | location '~' '/wp-content/themes/(twentyeleven|twentyfifteen|twentyfourteen|twentynineteen|twentyseventeen|twentysixteen|twentyten|twentythirteen|twentytwelve|twentytwentyfour|twentytwentyone|twentytwentythree|twentytwentytwo|twentytwenty)/' { |
| deny 'all'; | deny 'all'; |
| include '/usr/local/etc/freenginx/default.d/blog.conf'; | include '/usr/local/etc/freenginx/default.d/blog.conf'; |
| include '/usr/local/etc/freenginx/default.d/headers.conf'; | include '/usr/local/etc/freenginx/default.d/headers.conf'; |
| include '/usr/local/etc/freenginx/default.d/wp-themes-deny.conf'; | |
| | include '/usr/local/etc/freenginx/default.d/wordpress-deny.conf'; |
| |
| # access_log '/var/log/nginx/blog-access.log'; | # access_log '/var/log/nginx/blog-access.log'; |