Pull to refresh

Comments 33

Чтобы IP-адрес не менялся, а тем более, вы его в кучу конфигов жёстко прописали, вам надо было статикой сетевые настройки прописать, либо указать DHCP-серверу, что этому MAC-адресу всегда выдавать один и тот же IP. Иначе, вы сами пишите, что адрес может меняться, и вы потом замучаетесь разбираться, чего это вдруг всё перестало работать. И при клонировании виртуалки, неплохо было бы поставить галочку "Сгенерировать новые MAC адреса...", вдруг вы захотите две таких виртуалки одновременно запустить.
Ну, и если это всё расчитано на такого новичка, что ему необходимо показывать каждый скриншот установки Убунту, то вряд ли он будет "разрабатывать приложения"

vagrant homestead
гораздо легче ставится и работаешь с локальными файлами, а не «где-то» по фтп
На просторах интернета не нашел единого рецепта по установке и настройке такого, довольно нестандартного сервера
Хм. Вообще это очень распространенная стандартная двухуровневая конфигурация nginx+apache. Интересно — а зачем вам Apache?

В конфиге nginx — хедеры для безопасности и сразу после них строчка resolver 8.8.8.8; дырка в безопасности оставленная собственными руками. Из документации: для предотвращения DNS-спуфинга рекомендуется использовать DNS-серверы в защищённой доверенной локальной сети.
Самого смутил этот момент, но Apache, к сожалению, бывает нужен для .htaccess — там правила по роутингу, которые намертво прибиты к некоторым продуктам. Во всех остальных случаях можно обойтись только Nginx, как мне кажется.
строчка resolver 8.8.8.8; дырка в безопасности оставленная собственными руками

От себя добавлю, что детали вот тут, правда не все актуальны. Благо решение много есть не просит:


  • поставить dnsmasq
  • /etc/dnsmasq.conf:
    port=53
    listen-address=127.0.0.1
    interface=lo
    bind-interfaces
    dnssec
    resolv-file=/etc/resolv.dnsmasq.conf
  • /etc/resolv.conf:
    nameserver 127.0.0.1
  • /etc/resolv.dnsmasq.conf
    nameserver 8.8.8.8
    nameserver 8.8.4.4
  • resolver 127.0.0.1; в nginx
Для большинства готовых продуктов из коробки, есть стандартные конфигурации nginx для роутинга, в замен .htaccess
Круто, куча картинок, всё очень подробно. Но зачем нужен Apache? Я один не понимаю?

И да. Не пишите закрывающий тег ?> если он последний в файле. Это стандарт.
На просторах интернета не нашел единого рецепта по установке и настройке такого, довольно нестандартного сервера

1) плохо искали
2) в чем нестандартность? Обычная документация же, у меня только в закладках несколько подобных статей!
3) Vagrant
4) Apache не нужен, давным давно уже пора переходить на более понятную и быструю связку Nginx+PHP-FPM72. «Продукты прибиты к .htaccess» не аргумент, аргумент «лень изучить, как быстро переписать реврайты Apache на nGinx», что на самом деле несложно, если разобраться
Если нужен конкретный пример, то можно взять PrestaShop. У него из админки генерируется только .htaccess файл. Есть даже конверторы .htaccess -> nginx rules, но на той теме, с которой я разбирался, они все либо валились, либо не до конца отрабатывали. Вот лишь небольшой пример исходного файла. и ладно бы он был один, так там в каждом каталоге по правилу. В данной ситуации проще поставить Apache, нежели настраивать nginx и молиться, чтобы исходный htaccess никто не трогал.

Даже в этом случае самый разумный конфиг — nginx стоит спереди, отдаёт статику сам, динамику передаёт апачу на фоне. В этом случае апач хотя бы не будет форкать свои 40+ мегабайт оперативной памяти для отдачи favicon.ico

Зачем вам вообще нужен apache, если вы при этом используете php-fpm? А если всё-же нужен, то тогда уж mod_php уместнее.
Зачем вам вообще ftp пусть даже ftps, когда есть sftp?
rpaf+remoteip работают из коробки, никакие телодвижения по установке из исходников rpaf не нужны, да и нельзя попросту так это делать, раз у вас пакетный дистрибутив…
Чтобы не менялся ip надо правильно настроить сеть.

Зачем вообще эта статья? В ней нет ничего не стандартного, и вообще хоть сколько-нибудь оригинального, кроме множества ошибок.
Кроме того, подобные step by step «руководства» больше вреда приносят, чем пользы, т.к. не описывают границы применимости и пишутся, зачастую теми, кто с трудом сам может хоть что-то настроить.

тогда уж mod_php уместнее
Он тянет за собой mpm_prefork. Для нагруженных и тяжелых проектов mod_php вообще противопоказан.
Это так, только если у вас апач напрямую торчит наружу.
Нет никаких особых проблем с prefork/itk, раз у нас nginx на фронте. А с worker + fastcgi, появляется совершенно лишнее межпроцессное взаимодействие, которое отнюдь не бесплатно.
Тогда уж вообще надо исключить apache, как я выше и писал…

Это так, только если у вас апач напрямую торчит наружу
Видимо, я непонятно выразил мысль. Второе предложение не вытекает из первого, они независимы.
С mod_php большая проблема — использование оперативной памяти.
А где именно, её используется больше?
У вас процесс самого apache + mod_php, против потока апача + php-fpm. На самом деле, будет то же самое суммарно. Во втором случае, меньше оверхед в апаче, но он добавляется в php-fpm.

Только если апач торчит наружу, в случае mpm_prefork будет заметно больше памяти использоваться, т.к. толстые процессы apache будут не только php скрипты обрабатывать, но и всю статику + долго висеть при отдаче медленным клиентам.

Зато apache + mod_php обмениваются данными внутри приложения, а при использовании worker + php-fpm у вас есть лишнее звено в виде fastcgi.
А где именно её используется больше?
Естественно на конфигурации apache+mod_php. Вы удивитесь, но на нагруженных тяжелых проектах разница — «разы». Завтра с работы попробую продемонстрировать наглядно — графиками munin (если интересно). Просто за счет отказа от mod_php на бэкенде нам на том же самом железе удавалось увеличивать производительность (количество обслуживаемых запросов в единицу времени) в несколько раз (естественно, с нормализацией) только за счет освобождения оперативной памяти.

Следующим шагом всегда шел отказ от Apache (что логично), если только не использовались специфические или самописные модули для него.
Это могло быть в случае не правильной настройки mpm_prefork, и правильной php-fpm, по количеству процессов, и возможно, количества запросов на жизнь процесса. Иначе никакого «в разы» взять просто не откуда.
А давайте, вы не будете гадать? Было бы вежливо попросить показать конфиги и на основании их уже строить какие-то умозаключения. Ну, отвечу в таком же стиле — с конфигами все нормально.

Я просто оставлю этот график мониторинга одного из бэкендов за год здесь. Простая замена mod_php на php-fpm на бэкенде и переход с prefork на event в связи с тем, что prefork стал не нужен, в январе без изменения производительности бэкенда. Видно, что добавили немного оперативки, но могли этого не делать.
График
image
Тогда просто объясните, хотя бы себе, а чем собственно, была занята вся эта память…
Apache уже давно умеет event, это на много быстрее и по тестам не отстаёт от связки на основе nginx. Видел тесты, где apache при работе в режиме event и статику отдавал наравне, а иногда и быстрее nginx.
Конечно, тема заезженная и здесь, наверное, мало кому интересная. Но описание действительно очень подробное и детальное, это похвально.

Боже мой, шифрование каталога на виртуалке в virtualbox. Из темы про "у нас много ЦПУ и много ССД". Тут все можно раскритиковать. Выше по топику уже начали.


Похвально ли использовать apache там, где nginx вылезает? Полноте. Похвально если он расскажет и переводе .htaccess в конфиг nginx. Там ничего сложного нет. Я сам мигрировал 20кб (если не больше) htaccess 6кб nginx. На "зеленом" все лаконичнее.

Жутно бредовая, бредовая, бредовая статья.


На просторах интернета не нашел единого рецепта по установке и настройке такого, довольно нестандартного сервера.

Мало материала, когда virtialbox ставят на линукс, а следом выдают виртуалке отдельный айпи. Раньше там было ужасное шаманство для весьма узких целей.

я лично — никогда не любил и не понимал виртуал бокс, у нас за последние года 3 были образы сначала на убунте, потом на suse, и в каждом случае VB часто вел себя странно, то какие то ошибки, то еще чтото, совершенно нестабильная работа, причем на разных PC, и на разных виртуалках… в отличии от VMWare, но это так…

я вот чего не понимаю, влепили -26 в карму, но по комментах — хер понять за что, вы бы хоть обосновали… ато хрень выходить, так можно и годноту заминусить, пойми тогда аргументы каждого… по моему если минус ставишь — нужно обязать коммент оставлять, иначе бардак.
и в каждом случае VB часто вел себя странно, то какие то ошибки, то еще чтото

На моей памяти только сеть отваливалась периодически, но это был зарепорченный баг.


я вот чего не понимаю, влепили -26 в карму

В статью. Не в карму. Комменты достаточно прочитать.

А зачем русский язык на Ubuntu? Странно что еще графику туда не поставили… в статье много воды, а конец сжат.
ИМХО больше статей, и хороших и плохих. Если статья чем то плоха, осветите в комментариях, они на хабре ценнее чем статья зачастую. Для начинающих DevOps вполне сойдет. На чем то парням тренироваться нужно.

И еще одно не популярное мнение. Господа пишущие «Зачем вообще эта статья? В ней нет ничего не стандартного, и вообще хоть сколько-нибудь оригинального, кроме множества ошибок.», но у которых за душой не одной статьи для сообщества, ну вы бы таких громких слов постеснялись бы говорить. Человек старался, делал материал, наверняка найдет свое ЦО. Мое ИМХО, внесите свой вклад, потом оценивайте чужой, а то ваши статьи вполне могут оказаться уровнем ниже чем топикстартера.
Разве nginx не умеет справляться с динамичными страницами? Для чего дополнительно апач мастерить?
Оставим слабый скил и целесообразность результата, просто теперь попробуйте все тоже самое но на Gentoo с нетинстал (150mb) образа с использованием Ansible, например.
Отличный способ прокачаться. Дерзайте! :)
Sign up to leave a comment.

Articles