Giter Site home page Giter Site logo

dslatten / nginx-helper Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rtcamp/nginx-helper

0.0 2.0 0.0 258 KB

Nginx Helper for WordPress caching, permalinks & efficient file handling in multisite

Home Page: http://rtcamp.com/wordpress-nginx/plugin/

PHP 90.98% JavaScript 0.32% Shell 8.71%

nginx-helper's Introduction

alt text

Nginx

Helps WordPress-Nginx work together nicely using fastcgi/proxy cache purging, nginx map{}, rewrite support for permalinks & more

Description

  1. Removes index.php from permalinks when using WordPress with nginx.
  2. Adds support for nginx fastcgi_cache_purge & proxy_cache_purge directive from module. Provides settings so you can customize purging rules.
  3. Adds support for nginx map{..} on a WordPress-multisite network installation. Using it Nginx can serve PHP file uploads even if PHP/MySQL crashes. Please check tutorials list below for related Nginx config.

Tutorials

You will need to follow one ore more tutorials below to get desired functionality:

Installation

Automatic Installation

  1. Log in to your WordPress admin panel, navigate to the Plugins menu and click Add New.
  2. In the search field type “Nginx Helper” and click Search Plugins. From the search results, pick Nginx Helper and click Install Now. Wordpress will ask you to confirm to complete the installation.

Manual Installation

  1. Extract the zip file.
  2. Upload them to /wp-content/plugins/ directory on your WordPress installation.
  3. Then activate the Plugin from Plugins page.

For proper configuration, check tutorial list of Description tab

Frequently Asked Questions

FAQ - Installation/Comptability

Q. Will this work out of the box?

No. You need to make some changes at the Nginx end. Please check tutorial list of Description tab

FAQ - Nginx Map

Q. My multisite already uses WPMU_ACCEL_REDIRECT. Do I still need Nginx Map?

Definitely. WPMU_ACCEL_REDIRECT reduces the load on PHP, but it still ask WordPress i.e. PHP/MySQL to do some work for static files e.g. images in your post. Nginx map lets nginx handle files on its own bypassing wordpress which gives you much better performance without using a CDN.

FAQ - Nginx Fastcgi Cache Purge

Q. Does it work for custom posts and taxonomies? Yes. It handles all post-types same way.

Q. How do I know my Nginx config is correct for fastcgi purging?

Manually purging any page from the cache, by following instructions in the previous answer.

Version 1.3.4 onwards, Nginx Helper adds a comment at the end of the html source ('view source' in your favourite browser): <!--Cached using Nginx-Helper on 2012-10-08 07:01:45. It took 42 queries executed in 0.280 seconds.--> This shows the time when the page was last cached. This date/time will be reset whenever this page is purged and refreshed in the cache.

Just check this comment before and after a manual purge. As long as you don't purge the page (or make changes that purge it from the cache), the timestamp will remain as it is, even if you keep refreshing the page. This means the page was served from the cache and it's working!

The rest shows you the database queries and time saved on loading this page. (This would have been the additional resource load, if you weren't using fast-cgi-cache.)

Q. I need to flush a cached page immediately! How do I do that?

Nginx helper plugin handles usual scenarios, when a page in the cache will need purging. For example, when a post is edited or a comment is approved on a post.

To purge a page immediately, follow these instructions: (eg. http://yoursite.com/about/) Between the domain name and the rest of the url, insert '/purge/'. So, in the above eg, the purge url will be http://yoursite.com/purge/about/ Just open this in a browser and the page will be purged instantly. Needless to say, this won't work, if you have a page or taxonomy called 'purge'.

FAQ - Nginx Map

Q. I am using X plugin. Will it work on Nginx?

Most likely yes. A wordpress plugin, if not using explictly any Apache-only mod, should work on Nginx. Some plugin may need some extra work.

Still need help!

Post your problem in our free support forum or wordpress.org forum here. We answer questions everywhere. Including Nginx official forum, serverfault, stackoverflow, etc. Its just that we are hyperactive on our own forum!

Screenshots

  1. Nginx plugin settings
  2. Remaining settings

Changelog

1.6.5

  • Fixed typo that interfered with archive purge settings. Thanks to Daan Kortenbach for pointing this out.

1.6.4

  • Improved code for map generation to better conventions since the nesting confused some servers.
  • Added map update process to admin_init for frequent refreshes.

1.6.3

  • Fixed duplicate entries.

1.6.2

  • Another bug fix in the revised code for improved multisite and multidomain mapping.

1.6.1

  • Fixed bug in the revised code for improved multisite and multidomain mapping.

1.6

  • Revised code for improved multisite and multidomain mapping.

1.5

  • Timestamp now only gets added to content-type text/html
  • Added option to toggle timestamp creation

1.4

  • Fixed bug related to nomenclature of comment status that caused purge to fail.

1.3.9

  • Removed extraneous headers.

1.3.8

1.3.7

  • Changed the action hook, back to 'shutdown' from 'wp_footer' to add verification comments.
  • Added a check to prevent adding comments to ajax requests,

1.3.6

  • Changed the action hook, from 'shutdown' to 'wp_footer' to add verification comments. This was interfering with other plugins.

1.3.5

  • Improved Readme.
  • Improved cache verification comments.

1.3.4

1.3.3

  • Fixed map generation for multi domain installs using domain mapping plugin, where blog ids were not displayed.

1.3.2

  • Fixed map generation for multi domain installs with domain mapping plugin.

1.3.1

  • Minor fixes for directory structure and file names.

1.3

  • Improved Readme.

1.2

  • Fixed map generation error.
  • Fixed purging logic.
  • Fixed UI where purge settings were lost on disabling and re-enabling purge.
  • Minor Ui rearrangement.

1.1

  • Improved readme.txt. Added Screenshots.

1.0

  • First release

1.6.5

Fixed bug in archive purge settings.

nginx-helper's People

Contributors

actual-saurabh avatar dslatten avatar miteshshah avatar murrayjbrown avatar rahul286 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.