Създаване на Уеб Сървър с Ubuntu 24.04, Apache и PHP

Създаване на Уеб Сървър с Ubuntu 24.04, Apache и PHP

Създаване на Уеб Сървър с Ubuntu 24.04, Apache и PHP: Подробно Ръководство

Тази статия ще ви преведе стъпка по стъпка през процеса на настройка на уеб сървър, работещ с операционната система Ubuntu 24.04. Ще инсталираме уеб сървър Apache, интерпретатор на PHP и ще конфигурираме сървъра за хостване на проста HTML страница. Целта е да предоставим ясни и разбираеми инструкции, така че дори начинаещи да могат успешно да следват процеса.

Предварителни изисквания

Преди да започнем, уверете се, че имате следното:

  1. Инсталиран Ubuntu 24.04: Трябва да имате работеща инсталация на Ubuntu 24.04 на вашия сървър или локална машина.
  2. Достъп до командния ред: Ще използваме терминала за изпълнение на команди. Уверете се, че имате права за sudo (super user do).
  3. Интернет връзка: Необходима е за изтегляне на пакети.

Стъпка 1: Актуализиране на Системата

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

Отворете терминала и изпълнете следните команди:

sudo apt update
sudo apt upgrade

Първата команда (apt update) изтегля информация за наличните пакети от конфигурираните източници. Втората команда (apt upgrade) инсталира по-нови версии на вече инсталирани пакети. По време на процеса може да бъдете попитани дали искате да продължите. Въведете y (yes) и натиснете Enter.

Стъпка 2: Инсталиране на Уеб Сървър Apache

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

За да инсталирате Apache, изпълнете следната команда в терминала:

sudo apt install apache2

След като инсталацията завърши, Apache ще стартира автоматично. Можете да проверите състоянието на услугата с командата:

sudo systemctl status apache2

Ако Apache работи правилно, ще видите съобщение, показващо, че услугата е активна (active (running)).

За да се уверите, че уеб сървърът е достъпен, отворете уеб браузър и въведете IP адреса на вашия сървър. Ако работите локално, можете да използвате http://localhost или http://127.0.0.1. Трябва да видите страница по подразбиране на Apache, която гласи „It works!“.

Конфигуриране на Firewall (Защитна Стена)

Ако имате активирана защитна стена (firewall) на вашата Ubuntu система, трябва да разрешите трафик към Apache. Ubuntu използва ufw (Uncomplicated Firewall).

Проверете състоянието на ufw:

sudo ufw status

Ако е активен, трябва да разрешите HTTP (порт 80) и HTTPS (порт 443) трафик за Apache.

За да разрешите HTTP, изпълнете:

sudo ufw allow http

За да разрешите HTTPS (ако планирате да използвате SSL/TLS), изпълнете:

sudo ufw allow https

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

Стъпка 3: Инсталиране на PHP

PHP е популярен скриптов език, който често се използва за разработка на динамични уеб приложения.

За да инсталирате PHP и необходимите модули за Apache, изпълнете следната команда:

sudo apt install php libapache2-mod-php php-mysql

Тази команда ще инсталира:

  • php: Основният пакет на PHP.
  • libapache2-mod-php: Модул, който позволява на Apache да обработва PHP файлове.
  • php-mysql: Модул, който позволява на PHP да комуникира с MySQL бази данни.

След като инсталацията завърши, трябва да рестартирате Apache, за да активирате PHP модула:

sudo systemctl restart apache2

Тестване на PHP

За да проверите дали PHP работи правилно, създайте нов файл с име info.php в основната директория на уеб сървъра. По подразбиране тази директория е /var/www/html.

Използвайте текстов редактор (например nano):

sudo nano /var/www/html/info.php

Добавете следния PHP код във файла:

<?php
phpinfo();
?>

Запазете файла (Ctrl+X, след това Y, след това Enter).

Сега отворете уеб браузър и въведете http://вашият_ip_адрес/info.php или http://localhost/info.php, ако работите локално. Трябва да видите подробна информация за вашата PHP инсталация.

След като проверите, че PHP работи, е препоръчително да изтриете файла info.php, тъй като той може да съдържа чувствителна информация за вашия сървър.

sudo rm /var/www/html/info.php

Стъпка 4: Създаване и Хостване на HTML Страница

Сега ще създадем проста HTML страница и ще я хостваме на нашия уеб сървър.

В основната директория на уеб сървъра (/var/www/html) създайте нов файл с име index.html:

sudo nano /var/www/html/index.html

Добавете следното HTML съдържание във файла:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Добре дошли!</title>
</head>
<body>
    <h1>Здравейте от моя уеб сървър!</h1>
    <p>Тази страница е хоствана на Ubuntu 24.04 с Apache.</p>
</body>
</html>

Запазете файла (Ctrl+X, след това Y, след това Enter).

Тъй като файлът е именуван index.html, Apache автоматично ще го покаже, когато посетите основния адрес на вашия сървър (например http://вашият_ip_адрес или http://localhost).

Отворете уеб браузър и въведете IP адреса на вашия сървър. Трябва да видите HTML страницата, която току-що създадохте.

Допълнителни Конфигурации (Опционално)

Виртуални Хостове

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

По подразбиране Apache има конфигуриран един виртуален хост, който обслужва съдържание от директорията /var/www/html. За да създадете нов виртуален хост, можете да копирате файла с конфигурацията по подразбиране и да го редактирате.

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/вашият_домейн.conf
sudo nano /etc/apache2/sites-available/вашият_домейн.conf

Заменете вашият_домейн.conf с желаното име на конфигурационния файл.

Във файла с конфигурацията ще трябва да промените следните директиви:

  • <VirtualHost *:80>: Оставете непроменено, освен ако не искате да слушате на друг порт.
  • ServerAdmin webmaster@localhost: Заменете с вашия имейл адрес.
  • DocumentRoot /var/www/html: Заменете с пътя до директорията, където ще се намират файловете на вашия уебсайт (например /var/www/вашият_домейн/public_html).
  • ServerName вашият_домейн.com: Заменете с вашето реално име на домейн.
  • ServerAlias www.вашият_домейн.com: Ако имате www поддомейн, добавете го тук.

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

sudo a2ensite вашият_домейн.conf

Деактивирайте конфигурацията по подразбиране (ако не ви е необходима):

sudo a2dissite 000-default.conf

Накрая, рестартирайте Apache, за да приложите промените:

sudo systemctl restart apache2

Уверете се, че сте създали директорията, която сте посочили като DocumentRoot, и сте поставили файловете на вашия уебсайт в нея.

PHP Конфигурация

PHP има конфигурационен файл, наречен php.ini, който контролира различни аспекти на поведението на PHP. Можете да редактирате този файл, за да промените настройки като максимален размер на качване на файлове, време за изпълнение на скрипт и други.

Местоположението на файла php.ini може да варира в зависимост от вашата инсталация. Можете да го намерите, като създадете файла info.php (както направихме по-рано) и потърсите „Loaded Configuration File“ в изходните данни.

След като намерите файла, можете да го редактирате с текстов редактор:

sudo nano /etc/php/8.3/apache2/php.ini

Заменете 8.3 с версията на PHP, която сте инсталирали.

Направете необходимите промени и запазете файла. След това рестартирайте Apache, за да приложите промените:

sudo systemctl restart apache2

Сигурност

Сигурността е важен аспект при настройката на уеб сървър. Ето няколко основни мерки за сигурност:

  • Поддържайте системата и софтуера актуализирани: Редовно инсталирайте актуализации за Ubuntu, Apache и PHP, за да се предпазите от известни уязвимости.
  • Използвайте силни пароли: За всички потребителски акаунти, включително root, използвайте силни и уникални пароли.
  • Конфигурирайте Firewall: Уверете се, че вашата защитна стена е правилно конфигурирана, за да разрешава само необходимия трафик.
  • Защитете директориите: Ограничете достъпа до чувствителни директории и файлове.
  • Използвайте HTTPS: Конфигурирайте SSL/TLS сертификат, за да шифровате комуникацията между сървъра и браузъра. Това е особено важно, ако обработвате чувствителна информация. Можете да използвате безплатни сертификати от Let’s Encrypt.
  • Деактивирайте ненужни модули: Деактивирайте Apache и PHP модули, които не използвате.
  • Наблюдавайте логовете: Редовно преглеждайте логовете на Apache и PHP за необичайна активност.

Заключение

В тази статия разгледахме подробно как да настроите уеб сървър с Ubuntu 24.04, Apache и PHP. Следвахме стъпките за инсталиране на необходимия софтуер, конфигуриране на защитната стена и хостване на проста HTML страница. Разгледахме и някои допълнителни конфигурации, като виртуални хостове и PHP настройки, както и основни мерки за сигурност.

Надяваме се, че това ръководство е било полезно и ви е помогнало да създадете работещ уеб сървър. Не забравяйте да продължите да изучавате и прилагате най-добрите практики за сигурност, за да защитите вашия сървър и вашите данни. Успех с вашите уеб проекти!

Федя Серафиев

Федя Серафиев

Федя Серафиев e собственик на уебсайта urocibg.eu. Той намира удовлетворение в това да помага на хората да решават и най-сложните технически проблеми. Сегашната му цел е да пише лесни за следване статии, така че подобни проблеми изобщо да не възникват.

Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:

×