Создание сервера mac os

Устанавливаем веб-сервер на Mac OS

Инструкция по установке локального веб-сервера на Mac OS.

Далее ниже будем настраивать веб-сервер самостоятельно, без использования сторонних программ. Благо Mac OS является UNIX системой и настройка веб-сервера почти не отличается от Linux серверов.

Для установки веб-сервера можно воспользоваться готовыми решениями. Например, MAMP PRO. Но если хочется hardcor-а или не хочется платить за готовые решения, то это статья для вас.

Ставим менеджер пакетов для Mac OS

Ставим apache на Mac OS

Работаем через командную строку, но правки в файлах намного быстрее делать через сторонние редакторы, например, Sublime Text.

Устанавливаем apache

Перенастроим дефолтный конфигурационный файл:

1. Меняем директорию для сайтов

2. Меняем порт

Теперь сможем заходить на локальные сайты без указания порта

3. Меняем директиву AllowOverride

Обяжем Apache использовать файлы .htaccess.

4. Раскомментируем строку mod_rewrite

5. Поменяем стандартного пользователя

на нашего в системе и меняем его группу на stuff

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

В этом случае в строке указываем именного этого пользователя:

6. Изменим ServerName

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

Ставим последнюю версию PHP на Mac OS

Вернемся к файлу настроек апача и сообщим ему, чтобы тот использовал наш PHP. Файл:

В нем переходим к разделу загрузки модулей, видим там

Добавляем после этого

Также заменяем в этом файле

DirectoryIndex index.php index.html

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

Запустить сервис PHP

Посмотреть все сервисы

Настройки для PHP указанной выше версии будут здесь:

После изменения обязательно надо перегрузить все сервисы (не только PHP)

Устанавливаем PostgreSQL на Mac OS

Устанавливаем MySQL на Mac OS

Для управления базой данных через веб-интерфейс также можно установить phpMyAdmin:

Или использовать сторонние программы, типа Sequel Pro

Если был установлен phpmyadmin, то допишем в файл:

Если после этого сразу зайти в phpmyadmin или через любое другое приложение, будет ошибка:

mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client

В MySQL 8 изменили аутентификацию с mysql_native_password на caching_sha2_password, как на более безопасную. Если мы хотим входить как и раньше, то внесем изменения.

Перегрузим все сервисы:

Войдем внутрь MySQL

Должны зайти на сервер:

Добавим старую авторизацию и пароль: password

Но и этого не достаточно, будут ошибки:

mysqli_real_connect(): (HY000/2002): No such file or directory
mysqli_real_connect (): (HY000 / 2002): нет такого файла или каталога

а) Изменим там false на true

2. В конфиг MySQL

Теперь всё должно работать! Осталось всё запустить.

По умолчанию адрес доступа в phpmyadmin

Запуск

или также для mysql подойдет

Команды для перезапуска:

Посмотреть все сервисы:

Логи ошибок в веб-сервере на Mac OS

Если что-то пошло не так, можно посмотреть логи ошибок. Например, почему не открывается та или иная страница:

Ошибки при перезагрузке apache

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

Дальше будут показаны ошибки. По этим сообщениям станет ясно в чем причина.

H00544: httpd: bad group name stuff

Значит в конфигурации httpd.conf указан неверный пользователь. Как поправить смотрите в этой статье выше.

Cannot load /usr/local/opt/php/lib/httpd/modules/ into server

httpd: Syntax error on line 183 of /usr/local/etc/httpd/httpd.conf: Cannot load /usr/local/opt/php/lib/httpd/modules/libphp7.so into server: dlopen(/usr/local/opt/php/lib/httpd/modules/libphp7.so, 10): Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.64.dylib\n Referenced from: /usr/local/opt/php/lib/httpd/modules/libphp7.so\n Reason: image not found

httpd: Syntax error on line 183 of /usr/local/etc/httpd/httpd.conf: Cannot load /usr/local/opt/php/lib/httpd/modules/libphp7.so into server: dlopen(/usr/local/opt/php/lib/httpd/modules/libphp7.so, 10): image not found

Причина в том, что была обновлена php версия, а модуль не был изменен. Можно исправить двумя вариантами:

а) Попробовать обновить homebrew:

Обновить php или установить новую версию php:

И еще раз перезагрузить сервисы

б) Заменить вручную.

Проверим версию php:

Дальше меняем правим строки в файле /usr/local/etc/httpd/httpd.conf:

httpd not running, trying to start

Если покажет что-то вроде:

И снова запустим:

(48)Address already in use: AH00072

Ошибка появилась в Mac OS Big Sur

httpd not running, trying to start
(48)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down

Меняем значение в Listen на такое:

Читайте также:  Windows phone для nokia 535

Ошибка при импорте базы данных

phpMyAdmin — Ошибка
Incorrect format parameter

Надо увеличить лимиты:

Которые устанавливаются в файл php.ini:

Версия php может быть любой другой, которая была установлена.

Снова перезагрузим все сервисы

После этого (не всегда), чтобы сразу заработало нужно выйти и заново зайти в phpMyAdmin.

Другие ошибки

И воспользоваться подсказками. Например:

Локальное подключение к БД

Подключиться можно разными сторонними программами. На примере программы DataGrip:

В поле password пароль будет password.

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

Кстати, на сайте нет рекламы. У сайта нет цели самоокупаться, но если вам пригодилась информация можете задонатить мне на чашечку кофе в макдаке. Лайкнуть страницу или просто поблагодарить. Карма вам зачтется.

Комментарии к статье “ Устанавливаем веб-сервер на Mac OS ” (8)

Добрый день, как связаться с автором статьи?

Что именно вас интересует?

У меня на моменте:
«Войдем внутрь MySQL»

И
«Должны зайти на сервер»

Никаких ошибок не выдает, кроме синтаксической и файла по адресу «/usr/local/etc/phpmyadmin.config.inc.php
» нет.

Проблема может быть в кавычке. Посмотрите совет в конце этой статьи.

Та же проблема, мак ос биг сур.
как правильно прописать? Я пробую заменить все ковычки на скошенную все равно синтаксическая ошибка

В каком месте ошибка? Скиньте что конкретно вы вводите и куда.

А Nginx, как же он?

Зачем на локальном сервере nginx? В любом случае не подскажу, не ставил из-за ненадобности.

Источник

Домашний Mac-сервер

Бродя по интернету я наткнулся на статью, которой захотелось поделиться с вами.
Итак:

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

Идея.
Мне захотелось иметь свой личный домашний сервер. Мой Powerbook G4, с винчестером 80Gb с каждым днём заполнялся до отказа, и постоянно приходилось что-то удалять, всегда чем-то жертвовать, чтобы освободить место под другую информацию, которая была более нужной и востребованной в данный момент. С другой стороны — та информация, которая удалялась тоже являлась важной и могла потребоваться в будущем. Записывать её на болванки не хотелось, покупать внешние винчестеры тоже не хотелось, по причинам, которые станут понятны читателю ниже.

Хотелось, чтобы сервер работал всегда, к нему был доступ из любой точки мира. Чтобы он стал своеобразным продолжением моего ноутбука, и сидя дома, можно было работать с ним по Wi-Fi через AirPort Extreme Base Station, а где-то “в дороге” — с любого устройства, которое имеет выход в Интернет, будь то наладонник или сотовый телефон.

Располагать сервер дома — кощунство. Во-первых это пожаро-опасно; во-вторых он может издавать слишком много шума, и, даже если убрать его, например в шкаф, то это всё равно небезопасно не только для квартиры, но и для него самого — нормальное охлаждение в замкнутом пространстве станет невозможным.

Решено было расположить сервер на этажной площадке.

Плюсы такого решения:
На площадке всегда прохладно, а значит нормальное охлаждение не станет проблемой
Это безопасно, ведь если произойдет короткое замыкание и сервер вдруг загорится, то произойдёт это всё равно на территории площадки и не принесёт вреда квартире
Полное отсутствие шума в квартире, отсутствие дополнительного источника тепла в оной

Минусы:
Сервер могут попросту украсть, а это значит, что для него необходимо продумать систему охраны

Выбор модели.
В качестве основы для постройки сервера я приобрёл Powermac G4 (модель “AGP”) с процессором PowerPC G4 400Mhz, 1Gb оперативной памяти, DVD-RW-приводом, ZIP-дисководом, видео-карточкой на 16 мегабайт, винчестером на 60 Gb и ненужным мне SCSI-контроллёром.

В качестве операционной системы я выбрал конечно же Mac OS X Tiger Server, но о ней и о некоторых деталях, касающихся системы и PowerMac G4 мы поговорим позже, а пока перейдем к “тяжелой” части статьи.

Подготовка ящика.
Чтобы разместить сервер на подъездной площадке для него необходимо придумать ящик. Прогулявшись по магазинам типа “Электрика” или “Всё, что связано с электричеством”, я пришел к выводу, что то, что продают эти товарищи подходит чтобы хранить в них разве что картошку, которую и не жалко потерять в случае появления воров и всяких… нехороших людей. За эти ящики продавцы хотят аж пять тысяч рублей. Такой ящик может сломать даже ребенок, отогнув стенку ключом. Поэтому я решил сделать ящик самостоятельно. Закупил немного листового металла на ближайшем рынке, набросал эскиз ящика и отдал на кафедру сварочного производства в один из ВУЗов города.

Ящик получился жёстким и прочным. Не идет ни в какое сравнение с магазинным. Размеры были специально выбраны с небольшим запасом, чтобы корпусу сервера было просторно, ведь помимо самого сервера в ящике будет располагаться ещё несколько устройств, о которых мы поговорим ниже.

Читайте также:  Tcp сервер печати windows

В первую очередь для такого ящика необходимо продумать систему охлаждения. Требуется, чтобы воздух внутри оного не был горячим и постоянно прогонялся. На правой стенке ящика были сделанные множественные отверстия под большой вентилятор, который будет засасывать свежий воздух в ящик. На задней стенке точно такие же, но под меньший вентилятор, который будет располагаться во-первых чётко напротив вентилятора, установленного в блоке питания сервера, а во-вторых, станет дополнительным отсосом тепла из этой зоны. На верхней стенке ящика были также сделанны отверстия.

После того, как все технологические отверстия были готовы, я приступил к покраске ящика. Поскольку, ящик не несёт в себе предмета искусства особенной красоты, я купил самую дешевую краску, кисточку, валик и растворитель. Чтобы не затягивать с покраской лучше использовать нитровую краску.

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

После подготовки ящика я приступил к его установке. Для него было выбрано не самое удачное место — возле мусоропровода, но оно оказалось единственно-правильным с тактической точки зрения. Ящик не привлекает внимание “случайных посетителей” площадки. Все коммуникации были подведены заранее. К сожалению, я не могу рассказать что это были за провода и откуда они были подведены, но идеальным вариантом является штробление стен, с укладкой проводов и последующей замазкой. Также необходимо на фазу электропитания установить автомат-предохранитель, который, в случае возникновения экстренных повышенных токов отключит питание сервера и, таким образом, можно будет избежать больших неприятностей.

Ящик был закреплен в шести точках на анкерные строительные болты в верхней части стены, ближе к потолку. Отломать его сложно (Против лома нет приёма?). Замок лучше использовать без выступающих частей, чтобы исключить возможность спила оного.

Система охраны ящика.
Это очень важный момент. Мы придумали свою сигнализацию сами, но, к сожалению, я не могу рассказать принцип её работы по понятным причинам. Но есть некоторые параметры, которые необходимо учитывать, если читатель захочет придумать свою сигнализацию:
При незаконном (взломе) открытии дверцы сигнализация должна сработать, при последующем закрытии дверцы сигнализация не дложна отключаться и продолжать издавать сигнал тревоги до тех пор, пока она не будет отключена специальной кнопкой, которую лучше спрятать у себя в квартире или в недоступном для других месте.
Сигнализация должна показывать своё текущее состояние; в каком режиме она находится.

На рисунке выше рядом с вентилятором мы видим два отверстия в которые впоследствие были установлены два светодиода — белый и мерцающий красный. Белый светодиод извещает о работоспособности сигнализации, красный извещает том, что сигнализация находится в режиме охраны.

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

Я назвал свою сигнализацию iGuard.

Подготовка системного блока, докупка оборудования.
В этой части мы поговорим о необходимом апгрейде PowerMac G4. К сожалению, эта модель имеет очень большой минус. При подключении винчестера, скажем в 200Gb по стандартному IDE-каналу, система не увидит больше 128 Gb информации, да и вообще, ATA шина оставляет желать лучшего — это всего лишь Ultra ATA/66. В природе существует драйвер, который позволяет обмануть систему, и таким образом подключать винчестеры большего размера, но он имеет ряд существенных недостатков, о которых я говорить не буду. Скажу лишь, что после установки этого драйвера и подключении к нему винчестера Seagate Barracuda на 200Gb скорость скачивания с оного была отвратной. Да и вообще, IDE-шина — это уже прошлый век.

Я отправился в магазин Other World Computing, где подобрал себе замечательную карточку SIIG Serial ATA 4 Channel PCI-M, которая имеет четыре Serial ATA порта. Это позволит подключать самые последние и скоростные винчестеры любой ёмкости. Доставка из США обошлась не дорого и через неделю карточка была у меня.

В это же время были приобретены два топовых винчестера от Seagate ёмкостью по 400 Gb. Таким образом, суммарный объем нашего сервера увеличился до 800 Gb, что вполне неплохо для старта. В будущем, если просчитать количество свободных PCI портов, докупить ещё таких карточек, продумать систему питания и охлаждения суммарный объем может увеличиться до 13 террабайт.

Один винчестер я закрепил внутри корпуса в специальной корзинке, а другой — в отсеке, где был установлен DVD-RW- и ZIP-дисководы. Второй винчестер не имеет крепления и установлен на резиновой подушке, которая была создана из уплотнителя, который можно посмотреть выше в этой статье. Это позволило разделить источники тепла друг от друга и снизить вибрации. Также, на каждый винчестер было предусмотренно дополнительное охлаждение, таковых сейчас в продаже полно.

Внешний вид ящика, итоги “тяжёлой части”.
Вот, что получилось у меня в результате:

Настройка системы Mac OS X Server, общие принципы существования сервера в локальной сети и Интернет.
В качестве операционной системы я выбрал конечно же Mac OS X Tiger Server.

Читайте также:  Windows firewall add app

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

Благодаря замечательной программе Remote Desktop, все операции по настройке системы можно производить прямо с ноутбука, видя на своём экране экран сервера:

На моём сервере я настроил в первую очередь конечно-же Apple File Protocol. Он позволяет подключаться к серверу и работать с файлами прямо через Finder, как будто-бы эти файлы располагаются на вашем винчестере. И конечно, файлы можно открывать прямо с сервера, будь-то прайс-листы или видео. Вот как например выглядит папка Movies на моём сервере:

Встроенный FTP-сервер слишком прост, его настроек не хватает. Зато существует прекраснейший и лучший на мой взгляд FTP-сервер под Mac — CrushFTP.
Такого количества настроек мне не удавалось увидеть ни в одном FTP-сервере ранее. Перечислять все достоинства не имеет смысла. Пользователи сами могут узнать их на странице разработчика. Это пожалуй второй “Amazing”-продукт, который удовлетворит даже супер-требовательных пользователей. Особенно отметить — это Web-интерфейс, который позволяет работать с FTP через любой браузер, а также закачивать файлы на сервер через оный по технологии drag’n’drop. Также, нельзя не отметить функцию архивирования “на лету”. Через Web-интерфейс можно выделить несколько файлов/папок и нажать на кнопку ZIP. Сервер сам на лету подготовит архив, в котором будут располагаться выбранные файлы или папки и представит этот архив к скачиванию. Это невероятно.

Поддержка пользователей/групп, квот, ограничителями пропускной способности, возможности удаленного администрирования, SSL, возможность обработки .sfv файлов и виртуальные директории. CrushFTP может даже определить WAN IP адрес, если вы используете NAT firewall. CrushFTP поддерживает передачу файлов по протоколам FTP, FTPS, HTTP, HTTPS, WebDAV и SFTP.

Для Windows-пользователей локальной сети был предусмотрен Windows Sharing.

При настройке системы, необходимо помнить, что в случае внезапного отключения питания в доме и последующей его подаче, компьютер должен сам включиться, запустить необходимые приложения и подключиться к Интернет. Для автоматического подключения к Интернет я написал небольшой AppleScript, который положил в Login Items. Скрипт после входа в систему, ожидает 10 секунд, пока загрузятся все приложения, затем открывает приложение Internet Connect, подключается к Интернет посредством PPPoE и закрывает приложение Internet Connect.

Оптимизация работы по Apple File Protocol.
Безусловно, для соединения по AFP можно использовать стандартную функцию Finder “Connect to Server…”, которая располагается в меню Go. Но это не совсем удобно для работы по локальной сети, особенно для Wi-Fi, ведь при случайном отключении от сети Finder повиснет и впоследствие “отмонтирует” присоединенную share point. После этого придется вновь присоединяться, нажимать дополнительные кнопки в окне аутенфикации. Есть гораздо более интересный способ и назвается он “статическое автомонтирование”. Суть его состоит в том, что после запуска системы она автоматически примонтирует нужные share point и выведет их в Network. Не стоит путать этот метод с программами типа AutoMountMaker, это другое. Во-первых, там используется динамический метод присоединения. Да, ничего вводить не придется и сервер будет досутпен прямо из Network, но динамическое присоединение не позволяет потоково воспроизводить аудио-файлы или фильмы прямо с сервера, их необходимо будет сначала скачать.

Статический метод монтирует нужные вам share point (как с аутенфикацией, так и без) также в Network, но позволяет потоково воспроизводить контент с сервера.
Для того, чтобы создать себе automount share points необходимо проследовать в NetInfo Manager. Там выбрать путь /mounts и сделать что-то примерное, как на скриншоте ниже:

Где 10.100.0.7 — это айпи вашего сервера (у вас он может быть другим).
Обратите внимание: переменная “dir” должна обязательно начинаться с “/Network/” и заканчиваться нужной Share Point. В описанном случае эта Share Point есть Distrib.
Логин и пароль у всех конечно получится свой. Также, в Интернет можно найти больше информации об этом методе.

Эту операцию необходимо сделать один раз и больше вам не нужно будет нажимать никаких “Connect to server…”, вводить логины, пароли и отвлекаться на нажатия кнопок. Более того, этот метод не вешает Finder при неудачном отсоединении от сети. Этот метод просто работает.

Заключение, выводы, благодарности.
Создание домашнего сервера штука увлекательная и не такая сложная. Конечно, не имея навыков в пайке, электронике, програмном обеспечении сделать описанное сложнее. Цель статьи — показать, насколько важна идея, которую доводишь до конца. Это очень важно — сделать всё так, как было задумано и не спускать помарки и ошибки, а исправлять и делать всё заново, пока не будет достигнут положительный результат.

Некоторые люди мне говорили: “Зачем тебе понадобилось делать сервер на основе Mac? На основе PC это было бы гораздо дешевле!”. Возможно, это так. Впрочем, умозрительно не думается, что системный блок PC был бы в пять раз дешевле PowerMac G4. И потом, что может предложить PC? FTP? Windows Sharing? Увольте. Сервер на основе Mac — это особая любовь.

Источник

Оцените статью