Mac os автозапуск apache

Обновлено: 07.07.2024

Я на льве в Макоске. Служба запущена на локальном хосте: 8080.

Это сервис apache + php, упакованный entreprisedb.

Как я могу удалить автозапуск?

4 ответа

1) . Автозапуск обычно отсутствует в User-Autostart-Items, но вы все равно должны проверить его:

Откройте Системные настройки > Пользователи > Выберите своего пользователя > Start-объекты

Проверьте, запущено ли что-то, что вы хотите отключить, и сделайте это, если.

2) . Обычно запуск apache выполняется сервисом launchd: вы можете изменить это вручную или с помощью старого небольшого инструмента с именем "Lingon ». Чтобы сделать это вручную, вам нужно найти launchd-папки:

Там вы найдете .plist-файлы, которые определяют, когда и с чего начать. Чтобы удалить объект из автозапуска, используйте launchctl на терминале, чтобы удалить его из фактического launchd, а затем просто удалите файл.

Убедитесь, что вы не удаляете неправильные файлы! Это может привести к фатальной ситуации на вашей машине. Кстати, файлы .plist можно прочитать с помощью BBEdit , TextWrangler или редактор списков свойств из Apple Developer-Tools .

В Mountain Lion (OSX 10.8.5) мне удалось отключить сервер Apache, который поставляется с OSX, с помощью следующей команды:

Эта конкретная команда, вероятно, не будет работать, если через MacPorts или HomeBrew была установлена ​​другая версия Apache.

Важно использовать sudo , поскольку для работы Apache требуются привилегии root для работы с защищенным номером порта с низким номером (порт 80 ).

Ответ Эрика - это почти полный список мест, где можно найти элементы автозагрузки. В двух других местах я обнаружил, что несколько приложений запускаются, даже если вы нажали SHIFT во время входа в систему.

Вы можете прочитать их, используя:

по умолчанию читать /private/var/db/launchd.db/com.apple.launchd.peruser.501/overrides.plist

sudo по умолчанию прочитайте /private/var/db/launchd.db/com.apple.launchd/overrides.plist

Достаточно сделать sudo apachectl stop .

Затем для его запуска выполните sudo apachectl start . Это также приведет к запуску веб-сервера при запуске системы.

Это работает, как я вам говорю, потому что эти команды вызывают `launchctl`` под капотом. Вы можете проверить это, запустив

По сути, что эти команды делают, это загрузить демон запуска веб-сервера apache в OS X при запуске системы. Поскольку он использует launchctll, вам нужно иметь доступ администратора через sudo для загрузки или выгрузки apache. Помните, что это необходимо только для более современных версий OS X, которые больше не имеют опции «совместного использования веб-сайтов» на панели предпочтений «Обмен».

Примечание. Предполагается, что вы уже настроили и настроили Apache на Mac, если вы этого еще не сделали, вы должны начать там, иначе вы автоматически загружаете Apache без большой настройки.

Установить Apache для автоматического запуска при загрузке в Mac OS X

Из терминала введите следующую команду:

Нажмите «Возврат» и введите пароль администратора в соответствии с запросом на выполнение задания.

Теперь, когда Mac загружается или перезагружается, Apache запускается автоматически, что легко проверить, перейдя в любой браузер и введя «localhost» в качестве URL-адреса.

Веб-сервер Apache выполняется автоматически при загрузке в Mac OS X на локальном хосте

/ Library / WebServer / Documents /

Идем дальше, вы также можете включить параметр Сайты пользовательского уровня для localhost /

User, но это выходит за рамки этой статьи, здесь мы расскажем об этом.

Остановить Apache от загрузки при загрузке в Mac OS X

Чтобы остановить запуск Apache автоматически при запуске системы, вам просто нужно удалить агента из launchd, как и с любым другим демоном, например:

Снова вам нужно будет ввести пароль администратора, чтобы подтвердить изменение.

Определите, загружается или выгружается Apache в launchd

Если вы не уверены, что вы автоматически установили загрузку Apache или нет, вы можете запросить launchd для apache так:

Список запуска | grep apache

Если конфигурация Apache, PHP и MySQL в OS X слишком сложна или считается слишком сложной, еще одним отличным решением является использование предварительно настроенного пакета веб-сервера, такого как MAMP. MAMP также предлагает автономное решение для веб-серверов: Apache, PHP и MySQL уже включены в один пакет приложений, пользователь просто запускает приложение MAMP и начинает необходимые службы для запуска и остановки веб-сервера для локальной разработки. MAMP является мощным и отличным инструментом для веб-разработчиков на базе Mac, и он вовлекает в себя, как правило, гораздо меньше вмешательства и сложности, чем вручную настраивать отдельные компоненты для работы в OS X самостоятельно. Любое решение может быть отличным, поэтому используйте то, что работает для вас и вашего уровня комфорта.

Это руководство пригодится тем, кто хочет, чтобы скрипты автоматически запускались при загрузке macOS еще до входа пользователя в систему.

В данном руководстве рассматривается подключение к серверу при помощи терминального эмулятора iTerm2, установленного на операционную систему macOS.

Заходим в систему под учетной записью с правами администратора и запускаем терминальный эмулятор.

Теперь создадим скрипт, который будет содержать необходимые для выполнения сценарии при загрузке macOS, с помощью команды:

Обратите внимание, в данном руководстве скрипт с названием “run-service.sh” создается в домашнем каталоге пользователя. Вы можете создать скрипт в любом удобном, для его постоянного хранения, месте.

Автозапуск скриптов при загрузке macOS

Указываем пароль от учетной записи и нажимаем “Enter”.

Автозапуск скриптов при загрузке macOS

Нажимаем на кнопку “i”, чтобы перейти в режим редактирования, затем добавляем необходимые для выполнения сценарии при загрузке macOS.

Автозапуск скриптов при загрузке macOS

Теперь нажмите на кнопку “Esc”, чтобы выйти из режима редактирования, а затем введите “:x” и нажмите на кнопку “Enter”, чтобы сохранить изменения и выйти из редактора.

Автозапуск скриптов при загрузке macOS

Разрешим исполнение файла “run-service.sh” с помощью команды:

Автозапуск скриптов при загрузке macOS

Теперь необходимо воспользоваться планировщиком задач Cron, чтобы запланировать выполнение скрипта после запуска операционной системы.

Открываем планировщик задач с помощью команды:

Автозапуск скриптов при загрузке macOS

Нажимаем на кнопку “i”, чтобы перейти в режим редактирования, затем добавляем строку с параметром “@reboot” и указываем полный путь до ранее созданного скрипта:

Автозапуск скриптов при загрузке macOS

Теперь нажмите на кнопку “Esc”, чтобы выйти из режима редактирования, а затем введите “:x” и нажмите на кнопку “Enter”, чтобы сохранить изменения и выйти из редактора.

Автозапуск скриптов при загрузке macOS

Теперь скрипт будет автоматически запускаться при загрузке macOS еще до входа пользователя в систему.

Taly

Веб-разработка начинается с настройки локального веб-сервера. Есть множество различных комбинаций устанавливаемых пакетов и сборок, которые удобны по-своему. В этой статье я расскажу об установке связки Apache + PHP + MySQL + Redis + Memcached на macOS.

Установка Homebrew

Управлением пакетов, которые не идут в комплекте с macOS, занимается утилита Homebrew.

На официальном сайте вы найдете команду для запуска установки.

Следуйте указаниям и введите пароль администратора, когда потребуется. В результате выполнения команды будет установлен Homebrew и XCode Command Line Tools.

Чтобы убедиться, что установка прошла успешно, выполните команду “brew --version”.

$ brew --version Homebrew 1.1.4 Homebrew/homebrew-core (git revision 4a1f; last commit 2016-12-15)

Подключаем репозитории с необходимыми пакетами.

И выполняем обновление всех репозиториев, подключенных к brew.

Всё готово к установке пакетов.

Установка Apache

С помощью Homebrew установим Apache со всеми необходимыми скриптами.

Перед установкой следует отключить и убрать из автозагрузки встроенный Apache-сервер.

Операция займет время. Ожидайте появления строки, которая подтвердит успех установки.

Задаем права и включаем автозагрузку свежеустановленного сервера.

Apache успешно установлен

Решения возможных проблем

Попробуйте перезагрузить сервер следующей командой.

В поиске проблемы вам могут помочь логи сервера. Посмотреть свежие записи можно с помощью такой команды.

Apache контролируется с помощью apachectl. Следующие команды могут быть полезны.

$ sudo apachectl start $ sudo apachectl stop $ sudo apachectl -k restart

Настрока Apache

У вас есть установленный веб-сервер. Пора настроить его.

Первым делом мы изменим директорию для хранения сайтов. Откройте для редактирования конфигурационный файл Apache.

Найдите строку, где задается параметр DocumentRoot.

И измените её на следующую, где your_user — имя вашего аккаунта.

Также надо изменить тег , чтобы его параметр совпадал с DocumentRoot.

Обратите внимание, что кавычки отсутствуют. Стандартный редактор автоматически может заменить их на другие символы, что может стать причиной ошибки.

Если вы планируете в локальных проектах использовать файл дополнительной конфигурации сервера .htaccess, то обратите внимание на настройки AllowOverride и mod_rewrite.

В блоке найдите опцию AllowOverride, которая отвечает за возможность использования .htaccess, и измените её на следующую.

Пользователи и группы

Мы направили обращения Apache к сайтам в директорию Sites, которую поместили в домашнем каталоге. Обычно Apache работает от имени системного пользователя daemon группы daemon, из-за этого могут возникнуть некоторые проблемы с доступом. Необходимо задать, пользователя и группу, от чьего имени Apache будет работать.

В конфигурационном файле Apache найдите User и Group и измените на следующее. your_user — имя вашего аккаунта.

Директория для локальных сайтов

Создайте папку для сайтов в домашнем каталоге.

Следующая команда создаст в папке Sites файл index.html и поместит в нем код первой веб-страницы.

Чтобы изменения в файле настроек вступили в силу, необходимо перезагрузить сервер.

Установка PHP

На этом шаге мы установим PHP 5.6 и PHP 7.0, а также настроим скрипт переключения между версиями PHP.

Выполните установку необходимых версий PHP с помощью следующих команд.

$ brew install php70 --with-apache $ brew unlink php70 $ brew install php56 --with-apache

Если потребуется, вы можете настроить каждую версию языка в соответствующих php.ini.

Знакомим Apache и PHP

Вы успешно установили нужные версии PHP, но теперь нужно сказать Apache использовать их.

Вместо нее добавьте следующие строки для подключения ваших версий PHP.

Оставим незакомментированным php5_module, чтобы использовать его сейчас. Скрипт для переключения между версиями добавим немного позже.

Найдите ниже настройку указания на корневой файл директории.

И замените её следующими настройками.

Сохраните файл настроек и снова перезагрузите сервер.

Проверяем установку PHP

Создайте в директории с сайтами файл index.php с содержанием “

Переключение версий PHP

Установим небольшой sphp скрипт в стандартную для brew директорию /usr/local/bin.

Homebrew при установке должен был добавить свои директории /usr/local/bin и /usr/local/sbin в переменную $PATH. Убедимся в этом.

Если вышеуказанные директории отсутствуют в результат выполнения команды у вас, то выполните следующую команду, которая исправит это.

Остановите и запустите Apache. Не перезагружайте.

На следующий код.

Сохраните файл настроек и закройте его.

Проверим возможность переключения версий PHP.

Выполните команду sphp с двумя цифрами нужной версии.

Установка MySQL

Для установки MySQL введите следующую команду.

We've installed your MySQL database without a root password. To secure it run: mysql_secure_installation To connect run: mysql -uroot To have launchd start mysql now and restart at login: brew services start mysql Or, if you don't want/need a background service you can just run: mysql.server start ==> Summary /usr/local/Cellar/mysql/5.7.16: 13,511 files, 439M

Выполните указанные действия, если необходимо установить mysql на автозапуск.

Установка Redis, Memcached

С помощью Homebrew установка дополнительного ПО максимально проста.

Настроим автозагрузку и запустим Redis.

Настроим автозагрузку и запустим Memcached.

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

$ sphp 70 $ brew install php70-redis $ brew install --HEAD homebrew/php/php70-memcached

В пункте “ дополнительные .ini файлы” вы увидите ini файлы установленных расширений.

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

Смените версию PHP перед началом установки расширений для нее.

$ sphp 56 $ brew install php56-redis php56-memcache php56-memcached

Создание локального сайта

Для работы над несколькими проектами сразу удобно создать отдельную папку и доменное имя для каждого.

Например, ваш проект называется сodex. Первым делом создайте директорию.

Локальный сайт codex.local будет находиться на вашем компьютере. Поэтому нужно прописать в файле /etc/hosts адрес сервера и доменное имя.

Добавьте в конец файла следующую строку.

Теперь надо настроить сам Apache сервер. Для этого откройте для редактирования файл настроек хостов.

Добавьте следующий код, описывающий новый хост, в файл настроек. Название проекта codex уже вписано в нужные строки. Замените your_user на логин вашего пользователя.

Перед подключением первого локального сайта необходимо включить возможность использования хостов.

После этих действий нужно перезагрузить сервер.

Теперь сайт, находящийся в директории

Заключение

После выполнения описанных в статье шагов у вас должен получиться готовый к работе веб-сервер.

В этой статье представлен наиболее простой способ разворачивания рабочего окружения непосредственно на операционной системе. Существуют и другие способы решения описанных задач: например, с использованием Open Server (для Windows) или виртуализации с помощью VirtualBox, VMWare, Vagrant, Docker и других утилит. Об использовании докера читайте в статье «Как поднять сайт в Docker».

Материалы

Если вам понравилась статья, поделитесь ссылкой на нее

Читайте далее

Мы рассказываем об интересных технологиях и делимся опытом их использования.

Читайте также: