• Shell script с root правами из PHP?

    pawnhearts
    @pawnhearts
    во-первых, у вас указано /home/script.sh в sudoers, а лежит он в /var/www?

    во-вторых, у sudo есть опция -u, зачем становиться рутом а оттуда вызывать su, если можно сразу из sudo запустить под нужным пользователем
    Ответ написан
    1 комментарий
  • Shell script с root правами из PHP?

    faustoFF
    @faustoFF Автор вопроса
    Проблема решилась. Во всем виновата собственная невнимательность. Моя опечатка в описании помогла мне найти опечатку в реальных конфигах в этом же месте (путь к скрипту в sudoers и реальный путь не совпадали) :) Теперь скрипт успешно отрабатывает из под www-data от root-а с рутовыми же правами.

    Забавно, из-за собственной невнимательности сгенерировал такое обсуждение. Надеюсь кому-то это окажется полезным.
    Ответ написан
    1 комментарий
  • Что надо знать хорошему php разработчику?

    JohnyRotten
    @JohnyRotten
    Программист в самом рассвете сил
    В своё время, когда занимался php наткнулся на вот этот ресурс. Там перечислено всё, что надо, а может и больше. Кроме того есть где-то его перевод
    Ответ написан
    1 комментарий
  • Из чего состоит окружение продвинутого php разработчика?

    Для написания кода в нашей команде все использую Vim (хоть и на PHP проектов уже нет, но когда были — тоже использовался исключительно Vim). Наш техдиректор Кирилл Мокевнин рассказывал про свой любимый редактор в одном из вебинаров.

    Ну и Vagrant + Docker (как для локальной разработки, так и для прода и самого процесса деплоя).
    Ответ написан
    Комментировать
  • Из чего состоит окружение продвинутого php разработчика?

    nonlux
    @nonlux
    Поправил ответ, так будет логичнее.
    Ниже приведены инструменты, которые использую лично я и причины почему.

    1. docker-окружение
    (в 90% случаев для веб-разработки достаточно php -S 0.0.0.0:8000)
    виртуальные машину становятся нужны:
    - когда надоест переустанавливать хост-систему из-за обилия хлама
    - когда работаешь с несколькими проектами имеющие специфические (разные) настройки окружения(php, web-сервер, база)
    - когда надоест решать проблемы в команде из-за того что по разному настроено окружение

    2. git - система контроля версий
    Помнить что ты и когда изменял, должен не человек, а машина.
    Это необходимо:
    - чтобы не испортить всю работы за прошедший год нажав del
    - чтобы определить кто из команды злодей и все испортил
    - чтобы не думать как перенести свежую версию проекта с одной машины на другую

    3. composer - пакетный менеджер для php
    Нужно, когда лениво помнить все ссылки на все php библиотеки, самому качать их, подключать в автозагрузку

    4. behat + phpspec
    Тесты нужны:
    - когда хочется почувствовать себя безопасности и для сладко спать ночь, забыв о кошмарах о сломанном коде
    - когда в production все снова сломалось
    - когда ты написал одну новую фичу, а сломал три

    5. zsh
    Хорошей консолью приятно пользоваться, работа идет быстрее.
    Консоль есть жизнь, жизнь есть shell.

    6. tmux
    Мало одно окошка в консоли, тогда tmux идет к вам.
    В качестве бонуса получите возможность парного программирования совершенно бесплатно

    7. tmuxinator
    Надоело каждый раз открывать кучу окон для tmux, попробуйте его )
    8. vim
    - Потянуло на что-нибудь необычное?
    - Хочется эффективнее писать код ?
    Ну что открыли vim? В первый раз? Поздравляю закрыть вы его не сможете )
    Вызывает зависимость при частом потреблении


    9. continuous integration сервер
    Вообще ci сервер это одушевленная машина. Это твой тамагочи, ты кормишь его хорошим кодом, он радуется и ты видишь приятный зеленый огонек. Если ты дал с код от скажет что не вкусно. Ну а если ты ему, что гнилое он будет долго на тебя орать плохими словами. Со временем он растет и учится делать более серьезные вещи, и начнет помогать тебе:
    Его скилы:
    - он может сам выполнить 10 минутные тесты
    - подготовить и опубликовать проект
    - рассказать о твоем коде, даже то что ты не знаешь
    Он легко обучается и ты легко сможешь научить его удивительным вещам.

    10. куча линтеров на pre commit hook
    Чтобы ci не кормить плохими продуктами, хорошо бы проверять что ты сделал до отправки на сервер. Что бы не забыть это сделать git сам работу.

    11. gulp
    gulp - это еще один твой помощник.
    как если использовать, как watcher файлов + livepreview, можно забыть о F5 в браузере

    12. bower
    Тоже что и composer но для управления ассетами. Это я о всяких jQuery и Bootstrap

    666. Линукс
    Даже если не хочется ставить как хост-систему, его все равно надо знать. Ваш код будет работать на нем )
    Ответ написан
    16 комментариев