Запутался в httpd, nginx и Vesta CP

У меня свежеустановленная CentOS на VPS с Vesta CP.

Vesta CP доступна на порту 8083

netstat показывает:

nginx прослушивает порты 8083 и 80

httpd прослушивает порт 8080

httpd.conf не имеет определенных виртуальных хостов

В nginx.conf определены все мои сайты

Чтобы увидеть, что делают apache и nginx, я разработал этот тест:

curl http://example.com

curl http://example.com:8083

Я делаю вышеописанное с запущенными httpd и nginx, с обоими остановленными и с одним или другим работающим. Всего 4 теста.

Для загрузки моего обычного сайта должны быть запущены ОБА httpd и nginx. Если любой из них остановлен, я получаю сообщение об ошибке «не удалось подключиться к хосту».

Однако выполнение curl на порту 8083 ВСЕГДА возвращает html-заглушку, даже если nginx и httpd ОБА остановлены.

Вопросы:

1) Зачем вообще нужен апач (он жрет много памяти) и как запустить исключительно nginx?

2) Что обслуживает порт 8083, поскольку он возвращает html-заглушку, даже когда nginx остановлен?

Все и любые комментарии приветствуются.

Привет, Питер


person Peter    schedule 08.07.2016    source источник


Ответы (2)


Теперь я настроил сайт, используя исключительно nginx. Это членский сайт с большим количеством пользовательского динамического контента, и он молниеносно быстр. Я использую VestaCP в качестве панели управления. При настройке Vesta вы можете выбрать один из нескольких сценариев установки. nginx — один из вариантов.

После установки VestaCP вы можете создавать веб-сайты, как в любой панели управления. Один из шаблонов для WordPress. Я читал, что вам нужен Apache для запуска WordPress, но это неверно.

nginx не использует .htaccess. Все должно быть сделано в файле конфигурации. Это больше работы, но оно того стоит ИМХО. Я протестировал сайт со скоростью 1,5 миллиона страниц в день. Я не думаю, что смог бы сделать это с Apache на 512 Мб. На данный момент я впечатлен nginx.

Чтобы было ясно, я вообще не устанавливал Apache. Все страницы статические и динамические обслуживаются nginx.

Details
Hosting: Digital Ocean
Server memory: 512Mb
OS: CentOS
Web Server: nginx
PHP processor: php-fpm
PHP version: 7
DataBase: MySQL (not mariadb which is default on CentOS)
Control Panel: VestaCP
IDE: Eclipse
Debugger: XDebug

Если вы создаете большой сайт WordPress для своего клиента, я настоятельно рекомендую эту конфигурацию.

person Peter    schedule 05.02.2017

Nginx обслуживает статические файлы (изображения, css, html и т. д.) очень быстро и эффективно и передает запросы php и .htaccess в apache для обработки.

Apache обслуживает php и .htaccess (большинству сайтов cms, таких как wordpress, он нужен для перезаписи), и если вы добавите кэш кода операции php, такой как zend opcache или xcache, он должен обслуживать php еще быстрее

Nginx + Apache с php opcache = производительность и эффективность ресурсов сервера

(Ответ взят из здесь)

person Lucas Bustamante    schedule 04.02.2017
comment
Спасибо, Лукас. С тех пор я решил это и должен был ответить на свой вопрос, мой плохой. Смотрите ответ ниже... - person Peter; 05.02.2017