Установка локального сервера на Windows

Установка локального сервера на Windows

17:19, 16.08.2022

Зміст статті
arrow

  • Як встановити PuTTY
  • Установка GIT
  • Denwer
  • Memcached
  • Налаштування веб-сервера Nginx
  • Як налаштувати Apache
  • Як налаштувати автозапуск Denwer разом з Nginx
  • Як налаштувати MongoDB

Для розгортання робочого оточення вам обов'язково потрібно встановити локальний сервер на Windows –  як правило, така зв'язка включає два елементи: 

  • GIT (розподілена система керування версіями);
  • локальний сервер (MySQL, Apache, mongodb, Memcached, nginx, PHP).

У нашому випадку для наочності будемо послідовно встановлювати PuTTY, GIT, джентльменський набір Denwer (Apache, MySQL, PHP), Nginx, а також Memcached і MongoDB. Все це потрібно для повноцінного розгортання локального сервера.

Як встановити PuTTY

Цей клієнт забезпечить нам можливість віддаленого і безпечного доступу до проекту через протокол SSH або Telnet. Вам потрібно лише перейти на офіційний сайт розробника, завантажити інсталятор і встановити все стандартним способом. Ніяких складнощів не виникне. З налаштуванням розбиратися доведеться самостійно, так як це не основна тема нашої статті.

Установка GIT

Знову ж таки, йдемо на офіційний сайт TortoiseGit, вибираємо відповідну версію релізу, викачуємо і встановлюємо. Ми рекомендуємо саме TortoiseGit, так як він більш стабільний і надійний з точки зору розробки.

Denwer

Стандартний набір всякого веб-розробника, що включає інсталятор, веб-сервер, базу даних MySQL, PHP, систему управління віртуальними хостингами і ряд інших важливих компонентів.

Для установки потрібно завантажити базовий комплект Denwer, а також додаткові модулі PHP5. Тут важливо підкреслити, що доведеться пройти реєстрацію, і тільки тоді ви зможете отримати посилання на скачування програмного забезпечення на свій email.

Memcached

Про цю систему кешування об'єктів ми вже розповідали докладно в окремій статті, так що надовго тут затримуватися не будемо. Для установки вам буде потрібно завантажити архів з файлом в форматі binaries, а потім розпакувати його в директорію \\usr\ \ local \ \ memcached.

Щоб Memcached запускався разом з Denwer, доведеться написати невеликий скрипт з командами запуску. Для цього в директорії \denwer\scripts\init.d \ створіть файл з назвою memcached.pl, відкрийте його в режимі редагування і пропишіть такі рядки:

#!perl -w
package Starters::Memcached;
BEGIN { unshift @INC, "../lib"; }
 
use StartManager;
 
my $basedir = '/usr/local/memcached/';
chdir($basedir);
 
StartManager::action
  $ARGV[0],
  start => sub {
    ###
    ### START.
    ###
        print "Starting memcached\n";
        system("memcached.exe -d");
        print "  Started!\n";
  },
  stop => sub {
    ###
    ### STOP.
    ###
        print "Stopping memcached\n";
        system("TASKKILL /F /IM memcached.exe");
        print "  Stopped!\n";
  };
 

return 1 if caller;

Залишається справа за малим-потрібно створити посилання на цей скрипт в трьох різних директоріях, щоб при запуску Denwer автоматично виконувався init.d/memcached.pl. Для цього в текстовому редакторі потрібно написати:

init.d/memcached

Файл називаємо 40_memcached і зберігаємо в трьох різних папках:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

Після цього відкрийте текстовий скрипт index.php і додайте в нього три рядки:

$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
echo ‘Memcache ver: ’ . $memcache->getVersion();

Перевірити, чи працює все так, як задумано, можна шляхом перезапуску Denwer.

Налаштування веб-сервера Nginx

Під час установки локального сервера на Windows не обійтися без веб-сервера – в нашому випадку це Nginx. Вам потрібно всього лише перейти на офіційний сайт розробника, Завантажити версію для Windows і розпакувати файли в директорію \\usr\ \ local \ \ nginx.

Наступний крок-налаштувати під Ваш тестовий сайт віртуальний хост. Відкрийте \usr \ local \ nginx \ conf \ nginx.conf в режимі редагування і додайте рядки:

 	server {
          listen 127.0.0.1:80;
          server_name www.test.local test.local;
 
          if ($host = 'test.local'){
              rewrite ^/(.*)$ http://www.test.local$1 permanent;
          }
 
          location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$ {
              root Z:\home\/test.local\www;
          }
          location / {
              ssi on;
             
              proxy_pass http://127.0.0.1:8080/;
              proxy_set_header X-REQUEST_URI $request_uri;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-for $remote_addr;
              proxy_set_header Host $host;
              proxy_connect_timeout 60;
              proxy_send_timeout 90;
              proxy_read_timeout 90;
              proxy_redirect off;
              proxy_set_header Connection close;
              proxy_pass_header Content-Type;
              proxy_pass_header Content-Disposition;
              proxy_pass_header Content-Length;
 
              root Z:\home\/test.local\www;
          }

  	}

Звичайно, всі прописані вище параметри необхідно адаптувати відповідно до вашого проекту.

Установка локального сервера на windows

Як налаштувати Apache

Параметри роботи Apache за замовчуванням часто не підходять для роботи – зокрема, встановлений «з коробки» порт 80 зазвичай рекомендують міняти. Або з міркувань безпеки, або в тому випадку, якщо на цьому порту працює інший веб-сервер – наприклад, той же Nginx. Загалом, рухаємося в Налаштування Apache і міняємо шаблон для віртуального хоста з метою призначити йому інший порт.

Відкриваємо в режимі редагування файл \ \ usr \ \ local \ \ apache \ \ conf \ \ httpd.conf і шукаємо такі рядки:

#Listen $&{ip:-127.0.0.1}:$&{port:-6080}
#NameVirtualHost $&{ip:-127.0.0.1}:$&{port:-6080}
#<VirtualHost $&{ip:-127.0.0.1}:$&{port:-6080}>
#  DocumentRootMatch "/home/(?!cgi-)(.*)^1/(?!cgi$|cgi-)(.*)"
#  DocumentRootMatch "/home/(?!cgi-)(.*)/public_html^1"
#  DocumentRootMatch "/home/(?!cgi-)(.*)/public^1"
#  DocumentRootMatch "/home/(?!cgi-)(.*)^1/html/(.*)"
#  DocumentRootMatch "/home/(?!cgi-)(.*)^1/domains/(?!cgi$|cgi-)(.*)"
#  DocumentRootMatch "/var/www/html/(?!cgi-)~(.*)^1/(?!cgi$|cgi-)(.*)"
#  DocumentRoot "$&" 
#  ServerName "%&/-www"
#  ServerAlias "%&/-www" "%&/-www/www" $&{host:-}
#
#  $&{directives:-}
#
#  ScriptAlias /cgi/ "$^1/cgi/"
#  ScriptAlias /cgi-bin/ "$^1/cgi-bin/"
#  AllowEncodedSlashes on

#</VirtualHost>

Тут замість 6080 можете вказати будь-який інший зручний порт.

Як налаштувати автозапуск Denwer разом з Nginx

Переходимо в директорію \ denwer \ scripts \ init.d\, тут потрібно створити файл nginx.pl. Його вміст має виглядати наступним чином:

#!perl -w
package Starters::Nginx;
BEGIN { unshift @INC, "../lib"; }
 
use StartManager;
 
my $basedir = '/usr/local/nginx/';
chdir($basedir);
 
StartManager::action
  $ARGV[0],
  start => sub {
	###
	### START.
	###
    	print "Starting Nginx\n";
        system("start nginx.exe");
    	print "  Started!\n";
  },
  stop => sub {
	###
	### STOP.
	###
    	print "Stopping Nginx\n";
        system("nginx.exe -s stop");
    	print "  Stopped!\n";
  };
 

return 1 if caller;

Зберігаємо зміни і рухаємося далі. Тепер відкриваємо текстовий редактор, в ньому пишемо «init.d / nginx " без лапок, а потім зберігаємо під ім'ям 50_memcached в трьох різних директоріях:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

Щоб перевірити роботу скриптів, перезавантажте Denwer-якщо CSS підключається, все зроблено коректно.

Як налаштувати MongoDB

Цю документно-орієнтовану систему часто використовують на локальних серверах, так як в ній зрозуміла структура об'єкта і присутні розширені можливості запитів. Крім того, БД зручно масштабувати, що часом економить дуже багато часу. Завантажити її можна з офіційного сайту розробників.

Перед установкою MongoDB потрібно завантажити PHP драйвер-перейдіть на github і знайдіть файл php_mongo.dll. Після скачування закиньте його в директорію \\usr\\local\ \ php5 \ \ ext\\. Підключити розширення можна в файлі php.ini, додавши рядок:

extension=php_mongo.dll

Тепер приступаємо безпосередньо до установки – завантажте архів з інсталятором і розпакуйте його вміст за адресою \\usr\ \ local \ \ mongodb. Тут же відразу створюємо ще дві папки з назвами db і logs.

Далі слід установка служби:

> cd C:\WebServers\usr\local\mongodb\bin\
> mongod.exe --install --dbpath=C:\WebServers\usr\local\mongodb\db\ --logpath=C:\WebServers\usr\local\mongodb\logs\

Залишається налаштувати автозапуск MongoDB разом з Denwer. Для цього переходимо по шляху \denwer\scripts\init.d\ \ і тут створюємо файл з назвою mongod.pl. Всередину закидаємо невеликий скрипт:

#!perl -w
package Starters::mongoDB;
BEGIN { unshift @INC, "../lib"; }
 
use StartManager;
 
StartManager::action
  $ARGV[0],
  start => sub {
	###
	### START.
	###
        print "Starting mongoDB\n";
        system("net start mongoDB");
        print "  Started!\n";
  },
  stop => sub {
	###
	### STOP.
	###
        print "Stopping mongoDB\n";
        system("net stop mongoDB");
   	 print "  Stopped!\n";
  };

 
return 1 if caller;

Тепер за аналогією з попередніми кроками відкриваємо текстовий редактор, прописуємо всередину:

init.d/mongod

Називаємо файл " 60_mongod» і зберігаємо в трьох директоріях:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

Після цього рекомендуємо відвідати офіційний сайт розробників MongoDB і вибрати собі адмінку до душі – у всіх людей різні смаки щодо інтерфейсів, тому ніяких універсальних рекомендацій давати не будемо.

Нарешті, додамо, що замість PuTTY ви можете використовувати KiTTY, а зв'язку Denwer можна замінити програмним середовищем Open Server – вона теж створена з прицілом на веб-розробників і відмінно працює під управлінням Windows. Сподіваємося, наш матеріал допоміг вам розібратися, як встановити локальний сервер на Windows і підготувати його до роботи над проектом. Дякуємо за увагу!

views 5m, 35s
views 2
Поділитися

Чи була ця стаття корисною для вас?

1 користувачі вважають цю статтю корисною

Популярні пропозиції VPS

Інші статті на цю тему

cookie

Чи приймаєте ви файли cookie та політику конфіденційності?

Ми використовуємо файли cookie, щоб забезпечити вам найкращий досвід роботи на нашому сайті. Якщо ви продовжуєте користуватися сайтом, не змінюючи налаштувань, вважайте, що ви згодні на отримання всіх файлів cookie на сайті HostZealot.