Что значит развернуть сервер
Как установить локальный сервер на Windows
Узнайте, как установить то, без чего не может обойтись ни один веб-разработчик.
Под локальным сервером в веб-разработке обычно понимают набор ПО, которое позволяет запускать сайты на своём компьютере, реже — сам компьютер. Доступ к этим сайтам есть только на одном устройстве (потому-то он и локальный), но этого достаточно, чтобы программист мог всё протестировать.
Из этой статьи вы узнаете, как установить сервер на Windows.
Пишет о программировании, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.
Какой сервер выбрать
Чаще всего используются локальные серверы Denwer (джентльменский набор веб-разработчика), Xampp и Open Server — все три бесплатны.
Первый (Denwer) прошёл проверку временем и любим многими специалистами. Однако он уже достаточно давно не поддерживается разработчиками, поэтому придётся самостоятельно обновлять некоторые модули — например, версию PHP и СУБД (система управления базами данных).
Также сам он не совсем удобен: интерфейс установщика — консоль, а все настройки нужно вносить в специальные файлы с помощью «Блокнота».
Я бы посоветовал новичкам этот вариант, потому что тогда они на практике узнают, как всё устроено. Но время движется вперёд, поэтому лучше концентрироваться на изучении чего-то более современного.
В этой статье мы рассмотрим Open Server. Его преимущества:
Главный недостаток, пожалуй, — большой вес:
Разворачиваем локальный сервер на Windows
Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на Windows8. Ну пожааалуйста». И так как отогнать её никак не получалось, я запаслась чаем и печеньками и приступила.
На установку системы и всех необходимых программ ушло не более двух часов, но затем наступил самый интересный момент: мне нужно было развернуть рабочее окружение, а именно — GIT + локальный сервер (Apache, MySQL, PHP, nginx, memcached, mongodb). Помятуя об опыте предыдущих установок, на этот раз я решила весь процесс задокументировать и сохранить для потомков.
Дисклаймер номер раз: «я не программист» (с), а дизайнер интерфейсов и фронтенд-технолог (но в некоторых случаях могу помочь коллегам и накодить что-нибудь этакое, и меня даже потом за это не побьют)
Дисклаймер номер два: да, я прекрасно представляю, что в Ubuntu всё это делается в разы быстрее. Но я работаю на Windows, так исторически сложилось.
Наш план работ включает установку следующих продуктов:
1. PuTTY
PuTTY — свободно распространяемый клиент для различных протоколов удалённого доступа, включая SSH, Telnet, rlogin.
В состав PuTTY входит несколько утилит, но мне в работе нужны только он сам и Pegeant (агент SSH-аутентификации, в котором хранятся ключи от git-репозиториев).
Офсайт: перейти
Если вам не нужны никакие SSH-и, забудьте об этом пункте и идём дальше.
2. GIT
Для работы с git я уже не первый год использую TortoiseGit, который стабилен, гуёв и на 146% закрывает все мои потребности. Вобщем, рекомендую.
Офсайт: перейти
2.1 Для работы TortoiseGit требуется git для Windows, который можно забрать на гуглекоде;
2.2 сам TortoiseGit устанавливаем отсюда
3. Denwer
Денвер — Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер») — проект Дмитрия Котерова, набор дистрибутивов (Apache, PHP, MySQL, Perl и т.д.) и программная оболочка, используемые Web-разработчиками для разработки сайтов на «домашней» (локальной) Windows-машине.
Офсайт: перейти
3.1 Установка
Нам потребуется скачать базовый комплект и дополнительные модули PHP5.
нет, не просто скачать, а получить ссылки на скачивание по email! То есть вам придется вбивать свою почту, а также имя и фамилию два раза в форме под большим заголовком «Регистрация». «Регистрация требуется в связи с будущим выходом Денвера-4.» уже который год как бы извиняется форма, но я ей больше не верю(.
Обычно установка денвера проходит быстро и безболезненно, но на Windows8 на меня напала ошибка, которая ругалась на отсутствующую библиотеку msvcr71.dll. Библиотеку можно забрать здесь и положить в папку «\Windows\System32\» (x32) или «\Windows\SysWOW64\» (x64). После того, как файл улегся в папку, откройте его свойства и нажмите кнопку «Разблокировать».
3.2 Проверка работоспособности
После установки Денвера, создадим тестовый скрипт, на котором будем проверять работоспособность всего того, что мы установим впоследствии.
Идем в Z:\home и добавляем новый сайт: создаем папку test.local, в ней папку «www», в которую добавляем файл index.php с невероятно креативным текстом:
Перезапускаем Денвер, открываем в браузере www.test.local, впечатляемся и идём дальше
4. Memcached
Memcached — связующее программное обеспечение, реализующее сервис кэширования данных в оперативной памяти на основе парадигмы хеш-таблицы.
Memcache — расширение для php, предоставляет удобный процедурный и объектно-ориентированный интерфейс к memcached, высокоэффективному кеширующему демону, который был специально разработан для снижения нагрузки на базу данных в динамических веб приложениях.
4.1 Установка memcached
А. скачиваем архив с бинарником: Memcached 1.4.5 for Windows отсюда
В. распаковываем содержимое архива в \usr\local\memcached
4.2 Установка memcache
А. скачиваем архив с библиотекой отсюда
В. распаковываем содержимое архива в \usr\local\php5\ext\
С. открываем файл php.ini (\usr\local\php5\php.ini) и подключаем расширение:
extension=php_memcache.dll
4.3 Настраиваем запуск Memcached вместе с запуском Denwer
А. создаём файл с именем «memcached.pl» в директории \denwer\scripts\init.d\
4.4 Проверяем результат
В наш тестовый скрипт (index.php) добавляем:
Перезапускаем Денвер и смотрим, что получилось
5. Nginx
Nginx — простой, быстрый и надёжный сервер, не перегруженный функциями.
Офсайт: перейти
5.1 Настройка Nginx
A. скачиваем с офсайта Windows-версию и распаковываем в \usr\local\nginx
B. настраиваем виртуальный хост для нашего тестового сайта. Для этого открываем \usr\local\nginx\conf\nginx.conf и добавляем туда
Это пример настроек из реального проекта, ваши настройки, очевидно, могут отличаться.
5.2 Настройка Apache
По-умолчанию Апач работает на 80-м порту, но мы только что отдали этот порт Nginx-у, поэтому теперь необходимо изменить шаблон для виртуального хоста в настройках апача и назначить ему порт, отличный от 80-го (например, 8080).
Открываем \usr\local\apache\conf\httpd.conf и изменяем номер порта
5.3 Настраиваем запуск Nginx вместе с запуском Denwer
A. создаём файл с именем «nginx.pl» в директории \denwer\scripts\init.d\
5.4 Проверяем результат
Положим рядом со скриптом файл style.css с содержанием
И облагородим наш index.php:
Теперь перезапускаем Денвер и любуемся результатом. Если CSS-файл подключился – Nginx работает нормально.
6. MongoDB
MongoDB — документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц.
Офсайт: перейти
6.1 PHP-driver
А. Скачиваем библиотеку php_mongo.dll с этого сайта: и закидываем в папку \usr\local\php5\ext\
Методом проб и ошибок было установлено, что подходящий драйвер содержится в архиве mongo-1.2.5.zip/mongo-1.2.5-php5.3vc9ts.zip. Если у вас по какой-то причине не заведётся, попробуйте другие версии.
B. подключаем расширение в php.ini
extension=php_mongo.dll
6.2 Установка Mongo
6.3 Настраиваем запуск MongoDB совместно с денвером
A. создаём файл с именем «mongod.pl» в директории \denwer\scripts\init.d\
6.4 Проверяем результат
Запустим консольный интерфейс mongo
> Z:\usr\local\mongodb\bin\mongo.exe
и выполним вставку и вывод тестового значения в базу “test”
> db.test.save( < name: “Habr!” >)
> db.test.find()
В результате должно получиться следующее:
6.5. Установка интерфейса управления Mongo-базами
На офсайте MongoDB есть список и краткие обзоры админок, так что можно выбрать по вкусу.
Я для себя выбрала RockMongo, поэтому именно с её помощью мы окончательно удостоверимся, что у нас всё работает и никуда не падает.
А. скачиваем архив с админкой с этой страницы. Выбираем, естественно, версию для Windows. На момент написания статьи это RockMongo-on-Windows v0.0.4
B. из архива берём папку \rockmongo-on-windows\web\rockmongo и копируем её в директорию нашего тестового сайта
Открываем config.php и меняем значение параметра
C. Проверяем результат по ссылке www.test.local/rockmongo/index.php
Поздравляю! Теперь мы окончательные и бесповоротные молодцы.
Бонус №1. Работа с php из консоли Windows
Возможно, кому-то пригодится. Мне вот пригодилось, когда наш злобный техлид решил, что «SQL-файлы – это ващепрошлыйвек, давайте юзать миграции». Я, конечно, для приличия попыталась изобразить полное непонимание и даже пустить слезу, но была разоблачена и отправлена разбираться с тем, как это работает на Windows.
Оказалось, что всё что нужно для счастья – это прописать PHP директорию в PATH.
Нажимаем на «Изменить» и добавляем в конец строки
;Z:\usr\local\php5
Теперь проверим, что всё заработало.
В директории тестового сайта создадим файл console.php
Открываем консоль (можно прям из этой же папки – щелкаем правой кнопкой мыши с зажатым SHIFT-ом на пустом месте и выбираем пункт «Открыть окно команд»).
Вводим:
> php console.php “UserName”
Консоль отвечает:
> “Hello, UserName!”
PHP побеждён, всеобщее ликование, апплодисменты, занавес.
Бонус №2.
Все файлы и примеры, упомянутые в статье одним архивом бесплатно без смс: на гитхабе
Надеюсь, что данный материал окажется полезен.
Буду благодарна за замечания и предложения.
Что такое сервер и для чего он нужен
Содержание
Содержание
Сегодня сервера используются везде, от предприятий и промышленных комплексов, до государственных и военных структур.
Нередко можно услышать фразы вроде «правительственные сервера» или «сервера компании, бренда».
Для многих сервер — это просто корпоративный компьютер, предназначенный для обработки и хранения информации, но это не совсем так.
Ликбез для чайников
Каждый сервер запускается для выполнения определенных задач, вот некоторые из них:
Существуют сервера для рендера, майнинга, разнообразных облачных технологий и научных исследований.
Каждый сервер требует индивидуальной конфигурации, подбора оборудования и комплектующих.
Понятным языком — что такое сервера, для чего нужны
Сервер — компьютер, подключенный по локальной или внешней сети, к которому периодически обращаются другие компьютеры, именуемые клиентами.
Не каждый сервер стоит на серверном программном обеспечении и состоит из серверных комплектующих, но каждый сервер находится в одной сети с другими компьютерами.
Серверные системы отличаются от стационарных ПК, и служат для выполнения иных задач.
Для корпоративных и коммерческих целей собираются полноценные серверные платформы. Такие сборки отличаются от десктопов серверными процессорами, материнскими платами и даже оперативной памятью.
Серверные процессоры отличаются от десктопных по нескольким показателям:
В последние годы, компания AMD стала выпускать как серверные, так и десктопные модели процессоров с одинаковым количеством потоков и ядер, в то время как Intel не отступает от производственных стандартов.
Модель процессора | AMD EPYC 7742 | AMD Ryzen Threadripper 3990X | Intel Xeon Platinum 8380HL | Intel Core i9-10980XE Extreme Edition |
Платформа | Сервер | Десктоп | Сервер | Десктоп |
Количество ядер | 64 | 64 | 28 | 18 |
Количество потоков | 128 | 128 | 56 | 36 |
Базовая тактовая частота процессора | 2.3 ГГц | 2.9 ГГц | 2.9 ГГц | 3.0 ГГц |
Максимальная тактовая частота процессора | 3.4 ГГц | 4.3 ГГц | 4.3 ГГц | 4.8 ГГц |
Кэш-память | 256 МБ | 256 МБ | 38.5 МБ | 24.75 МБ |
Макс. объем памяти | 4 ТБ | 1 ТБ | 4.5 ТБ | 256 ГБ |
Макс. число каналов памяти | 8 | 4 | 6 | 4 |
Макс. пропускная способность памяти | 190.7 ГБ/с | 95.37 ГБ/с | 187.2 ГБ/с | 94 ГБ/с |
Учитывая объемы ОЗУ, устанавливаемые на серверные сборки, десктопная версия операционной системы подойдет далеко не всем предприятиям.
Например, Windows 10 в 2020 году ограничена двумя терабайтами ОЗУ, при этом Windows Server 2019 способна работать при 24 терабайтах оперативной памяти.
Основной задачей серверных систем является обработка максимальных объемов информации в кратчайшие сроки.
На серверах обычно хранят и редактируют данные, устанавливают производственное программное обеспечение и производят расчеты.
Как понять, что вашему малому предприятию (или не малому) пора обзавестись собственным сервером
В чем собственный сервер может помочь предприятию?
Если предприятие нуждается в подобных услугах, то пора обзавестись собственным сервером.
Как создать виртуальный сервер на своем компьютере
Я расскажу о том, при каких обстоятельствах понадобится виртуальный сервер, какие существуют программы для его создания и как взаимодействовать с ними.
Для чего нужен виртуальный сервер на компьютере
VDS-сервер (если быть точнее, локальный сервер), развернутый на локальном компьютере, пригодится при тестировании уже готового сайта, при внедрении в него новых скриптов и дополнений, которые окажут то или иное влияние на общую работоспособность проекта. Помимо тестирования, на виртуальном сервере происходит и отладка добавленных компонентов. У вас появляется возможность редактировать их под себя до момента релиза.
Однако стоит уточнить, что полноценную реализацию VDS-сервера на одном локальном компьютере все равно не развернуть, поэтому за помощью придется обращаться к программам для создания локальных серверов, которые и помогут обойтись без приобретения услуг на сторонних сайтах.
Создание локального сервера на компьютере
Приобретение VDS подходит в том случае, когда у вас уже есть готовый проект. Для тестирования же целесообразно использовать локальный сервер при помощи специальных программ. Одним из лучших решений можно считать OpenServer. Этот инструмент подойдет начинающим, поскольку легко устанавливается и настраивается. Ниже я даю ссылку на тематическую инструкцию, которая поможет разобраться с тем, как начать пользоваться этой программой.
Существует огромный список локальных серверов, доступных для установки как в Windows, так и Linux. Ознакомиться с ними можно в отдельной статье, перейдя по ссылке ниже.
Переход на виртуальный сервер
Выше вы ознакомились с информацией об организации виртуального сервера и подключении локального на своем компьютере. Из этого уже понятно, что все процессы довольно сложны и подходят только в определенных ситуациях. Зачем создавать сервер самостоятельно, когда за небольшую плату можно купить виртуальный сервер и использовать его для своих целей? Например, Timeweb предлагает высокопроизводительные VDS от 45 рублей в месяц.
Приведу несколько примеров, для чего нужен VDS-сервер, а в каких ситуациях он просто необходим.
Существуют и другие факторы, но это самые основные. Теперь вы можете сформировать полную картину того, нужно ли вам переходить на VDS-сервер или подойдет локальный вариант.
Можно ли самому запустить VDS-хостинг?
В сети есть много статей, рассказывающих о том, что создать VDS самому – не такая уж и сложная задача. Особенно если запустить его на своем компьютере и продавать. Хочу уверить, что это полный абсурд.
Разумеется, VDS или VPS-хостинг можно запустить самостоятельно, предоставляя услуги всем желающим, но точно не на своем компьютере. Это целый бизнес, требующий ответственного подхода, определенных знаний и вложений средств. Рассказывать об этом детально нет смысла, однако для общего развития уточню несколько основных деталей.
Выбор типа продажи виртуальных серверов и оборудования – с амый важный финансовый вопрос, поскольку он имеет несколько вариантов развития.
Следует посчитать все затраты, найти помощников или заняться организацией хостинга самостоятельно. Открыть его не так уж и просто, ведь это требует серьезного подхода. Обычному пользователю для тестирования своих сайтов этот вариант, естественно, не подойдет, поэтому предлагаю ограничиться локальным сервером.
Создаем свой собственный хостинг не потратив и копейки
Хотели бы вы узнать, что такое веб сервер? Или же впервые в жизни «потрогать» виртуальную машину? А может вам просто интересно, как выглядит хостинг? С любовью для пикабушников постараюсь рассказать обо всем по немножко.
Disclamer: Данный материал является ознакомительным и рассчитан на людей, которые только начинают свой путь в мире IT технологий. Технические подробности всего раскрываться не будут(но на вопросы отвечу). Следующий материал является прямым скриптом, как сделать веб хостинг. И небольшая просьба, если вы добавляете в сохранки, оцените пост, тем самым вы даете мне понять, следует ли делать подобные гайды.
В последнем пункте жмем Customize Hardware. Т.к. вы будете работать в самой ВМ и ее виртуальной оболочке, стоит увеличить значения пункта Processors до 4.
В пункте Network Adapter выбрать значение Bridged и установить галочку Replicate.
Далее нам следует получить права супер пользователя, в терминале вводим команду sudo su и вводим пароль, который вы указывали при установке системы.
Сначала мы обновим ОС до актуальной версии. Вводим в терминал команду:
Вы превосходны! Теперь вы имеете готовую машину, для создания веб сервера. Далее мы и установим наш веб сервер Nginx.
После установки вы можете посмотреть его статус с помощью команды
Собственно, веб сервер уже находится в активном состоянии и вы даже можете зайти на свой «сайт». Для этого вам стоит узнать локальный адрес своей виртуальной машины. Что бы его узнать, вводим в терминал:
Копируем наш адрес, вставляем в браузер виртуальной машины или своего компьютера, без разницы. и мы увидим автоматически сгенерированную страничку HTML при установке Nginx
Файлик этот лежит в /var/www/html/
Что бы его отредактировать, введите
При вводе пути каталогов вы можете нажимать Tab, что бы автоматически заполнялось существующее имя. Например /var/ww *жмем таб* выводится /var/www/. Так же если вы не знаете, что находится в данном каталоге, но если хотели бы узнать, нажмите таб дважды, например /var/ *2-x tab*:
Теперь нам нужно показать наш «сайт» всему миру, верно? И еще бы денег не потратить, ведь их и так нет. В этом нам поможет сервис с бесплатными динамическими DNS серверами. Он выдаст нам бесплатно доменное имя на 30 дней, его потом можно так же вручную продлевать на 30 дней.
1. Кабель в компьютер на прямую(или через свитч).
Открываем yandex.ru/internet. Копируем графу IP V4. На своем компьютере запускаете консоль от имени администратора и вводите команду:
netsh interface portproxy add v4tov4 listenport=8080 listenaddress=
YouIPv4connectport=80 connectaddress=IP адрес вашей ВМ
2. Если у нас кабель идет из роутера в компьютер.
Сначала нам следует залогиниться в веб интерфейс вашего роутера, для каждого роутера это индивидуальный процесс, придется погуглить. Внутри роутера, обычно на главное странице, есть его собственный IP адрес. Он то нам и нужен, его скопируйте и отложите не на долго. Далее нам следует найти «Переадресацию«. В условиях переадресации нужно добавить следующее правило:
Перенаправлять весь трафик с порта 8080 на порт 80, IP адрес вашей ВМ. В моем случае IP адрес 192.168.0.102, протокол TCP.
Жмем кнопку Create Hostname.
Вводим имя нашего хоста и выбираем любой Free Domain. В IPv4 вводите адрес либо своего ПК, если подключены на прямую, либо своего роутера, если подключены через роутер.
После создания домена информация на серверах noip может обновляться до суток, но обычно в течении 5 минут все заводится.
Остается финальный штрих, ввести наш новосозданный адрес, и убедиться, что все работает 🙂
Вводить следует так: ИмяВашегоСайта:8080