Nginx (comme extrémité avant pour Apache) pour servir WP Super Cache fichiers statiques

StackOverflow https://stackoverflow.com/questions/884845

  •  23-08-2019
  •  | 
  •  

Question

Je travaille actuellement sur mon blog Wordpress, qui est hébergé sur un VPS.NET VPS avec Nginx comme un front end à Apache pour servir des fichiers statiques, alors que Apache prend en charge le PHP FastCGI. Cela semble fonctionner très bien, mais je ne l'ai pas encore réussi à avoir Nginx servir les fichiers WP-SuperCache ainsi que je voudrais pour une performance maximale (je ne suis pas l'intention de remplacer complètement Apache avec Nginx en ce moment parce que j'ai une licence Virtualmin et il ne supporte pas Nginx). Je l'ai essayé beaucoup de règles trouvées ici et là, mais dans le pas final a travaillé pour moi ou je manque quelque chose. Si Apache est arrêté, en fait, je peux encore obtenir des images, feuilles de style et javascript livrés au navigateur par Nginx directement. Mais si je tente de surfer sur le blog (avec des pages mises en cache pour vous par WP-SuperCache) avec Apache arrêté, tout ce que je reçois de Nginx est un « 502 Passerelle ». Toutes les idées seraient grandement appréciés. Un grand merci à l'avance.

Était-ce utile?

La solution

Nginx peut gérer votre fastCGI. Livré avec Nginx, en général, tout Apache ne vous coûte est des ressources.

En ce qui concerne WP Super Cache, si vous créez un nouveau fichier et collez ce, il vous donnera à la fois cela et, alors que nous sommes à ce sujet, FURLS ...

# if the requested file exists, return it immediately
if (-f $request_filename) {
break;
}

set $supercache_file '';
set $supercache_uri $request_uri;

if ($request_method = POST) {
set $supercache_uri '';
}

# Using pretty permalinks, so bypass the cache for any query string
if ($query_string) {
set $supercache_uri '';
}

if ($http_cookie ~* "comment_author_|wordpress|wp-postpass_" ) {
set $supercache_uri '';
}

# if we haven't bypassed the cache, specify our supercache file
if ($supercache_uri ~ ^(.+)$) {
set $supercache_file /wp-content/cache/supercache/$http_host/$1index.html;
}

# only rewrite to the supercache file if it actually exists
if (-f $document_root$supercache_file) {
rewrite ^(.*)$ $supercache_file break;
}

# all other requests go to Wordpress
if (!-e $request_filename) {
rewrite . /index.php last;
}

Maintenant, GOTO votre fichier hôte virtuel ou nginx.conf si vous regroupez vos sites, et ajoutez une ligne comme ..

# Wordpress WP Super Cache plugin and permalinks.
include /usr/local/nginx/conf/wordpress_params.super_cache;

.. où wordpress_params.super_cache est ce que vous avez appelé le fichier que nous avons créé et donné un chemin par rapport à ce que je l'ai montré.

Ensuite, redémarrez Nginx et allumez WP Super Cache plug-in et, pour les liens jolies, ajouter une structure permalien.


Le fait est, il y a beaucoup de choses à savoir sur le point d'obtenir le droit d'installer Nginx, en particulier avec WordPress et configurer fastCGI. Si vous le souhaitez, ce serait un bon début pour vous ...

.. la configuration de WordPress sur Nginx (FURLS & Cache) - VPS Bible Pt 13

Re. Virtualmin .. Je comprends que vous voulez un CP, mais la vérité est, le coût des ressources est supérieur au coût du logiciel .. plus il prend beaucoup plus de temps pour faire des choses avec un CP.

Je publie actuellement 21 partie VPS série Administrateur qui traite de l'absence d'un CP Nginx .. ce sera tout ce que vous avez besoin, franchement.

Étant donné une semaine ou deux, je vous mets au défi de me dire qu'il est plus rapide ou autrement préférable d'utiliser un CP:)

Autres conseils

Il semble stupide de courir Nginx par Apache.

Mettre en place Nginx pour servir les pages php et dynamique lui-même et vous aurez un service beaucoup plus rapide et n'aura pas le problème où apache meurt et laisse votre serveur Web (Nginx) pendaison.

Si votre panneau d'administration ne supporte pas, vous probablement devriez utiliser apache en premier lieu. Soit faire un ou l'autre, les deux est juste demander des problèmes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top