Mi a legegyszerűbb módja annak, hogy engedélyezze a PHP-t a nginx-en?

126

Mi a legegyszerűbb módja annak, hogy engedélyezze a PHP nginx-et az Ubuntu 12.04-en?

A legjobb megoldás az, amely minimális munkát igényel, ideális esetben csak egy csomag telepítése:

    
készlet sorin 10.05.2012 00:39
forrás

2 válasz

135

Az alábbi módszerrel gyorsan elindul az Ubuntu 12.04:

Telepítse a függőket:

sudo apt-get install php5-common php5-cli php5-fpm

Telepítse a nginxet:

sudo apt-get install nginx

Start nginx:

sudo service nginx start

Tesztelje, hogy működik (lásd: "Welcome to nginx!")

sudo service nginx stop

A nginx webhely konfigurációjában (/ etc / nginx / sites-available / default) módosíthatja a sorban a kiszolgáló {} szakaszában

index index.html index.htm toindex index.php index.html index.htm.

A

-vel kezdődően a kiszolgáló {} szakaszában lévő sorok figyelmen kívül hagyásával

listen az ipv4 / ipv6 mindkettő számára.

Görgess le oda, ahova a "location ~ .php {" és a nem kommentálási sorokat mondja, így így néz ki:

location ~ \.php$ {
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  include fastcgi_params;
}

sudo service php5-fpm restart sudo service nginx restart

Az alapértelmezett internetes gyökér a / usr / share / nginx / www fájlban található (a konfigurációs fájlonként). (Lásd:root /usr/share/nginx/www;

(Megjegyzés: Ubuntu 12.10-es vagy újabb verzió esetén afastcgi_pass 127.0.0.1:9000; sor helyébe a következőt kell megadnunk:fastcgi_pass unix:/var/run/php5-fpm.sock;)

    
válasz adott papashou 10.05.2012 01:07
forrás
46

EDIT: Amint azt a Matt Browne rámutatták, érdekelheti ezt a újabb bejegyzés:
Hogyan telepítsünk Linuxot, Nginx-et, MySQL-t, PHP-t (LEMP stack) az Ubuntu 16.04-ben

A papashou válasza helyes a régi Ubuntu 12.04 verzióban. Mivel az Ubuntu 12.10, a konfiguráció egy kicsit más. Itt van, amit tettem:

Telepítés

sudo apt-get install nginx php5-fpm

PHP engedélyezése

A következő sorok figyelmen kívül hagyása a/etc/nginx/sites-available/default

konfigurációs fájlban
location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#   # With php5-cgi alone:
#   fastcgi_pass 127.0.0.1:9000;
    # With php5-fpm:
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}

Indítsa el (vagy újrainduljon)

sudo service php5-fpm restart
sudo service nginx restart

Teszteld megnginx

A kapcsolathttp://localhost megnyitásakor "Welcome to nginx!"

Teszteld megphp

Hozzon létre egy php fájlt:

  • A célút a

    kimenet
    awk -F' |;' '/^[^#]*root/ {print }' /etc/nginx/sites-available/default
    

    pl. /usr/share/nginx/www

  • Írjon be egyinfo.php fájlt:

    echo '<?php phpinfo(); ?>' | \
        sudo tee /usr/share/nginx/www/info.php
    

    vagy egy vonalzóként

    echo '<?php phpinfo(); ?>' | \
        sudo tee "$(awk -F' |;' '/^[^#]*root/ {print }' /etc/nginx/sites-available/default)/info.php"
    

Ahttp://localhost/info.php megnyitásakor megjelenik a PHP információs oldal.

    
válasz adott olibre 07.03.2013 05:39
forrás