Как да хостваме сами своя сайт?

13
1693

Вероятно сте чували, че е възможно да хоствате сами Вашия уеб сайт. В този урок ще Ви покажа как да направите Вашия уеб сървър достъпен в интернет. За целта ще използвам уебсайт създаден чрез платформата WordPress и безплатния софтуерен пакет XAMPP, който конфигурира наготово всички програми, които са ни нужни: Apache, MySql и PHP. Щом аз се справих, можете и вие!

Моля, обърнете внимание, че XAMPP е просто конфигурация на гореизброените програми, направен, за да бъде лесен за инсталиране и ползване. XAMPP е създаден основно за разработка на уебсайтове и не се препоръчва за хостване на уебсайтове, поради това, че той няма необходимото ниво на сигурност. Ако искате да се занимавате на корпоративно ниво с правене на сървъри, Вие би трябвало да инсталирате Apache, MySql и PHP по отделно и да направите Ваша собствена конфигурация, която да има необходимото ниво на защита. Това обаче изисква солидно ниво на подготовка и е извън темата на тази статия. Ето какво трябва да направите, ако все пак сте си решили да направите уеб сървър чрез XAMPP.

Статичен или динамичен IP адрес

Преди да започнете е необходимо да разберете от Вашия доставчик на интернет дали имате статичен или динамичен IP адрес. „Статичен“ означава, че външният IP адрес на вашия рутер (публичен IP адрес на вашата мрежа) не се променя. Някои доставчици на интернет услуги задават динамични IP адреси, които се променят с течение на времето. В нашия случай, силно се препоръчва да имате статичен IP. Можете да прочетете повече за разликите между статичните и динамичните IP адреси тук. По принцип, ако имате динамичен IP адрес, вашият публичен IP адрес ще бъде различен при следващо стартиране на рутера. Това е сериозен проблем, тъй като тогава няма да имате достъп до сървъра. Можете да проверите вашия външен IP адрес тук. Да се надяваме, че имате статичен IP адрес и можете да пропуснете следващия параграф.

Ако имате динамичен IP адрес, проверете чрез вашия интернет доставчик дали могат да дадат статичен IP адрес. Ако те не могат да ви осигурят статичен IP безплатно, можете също да проверите тази опция: noip.com. Те предоставят безплатно решение за онези от вас, които имат динамичен IP адрес. Имайте предвид, че това може да утежни нещата много. Моята препоръка е да се уверите, че имате статичен IP адрес, преди да продължите с работата по уеб сървър.

Направете компютъра си сървър

Осигурете си компютър, който можете да използвате като уеб сървър. Препоръчително е да го ползвате само за тази цел. Перфектната опция е стар компютър, който рядко използвате.

Изберете OS за вашия уеб сървър

Операционната система за вашия уеб сървър е друг важен въпрос, тъй като може да предопредели времето, необходимо за зареждане на Вашия сайт. Всички ние искаме сайт, който се зарежда веднага, нали? Ако имате опит с Linux, използвайте Linux дистрибуция. Според създателите на XAMPP, тяхната платформа функционира най-добре на linux. Ако обаче не се чувствате комфортно с Linux (като мен), можете да използвате Windows, за да създадете уеб сървър. Имайте предвид, че не е нужно да имате кой знае колко мощен компютър, ако искате да хоствате малък уеб сайт. Бих препоръчал поне 4 GB оперативна памет, за да нямате никакви притеснения относно скоростта на зареждане и броя посещения, които сървъра ще понесе. Ако старият ви компютър е далеч до това, трябва да обмислите използването на по-леки операционни система като Linux Lubuntu или Windows XP. Тези ОС са много по-ефективни откъм ресурси, в сравнение с Windows 7 или 8 и уеб сайтът ви ще работи много по-бързо и ефективно.

Още не сте се отказали? Това е духът, нека започнем тогава!

Инсталирайте localhost

В последната статия Ви показах как да създадете локален сървър или localhost. Localhost означава да инсталирате локално вашия уеб сървър, така че той да е достъпен само на вашата машина. Цялата информация, която ви е необходима, можете да намерите тук: Как се прави локален сървър?

Настройте статичен IP адрес за вашия уеб сървър

Сега, когато вече сте инсталирали localhost и сървърът е достъпен от Вашия компютър, трябва да зададете статичен вътрешен IP адрес за вашия сървър. Компютрите имат частен IP адрес, който използват за свързване към рутера. Това не бива да се бърка с външния IP на вашата мрежа, за когото говорихме по-рано. Всеки път, когато се свързвате с интернет, вашият компютър получава нов IP адрес от рутера. Това е така, защото това не изисква никаква конфигурация от страна на потребителя. За всичко се грижи рутера. Вие просто включвате ново устройство в мрежата и то автоматично се сдобива с IP адрес. Конфигурацията е динамична по подразбиране. Рутерът е този, който определя IP адреса.

Статичен IP означава, че Вашият компютърът има IP адрес, който е ръчно зададен от потребителя и не се променя при последващо рестартиране на компютъра. Той е необходим, за да достъпвате до вашия локален хост от друг компютър. За целта трябва да промените свойствата на IP version 4 (TCP / IP). Първо, отидете на start менюто и напишете command prompt в лентата за търсене. Отворете command prompt и напишете ipconfig/all. Ще видите следния екран:

Запишете Вашия Ip address, Default Gateway, Subnet Mask и имената на DNS сървърите.

В Windows 7, отидете в Control Panel -> View Network Status and Tasks -> Change Adapter Settings -> Local Area Connection. Десен бутон и изберете Internet Protocol version 4.

Трябва да създадете IP адрес по Ваш избор. Трябва да бъде същият като Default Gateway (вашият рутер), с изключение на последните три цифри. Например, бихте могли да използвате 192.168.0.12 или 192.168.0.14. Просто се уверете, че първите седем цифри на вашия IP адрес са същите като Default Gateway. Сега продължете и коригирайте настройките си с номерата, които сте записали от командния ред.

Моля, запишете старите си настройки за всеки случай, за да можете да си върнете достъпа до интернет, ако нещо се обърка. Изчакайте 5-10 минути, така че промените да влязат в сила. Ако е необходимо, рестартирате рутера. Сега вече трябва да имате достъп до интернет, като вече използвате статичен IP адрес за да достъпите рутера. Това ще бъде и статичният IP адрес на Вашия уеб сървър. Всички останали компютри от Вашата мрежата вече би трябвало да имат достъп до уебсайта ви, след като напишете IP адреса в браузъра. За да можете да направите това, не забравяйте да промените URL адреса на уебсайта си в MySQL базата данни от http://localhost/ на http://yourIpAddress/

Ако имате проблеми с тази стъпка, върнете се към първоначалните настройки и се консултирайте с вашия ISP. Те би трябвало да могат да Ви ориентират.

Направете Port Forwarding

Сега, когато имате достъп до уебсайта си във вътрешната мрежа, трябва да отидете на следващото ниво и да позволите на компютрите извън вашата домашна мрежа да имат достъп до вашия локален хост. Това се извършва чрез port forwarding или препращане на портове.

Препращането на портове ви позволява да осъществите достъп до компютър зад router. Идеята е, че когато напишете публичния IP адрес на рутера, устройството пренасочва заявката към IP адреса на уеб сървъра ви (вътрешния IP адрес, зададен по-горе). Всичко, което трябва да направите, е да влезете в настройките на рутера, да отворите порт 80 и да го вържете към вашия вътрешен IP адрес. Тук обаче може да стане малко по-сложно, тъй като има стотици различни модели рутери. За щастие има един страхотен уеб сайт, наречен https://portforward.com/. Тук можете да търсите по модел на рутер и най-вероятно ще намерите подробна информация как да отворите порт за Вашия модел. Влезте във Вашия рутер и променете настройките му. След като сте настроили правилно своя рутер, рестартирайте и вече сайтът би трябвало да е онлайн! Не забравяйте, че отново трябва да промените URL адресите на уебсайта си към новия IP адрес, този път външния IP адрес на рутера. Така, всеки път, когато браузър поиска вашия външен IP адрес, рутерът ще го пренасочва към вътрешния IP адрес на уеб сървъра.

Отстраняване на проблеми

Това е начинът, по който трябва да подходите. Въпреки това, имайте предвид, че някои неща може да не се случат по план и да се сблъскате с някои непредвидени пречки по пътя. Например, в моя случай, имах достъп само до уебсайта извън мрежата, но не и вкъщи. Прекарах доста време, като се чудех какъв е проблемът. Оказа се, че някои рутери изискват допълнителна конфигурация, за да бъдат достъпвани вътрешно (NAT настройки), докато други просто не могат да бъдат конфигурирани по този начин. Има решение и на този проблем. Например, ако вашият вътрешен IP адрес е 192.168.0.50, трябва да добавите следния ред към hosts файла на компютъра:

192.168.0.50 http://yourwebsite.com/

Можете да прочетете повече за този метод тук.

Защитете сървъра и личното си пространство

Помислете за методи да защитите уеб сървъра си, до колкото това е възможно. Задължително е да сложите парола на PhpMyAdmin. Помислете за имплементация на php скриптове, които да защитят сървъра от ddos атаки. Използвайте reCaptcha, за да спрете ботовете. Не инсталирайте ftp сървър, освен ако не знаете какво правите. Редовно правете бек-ъп на Вашия сайт на външен хард диск. Обновявайте редовно сайта си. Премахнете всякаква чувствителна информация от сървъра, която може да бъде използвана от недоброжелатели. Винаги съхранявайте данните си на външен хард диск.

Насладете се на новото си постижение

Сега е време най-накрая да се насладите на новото си достижение. Създаването на домашен уеб сървър далеч не е лесна задача и може да има някои препятствия по пътя. Това обаче е отлична възможност да научите повече за работата в мрежа и уеб сървърите и определено трябва да сте доволни от себе си!

Автор : Атанас Йонков, блогър в „Походът” и съосновател на най-големия български форум за Ексел

ДОБАВИ КОМЕНТАР

13 коментара за "Как да хостваме сами своя сайт?"

Извести ме за
avatar
Сортиране по:   най-нови | най-стари | най-висока оценка
николай
николай

Браво.Все повече като теб трябва да има

Никола
Никола

Добра статия, обаче е чудно доколко автора и е същия, който е посочен.
С реплики от сорта на “Това е духът”, която фраза не съществува на български реално, а си е директен превод на английската “That’s the spirit”

Тук там още се усеща как на моменти си е директно преведено от английски.

Като цяло не обичам да критикувам добри статии, но поне авторите да са коректни към труда на другите и да бъдат посочвани източниците. В крайна сметка всеки може да взаимства и преведе упътвания и ръководства от английски, но това не го прави техен автор.

paz
paz
Прав си. Какво става ако другите автори са го превели от друг източник или пък просто са събрали няколко източника с “copy-paste”? Кой е истинският автор? Става малко относително, но да може поне първия директен изтоник да се спомене. Писал съм статии за конференции и научни списания и знам за какво става въпрос. Всичко днешно време е авторски права, патенти, IP, източници (дали са фалшиви или не е друг върпос) и прочие. След като фирми и хора имат права над думи и фрази и могат да те съдят ….. нещата не са на добре. Ако беше статия това, трябваше да… Виж още »
Атанас
Атанас

Здравей,
Приемам си критиката, че не съм посочил източници. Статията ще бъде обновена при първа възможност. Статията е 100% авторска и емпирически доказана, т.е гореспоменатите неща са тествани и работят.

Атанас
Атанас

Източници:

1. Portforward.com: “How to setup a static ip address.”

2. Portforward.com: “How to port forward a router.”

3. Stackoverflow.com: “Access XAMPP Localhost from Internet”.

4. Stackoverflow.com: “Accessing localhost (XAMPP) from another computer over lan network.”

5. WPMudev.com: “How to install XAMPP and WordPress locally on PC, Windows.”

6. XAMPP Tutorial: “How to use XAMPP To Run Your Own Web server.”

Калин
Калин

“Инсталирайте localhost” ????
Moжете да пробвате да инсталирате и 127.0.0.1

Developer
Developer

Цялата статия е пълен ташак.

Developer
Developer

Това нещо “xampp” къде се ползва? Правилното име на стека е LAMP, като още на първата буква (Linux) тази статия олеква. Само заблуждавате хората и ги карате да свикват със софтуер който никъде не се ползва за сериозна работа.

Искрен
Искрен

XAMPP = Cross-platform Apache, MySQL, PHP, Perl. Има го от много години, подвизава се в apache friends ( https://www.apachefriends.org ) и преди да имаме машини с гигабайти РАМ, на които можем да пускаме контейнери, виртуални машини и прочее, се ползваше за т.нар. “sandbox” за разработка на php софтуер. Можеш да инсталираш XAMPP в различни папки на ОС по избор (поддържа Windows, Linux, Mac OSX) с различни конфигурации и да работиш в различна среда (например различни версии на PHP).

illko
illko

ГАНЬО ГАНЬООО… какъв “девелопър” си не знам, че говориш такива глупости 🙂

LAMP, XAMPP и MAMP СА ЕДНО И СЪЩО НЕЩО, за различни платформи. Смешко, ориентирай се към зеленчукопроизводството /в което няма нищо лошо ;)/

Искрен
Искрен

Алтернатива на XAMPP има директно от майкрософт (с допълнителни улеснения). Ето пример с WordPress:
Стъпка 1: Изтеглете Windows Web Platform Installer от официалния сайт: https://www.microsoft.com/web/downloads/platform.aspx
Стъпка 2: Пуснете го, изберете “Wordpress” и натиснете бутона “Install”
Стъпка 3: Следвайте инструкциите на екрана за завършване на инсталацията.

Ivan Ivanov
Ivan Ivanov

Супер е статията, поздравления към автора за труда.

Ivan Ivanov
Ivan Ivanov

Супер е статията! Поздравления към автора за труда.

wpDiscuz