Wordpress Nginx Config
Revision as of 17:25, 30 April 2016 by Adam.birds (talk | contribs)
Here is the Nginx Config for a Public Wordpress with a locked down Admin section:
upstream examplecombackend { server unix:/var/run/php-fcgi-examplecom.sock; } server { listen 80; server_name example.com; root /var/www/vhosts/example.com/htdocs; index index.php; access_log /var/www/vhosts/example.com/access.log; error_log /var/www/vhosts/example.com/error.log warn; location / { try_files $uri $uri/ @handler; index index.php index.html; } # location /app/ { deny all; } # location /includes/ { deny all; } # location /lib/ { deny all; } # location /media/downloadable/ { deny all; } # location /pkginfo/ { deny all; } # location /report/config.xml/ { deny all; } # location /images/ { deny all; } # location /var/ { deny all; } # # location /download/ { allow 1.1.1.1; deny all; } location /. { return 404; } location @handler { rewrite ^/(.*)$ /index.php; } # location ~ \.zip$ { # allow 1.1.1.1; # deny all; # } location ~ ^/wp-(admin|login).php { location ~ \.php$ { fastcgi_intercept_errors on; fastcgi_pass examplecombackend; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } location ~ \.php$ { fastcgi_intercept_errors on; fastcgi_pass examplecombackend; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { # expires max; # log_not_found off; # } }