Как настроить PHP с Nginx, APC и PostgreSQL?

Я использую Ubuntu Server 10.10, и я хотел бы настроить среду веб-сервера с NginX , PHP 5.3.3, PostgreSQL и предпочтительно APC и PHP Suhosin.

Я уже настроил PostgreSQL с apt-get install postgresql и Nginx с apt-get install nginx.

Но как мне настроить PHP для них? Могу ли я сделать это, используя apt-get install, или мне нужно скачать исходники и скомпилировать их? Я бы предпочел сделать это, используя apt-get.

Я бы хотел использовать PHP-FPM для Nginx. Большинство учебных пособий, которые я нашел в Интернете, старые и компилируют PHP, но это не рекомендуется для рабочих серверов.

Как мне проще всего настроить PHP с Nginx, APC и PostgreSQL? или хотя бы PHP-FPM + Nginx?


ОБНОВЛЕНИЕ

Теперь я установил свежий Ubuntu Server 10.10 и выполнил команду , которую предложил Питер [ 1110] с добавлением php5-suhosin. После этого Nginx работает нормально, затем я редактирую сгенерированный файл конфигурации так, как показано ниже. После перезагрузки нового файла конфигурации Nginx по-прежнему работает нормально, используя файл index.html, но когда я добавляю файл index.php, он перестает работать. Я предполагаю, что это связано с PHP-FPM, APC или чем-то связанным с PHP. Но это может быть и файл конфигурации для PHP-FPM.

Вот файл конфигурации для Nginx, который я использую, большая часть его создается по умолчанию. Я пропустил комментарии.

server {

    listen 80;
    listen [::]:80 default ipv6only=on;

    server_name localhost;

    access_log /var/log/nginx/localhost.access.log;

    location /favicon.ico {
        empty_gif;
    }

    location / {
        root     /var/www;
        index    index.php index.html index.htm;
    }

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    }

}
9
задан 13 April 2017 в 15:24

1 ответ

При запуске с Ubuntu 10.10 это тривиально с новым php5-fpm пакетом

Следующие пакеты делают все, в чем Вы нуждаетесь

  • nginx - веб-сервер
  • php5-fpm - Быстрый CGI php сервер
  • php-apc - Пакет APC для php
  • php5-pgsql - Модуль PostgreSQL для PHP
  • postgresql - Сервер базы данных PostgreSQL

Все вместе sudo apt-get install nginx php5-fpm php-apc php5-pgsql postgresql

Также я предлагаю проверить, установлен ли apache2. Если так, удалите его с sudo apt-get remove apache2 избегать апача и nginx, конкурирующего за порт 80.

Обратите внимание также, что xdebug стандарт также хочет использовать порт 9000, точно так же, как php5-fpm. Таким образом, если Вы используете xdebug, изменение что порт, например, к 9 001

И как премия пример nginx конфигурация (помещают его в/etc/nginx/sites-available и символьная ссылка он в/etc/nginx/sites-enabled),

server {
  listen 80;
  server_name site.com;
  access_log /data/log/www/site.com/access.log;
  error_log /data/log/www/site.com/error.log;

  root /data/www_data/site.com/public;
  index index.php;

  location = /favicon.ico {
    empty_gif;
    #return 204;
  }

  location ~ \.php$ {
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }
}
8
ответ дан 13 April 2017 в 15:24

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

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