Hilfe bei Problemen mit der Umleitung von mehreren Standorten mit Cherokee ODER solider nginx-Konfiguration?

Ein kleiner Hintergrund: Wir haben beschlossen Apache zu verlassen, weil es nicht mit der Nachfrage Schritt halten kann. Wir haben ein Cron-Skript, das ungefähr einmal alle 3 oder 4 Sekunden einen neuen Beitrag mit einem Produkt erstellt. Dies belastet das System enorm, und selbst die Top-VPS-Option von Godaddy kann damit nicht umgehen. Wir haben uns entschieden, Apache nicht nur zu verlassen, sondern mit einer neuen Cloud-Lösung auf profitracks.com zu beginnen.

Einer der ersten Schritte war, sich für einen Webserver zu entscheiden, und wir fanden nginx. Nginx hat viele positive Bewertungen und eine wachsende Benutzerbasis. Ich konnte alles einrichten und es auf dem neuen Server arbeiten lassen. Die Beiträge wurden mit einer Rate von einer / drei Sekunden erstellt, die Haupt-Website war bissig und nicht einmal ein Performance-Blip mit dem Server. Das Problem war, dass alle Unterverzeichnis-Sites Minuten zum Laden benötigten. Inakzeptabel.

Jetzt schaue ich in Cherokee als den Webserver. Und mit einem anderen Problem ist die Hauptseite schnell, aber diesmal werden die Unterseiten nicht einmal geladen. Es gibt einen 404 Fehler. Das sagt mir, dass die Rewrite-Regeln falsch sind. (Jetzt hier ist der potenzielle Deal Breaker mit Cherokee …) Die einzige Dokumentation, die ich über die Einrichtung von WPMS mit Unterverzeichnissen finden kann, ist 3 Jahre alt und ist weit überholt. Ich bin jetzt seit ein paar Wochen dabei, und ich fange an, etwas Druck zu fühlen, b / c Ich muss diese Website so schnell wie möglich online bringen.

Also hier ist meine Frage: Kann mir jemand helfen, eine stabile, schnelle NGINX-Konfiguration zusammenzustellen ODER kann mir jemand helfen, die .htaccess-Rewrite-Regeln für mehrere Standorte in etwas zu übersetzen, das mit der aktuellen stabilen Version von Cherokee funktionieren wird?

Bitte helfen Sie, wenn Sie dazu in der Lage sind. 🙂 -Verfolgungsjagd

Hier ist meine aktuelle nginx-Konfiguration:

map $uri $blogname{ ~^(?/[^/]+/)files/(.*) $blogpath ; } map $blogname $blogid{ default 0; #include /var/www/example.com/htdocs/wp-content/plugins/nginx-helper/map.conf; #Add list of blogs with their ids. SEE "FILE-HANDLING" SECTION. /site1/ 2; /site2/ 3; } server { server_name example.com www.example.com ; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; root /var/www/example.com/htdocs; index index.php; location ~ ^/files/(.*)$ { try_files /wp-content/blogs.dir/$blogid/$uri /wp-includes/ms-files.php?file=$1 ; access_log off; log_not_found off; expires max; } #avoid php readfile() location ^~ /blogs.dir { internal; alias /var/www/example.com/htdocs/wp-content/blogs.dir ; access_log off; log_not_found off; expires max; } if (!-e $request_filename) { # wp-admin to wp-admin/ rewrite /wp-admin$ $scheme://$host$uri/ permanent; #other wp-* files/folders rewrite ^(/[^/]+)?(/wp-.*) $2 last; #other php files rewrite ^(/[^/]+)?(/.*\.php) $2 last; } location / { try_files $uri $uri/ /index.php?$args ; } location ~ \.php$ { try_files $uri /index.php; include fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; } location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { access_log off; log_not_found off; expires max; } location = /favicon.php { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } location ~ /\. { deny all; access_log off; log_not_found off; } } 

Und ein Layout der Regeln, die ich für Cherokee gefunden habe:

1 – Regeltyp: Regulärer Ausdruck: Regel:

  Regular Expression: ^/.*files.*$ Handler: Redirection - Regular Expression: ^/(.*)files/(.*) to Substitution: /wp-content.php?file=$2 

2 – Regeltyp: Komplex: Regel:

  Regular Expression: ^/([_0-9a-zA-Z-]+)/(wp-.*|.*\.php(\?.*|))$ AND Not ( File Exists, Match any file, disabled all the other checkboxes ) Handler: Redirection, 2 lines: Type Internal, Regular Expression: ^/([_0-9a-zA-Z-]+)/(wp-.*)$ to Substitution: /$2 Type Internal, Regular Expression: ^/([_0-9a-zA-Z-]+)/(.*\.php(\?.*|))$ to Substitution: /$2 

3 – Regeltyp: Regulärer Ausdruck: Regel:

  Regular Expression: ^/(.*)\.php(\?.*|)$ Handler: FastCGI, Information source: PHP Interpreter. All options left as default. 

4 – Regeltyp: Komplexer Regel:

  Regular Expression: ^(.*)$ AND NOT ( File Exists, Match any file, disabled all the other checkboxes ) Handler: Redirection: Internal, Regular Expression: ^/(.*)$ to Substitution: /index.php 

Vielen Dank für jede Hilfe!

Solutions Collecting From Web of "Hilfe bei Problemen mit der Umleitung von mehreren Standorten mit Cherokee ODER solider nginx-Konfiguration?"