# Nigx und apache gemischt.



## Burge (16. Apr. 2012)

Nabend,

kann mir jemand sagen ob ich im multiserver betrieb eine webserver mit apache und einen mit nginx betreiben kann oder führt das zu problemen?


----------



## Till (17. Apr. 2012)

Das ist kein Problem, solange Du nicht mirroring zwischen diesen beiden Nodes verwendest und dabei von einem nginx auf apache spiegelst oder umgekehrt.


----------



## Burge (17. Apr. 2012)

Nö und sehr gut. Dann werd ick das glatt mal so aufsetzen


----------



## Burge (21. Apr. 2012)

Install hat alles geklappt.
Aber der nginx will auf biegen und brechen keine php ausführen.

php läuft aber.

Direkte seiten mit endung .php werden sofort zum download angeboten und html seiten wo eine php drin ist werden einfach nicht interpretiert.

in den logs ist kein fehler dazu verzeichnet.

Jemand ein tip?


----------



## Till (21. Apr. 2012)

Nach welchem tutorial hast du denn installiert? Das php und nginx von debian 6 ist zb. Zu alt, daher müssen dann die pakete von dotdeb genommen werden.


----------



## Burge (21. Apr. 2012)

ah genau das hab ich genohmen.
http://www.howtoforge.de/anleitung/der-perfekte-server-debian-squeeze-debian-6-0-mit-bind-dovecot-nginx-ispconfig-3/
beides zu alt php und nginx?


----------



## Burge (21. Apr. 2012)

habe mal die quellen eingefügt



> deb Index of / squeeze all deb-src Index of / squeeze all


und ein update && upgrade gemacht.

Hat aber weder nginx noch php geupdatet.


----------



## Till (21. Apr. 2012)

Zitat von Burge:


> ah genau das hab ich genohmen.
> http://www.howtoforge.de/anleitung/der-perfekte-server-debian-squeeze-debian-6-0-mit-bind-dovecot-nginx-ispconfig-3/
> beides zu alt php und nginx?


Nein. Wie du im tutorial siehst werden ja nicht die pakete von debian 6 genommen.


----------



## Burge (21. Apr. 2012)

Mist genau über die Zeile hatte ick drüber gelesen und nur die drunter gecheckt ob auch alles drin ist.

Setting up nginx (1.0.15-1~dotdeb.0) 
hab ich nun installiert aber änderung bringt es noch nicht.

Muss ick die php pakete auch ausstauschen?


----------



## Till (22. Apr. 2012)

Ja, php und nginx müssen von dotdeb sein.


----------



## Burge (22. Apr. 2012)

so alles ausgetauscht.
es wurden auch alles bis auf fcgiwrap aus den dotdeb quellen installiert. Es tut sich aber nix.

Gibt es noch einen Ansatz?


----------



## Till (22. Apr. 2012)

Fcgiwrap muss glaube ich auch aus dotdeb sein, falls es das von denen gibt. Danach musst du vermutlich ispconfig nochmal aktualisieren und die dienste rekonfigurieren lassen.


----------



## Burge (22. Apr. 2012)

scheint es nicht zu geben er hat automatisch die squeeze quellen genutzt.

Bei aktualisieren von ispconfig gibt es das ein trick das update sagt mit das es nichts neues gibt und wenn ich es neu runterlade geht die install nicht weil er die vorhandene install erkennt und beim update sagt er auch das nix neues gibt.

Kann ich irgendwo die versionsnr zurück setzen für das update?


----------



## Till (23. Apr. 2012)

Zitat von Burge:


> scheint es nicht zu geben er hat automatisch die squeeze quellen genutzt.
> 
> Bei aktualisieren von ispconfig gibt es das ein trick das update sagt mit das es nichts neues gibt und wenn ich es neu runterlade geht die install nicht weil er die vorhandene install erkennt und beim update sagt er auch das nix neues gibt.
> 
> Kann ich irgendwo die versionsnr zurück setzen für das update?


Das steht jeweils in den release notes der Version, schau mal ganz unten unter "manual update instructions":

http://www.howtoforge.de/forum/allg...tsupdate-fuer-ispconfig-veroeffentlicht-5591/


----------



## Burge (23. Apr. 2012)

ok alles gemacht und bis auf die wraper alles von dotdeb installiert. manueles update gemacht. Es bleibt aber der dabei der nginx liefert keine php seiten aus.

ich konnte auch nur eine domain anlegen auf den dem server bei der 2. domain wird nur eine err vhost datei erzeugt.


----------



## Burge (23. Apr. 2012)

Ich finde auch in keinem Log ein Fehler warum er das php nicht anpacken mag.


----------



## falko (23. Apr. 2012)

Wie ist denn der Output von 
	
	



```
netstat -tap
```
? Läuft PHP-FPM?

Gibt es Fehler im nginx-Error-Log (in /var/log/nginx/) oder unter /var/log/web<id>/log/? Wie sieht denn die err vhost-Datei aus?


----------



## Burge (23. Apr. 2012)

nignx error log ist leer.

aus dem log des Webs 


> 188.40.xxx.xxx - beta [23/Apr/2012:12:52:14 +0200] "GET / HTTP/1.1" 200 347 "-" "Mozilla/5.0 (X11; Linux i686 on x86_64; rv:11.0) Gecko/20100101 Firefox/11.0"
> 188.40.xxx.xxx - beta [23/Apr/2012:12:52:14 +0200] "GET /index.php HTTP/1.1" 200 1193 "http://test.xxx.com/" "Mozilla/5.0 (X11; Linux i686 on x86_64; rv:11.0) Gecko/20100101 Firefox/11.0"


aus dem error log


> 2012/04/23 09:54:01 [error] 13370#0: *175 no user/password was provided for basic authentication, client: 188.40.xxx.xx, server: test.fluxandvision.com, request: "GET / HTTP/1.1", host: "test.xxx.com"


und die vhost


> server {
> listen 188.40.xxx.xxx:80;
> 
> 
> ...


noch das netstat vergessen
hier die relevanten sachen


> tcp        0      0 localhost:9053          *:*                     LISTEN      1285/php-fpm: pool
> tcp        0      0 localhost:9054          *:*                     LISTEN      1241/php-fpm: pool


----------



## Burge (25. Apr. 2012)

Keine Idee mehr?


----------



## falko (25. Apr. 2012)

Das Problem scheint zu sein, daß er nach einem Passwort fragt. Kommentier doch mal


```
auth_basic "Members Only";
                auth_basic_user_file /var/www/clients/client1/web44/web/.htpasswd;
```
aus und reloade nginx.


----------



## Burge (25. Apr. 2012)

hab ich ebend getestet, brachte nix.
Den Passwortschutz hab ich aber selber auch aktiviert. Der funktioniert ja auch. Html seiten werden auch richtig ausgeliefert nur ebend php nicht.


----------



## falko (25. Apr. 2012)

Start mal PHP-FPM neu. Wenn das nichts bringt, ändere mal


```
do_reload() {
        #
        # If the daemon can reload its configuration without
        # restarting (for example, when it is sent a SIGHUP),
        # then implement that here.
        #
        start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
        return 0
}
```
zu


```
do_reload() {
        #
        # If the daemon can reload its configuration without
        # restarting (for example, when it is sent a SIGHUP),
        # then implement that here.
        #
        start-stop-daemon --stop --signal 1[U][I][B][COLOR=black]2[/COLOR][/B][/I][/U] --quiet --pidfile $PIDFILE --name $NAME
        return 0
}
```
in /etc/init.d/php5-fpm. Das ist ein Bug im php-FPM-Init-Script, der in Debian Testing schon behoben ist.


----------



## Burge (25. Apr. 2012)

signal 12?

hab ich gemacht brachte leider keinen erfolg.

wo ist denn der aufruf von niginx für den php interpreter überhaupt drin? wenn ich php5-fpm stoppe oder starte macht komplett keine unterschied bei dem was passiert. ich denke der call zum interpreter wird nicht klappen. kann das sein?

Hab gerade mal getestet das php-cli läuft.


----------



## Burge (25. Apr. 2012)

Hab den Server jetzt nochmal komplett neu aufgesetzt diesmal gleich alles aus den dotdeb quellen.

Fazit es läuft keine php in webseiten.

Alles genau wie in der Anleitung hab nur mail etc ausgelasen weil das im multiserver nur für web da ist.

Kann das jemand bestätigen läuft dieses Setup bei jemand?

es wird jetzt bei php seiten die 500 error seite angezeigt aber im error log der domain taucht nichts auf.
im access log ist folgendes zu finden


> 93.228.xx.xxx - beta [25/Apr/2012:23:01:11 +0200] "GET /web/index.php HTTP/1.1" 500 1851 "http://test.xxx.com/web/" "Mozilla/5.0 $


der wrapper sollte aber laufen wie es aussieht 



> drwxr-xr-x 10 root        root        4096 Apr 25 23:01 .
> drwxr-xr-x 14 root        root        4096 Apr 25 22:24 ..
> -rw-r--r--  1 root        root           5 Apr 25 21:57 acpid.pid
> srw-rw-rw-  1 root        root           0 Apr 25 21:57 acpid.socket
> ...


----------



## Burge (26. Apr. 2012)

Ich kann nicht genau sagen was das eigentlich problem war aber es läuft jetzt.

Danke für alle Hinweise und die Hilfe.

Also ein Problem konnte ich ausmachen wenn man für ein nginx web die folderprotect einstellt geht nichts mehr.
Hat das einen Grund?


----------



## Till (26. Apr. 2012)

> Also ein Problem konnte ich ausmachen wenn man für ein nginx web die folderprotect einstellt geht nichts mehr. Hat das einen Grund?


Für welchen Ordner hast Du es denn eingestellt, / oder einen Unterordner?


----------



## Burge (26. Apr. 2012)

für das web root also /


----------



## Burge (26. Apr. 2012)

So auch den Fehler für den Verzeichnisschutz gefunden.

Der wird falsch angelegt.

ispconfig fügt das einfach am ende der vhost datei an. Das klappt so nicht bei ngnix. Es kann eine location also in dem fall das root / nur einmal definiert werden.

Sprich es muss die location für den verzeichnisschutz definiert werden und in diese location muss die php wrapper location eingefügt werden.

Dann klappt es mit dem pw schutz und php klappt auch.



> location ^~ / {
> auth_basic "Members Only";
> auth_basic_user_file /var/www/clients/client1/web46/web/.htpasswd;
> 
> ...


----------



## Till (27. Apr. 2012)

Ok, Danke! Ich hab es im Bugtracker aufgenommen.


----------



## falko (2. Mai 2012)

Zitat von Burge:


> So auch den Fehler für den Verzeichnisschutz gefunden.
> 
> Der wird falsch angelegt.
> 
> ...


Das hatte ich vor ein paar Tagen schon im SVN gefixt. Kommt mit ISPConfig 3.0.5.


----------

