Какой самый простой способ включить PHP на nginx?

Какой самый простой способ включить PHP в nginx в Ubuntu 12.04?

Лучшее решение - это то, которое требует минимальной работы, в идеале просто установка пакета:)

136
задан 9 May 2012 в 15:48

3 ответа

Следующий метод поможет вам быстро начать работу в Ubuntu 12.04:

Установите зависимости:

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

Установить nginx:

sudo apt-get install nginx

Запустить nginx:

sudo service nginx start

Проверить, что он работает (должно появиться сообщение «Добро пожаловать в nginx!»)

sudo service nginx stop

В конфигурации вашего сайта nginx (/ etc / nginx / sites-available / default) измените строку в разделе сервера {}

index.html index.htm на index index.php index.html index.htm .

Раскомментируйте строки в разделе сервера {} начиная с

слушайте для обоих ipv4 / ipv6.

Прокрутите вниз до места location ~ \ .php { и раскомментируйте строки, чтобы он выглядел так:

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

Ваш корневой веб-сайт по умолчанию находится в / usr / share / nginx / www (согласно файлу конфигурации). (См. root / usr / share / nginx / www;

(Примечание: для Ubuntu 12.10 или новее вам нужно будет заменить строку fastcgi_pass 127.0.0.1:9000; на это на заставить его работать: fastcgi_pass unix: /var/run/php5-fpm.sock; )

141
ответ дан 22 November 2019 в 22:55

EDIT: Wéi vun Matt Browne drop higewisen Dir kënnt interesséiert sinn duerch dëse méi rezente Post:
Wéi Installéiere Linux, Nginx, MySQL, PHP (LEMP Stack) zu Ubuntu 16.04


D'Äntwert vum papashou ass richteg op alen Ubuntu 12.04. Zënter Ubuntu 12.10 ass d'Konfiguratioun e bëssen anescht. Hei ass wat ech gemaach hunn:

Installéieren

sudo apt-get install nginx php5-fpm

PHP aktivéieren

Kommentéiert déi folgend Zeilen an der Konfiguratiounsdatei / etc / nginx / sites-verfügbar / standard

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;
}

Start (oder neu starten)

sudo service php5-fpm restart
sudo service nginx restart

Test nginx

Dëse Link opmaachen http: // localhost soll weisen "Wëllkomm op nginx!"

Test php

Erstellt eng php Datei :

  • Den Zilwee ass d'Ausgab vun

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

    z. / usr / share / nginx / www

  • Schreift eng info.php Datei mat:

     echo ' '|  \
      sudo Téi /usr/share/nginx/www/info.php
     

    oder als One-Liner

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

Ouverture http: //localhost/info.php sollt d'PPH Informatiounssäit affichéieren.

48
ответ дан 22 November 2019 в 22:55
sudo apt install nginx php-fpm

Обратите внимание на версию fpm или проверьте php -v . 7.3.11-0ubuntu0.19.10.3 (cli) в моем случае.

sudo nano /etc/nginx/sites-available/default
  1. Установите правильную корневую папку.

  2. Добавьте index.php в индекс Директива .

  3. Раскомментируйте обработчик местоположения для php, но оставьте строку «php-cgi» закомментированной, если вы используете php-fpm. Также проверьте правильность версии fpm, чтобы не получить «502 Bad Gateway» на локальном хосте: fastcgi_pass unix: /var/run/php/php7.3-fpm.sock;

sudo service nginx restart

Это работает на:

$ nginx -v
nginx version: nginx/1.16.1 (Ubuntu)
$ uname -a
Linux cees-XPS-13-9380 4.15.0-1067-oem #77-Ubuntu SMP Mon Jan 20 09:23:07 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
1
ответ дан 5 January 2021 в 23:41

Другие вопросы по тегам:

Похожие вопросы: