Witryny włączone za pomocą NGINX lub Apache ⋆ ALexHost SRL

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills
06.12.2024

Witryny włączone za pomocą NGINX lub Apache

Witryny włączone za pomocą NGINX lub Apache

NGINX i Apache to dwa najczęściej używane serwery internetowe na świecie. Oba są potężne, bogate w funkcje i wysoce konfigurowalne, co czyni je najlepszym wyborem do hostowania stron internetowych. W systemach opartych na Linuksie, NGINX i Apache obsługują zarządzanie stronami internetowymi poprzez włączanie i wyłączanie stron internetowych za pomocą systemu plików konfiguracyjnych, powszechnie określanych jako witryny włączone i witryny dostępne.

Zrozumienie dostępnych witryn i włączonych witryn

Zarówno NGINX, jak i Apache używają podobnej struktury do zarządzania stronami internetowymi. Struktura ta oddziela dostępne witryny od włączonych, umożliwiając administratorom systemu łatwe zarządzanie tym, które witryny są aktywne.

  • sites-available: Ten katalog zawiera pliki konfiguracyjne dla wszystkich witryn, które można potencjalnie obsługiwać za pomocą serwera WWW. Pliki w tym katalogu definiują wirtualne hosty lub bloki serwerów (w przypadku NGINX) i ich konfiguracje. Te witryny nie są aktywne, dopóki nie zostaną włączone.
  • sites-enabled: Ten katalog zawiera dowiązania symboliczne do plików konfiguracyjnych witryn, które są aktualnie włączone i obsługiwane przez serwer WWW. Tylko witryny, które zostały “włączone” będą aktywne i dostępne dla użytkowników.

Zarządzanie witrynami za pomocą Apache

1. Konfiguracja wirtualnych hostów Apache

Apache używa wirtualnych hostów do obsługi wielu stron internetowych z jednego serwera. Każda witryna ma swój własny plik konfiguracyjny, który określa, w jaki sposób Apache powinien obsługiwać domenę, w tym dyrektywy, takie jak katalog główny dokumentu, dzienniki i inne.

Przykładowy plik konfiguracyjny hosta wirtualnego dla Apache

Plik konfiguracyjny wirtualnego hosta można utworzyć w katalogu /etc/apache2/sites-available/. Na przykład, aby skonfigurować witrynę o nazwie example.com:

sudo nano /etc/apache2/sites-available/test.oo.md.conf

Wewnątrz pliku należy zdefiniować konfigurację dla example.com:


ServerAdmin admin@test.oo.md
ServerName (twoja_domena lub adres_Ip)
ServerAlias www.test.oo.md
DocumentRoot /var/www/test.oo.md
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log połączone

*ServerName(your_domain lub Ip_address)zastąp wartość your_domain, której używasz również dla Ip_address.

2. Włącz witrynę

Po utworzeniu pliku konfiguracyjnego hosta wirtualnego można włączyć witrynę za pomocą polecenia a2ensite (Apache 2 Enable Site):

sudo a2ensite test.oo.md.conf

Spowoduje to utworzenie dowiązania symbolicznego z /etc/apache2/sites-available/test . oo.conf do /etc/apache2/sites-enabled/test.oo.md.conf, skutecznie włączając witrynę.

3. Przeładuj Apache

Po włączeniu witryny przeładuj Apache, aby zastosować zmiany:

sudo systemctl reload apache2

4. Wyłączanie witryny

Aby wyłączyć witrynę, można użyć polecenia a2dissite (Apache 2 Disable Site):

sudo a2dissite example.com.conf

Spowoduje to usunięcie dowiązania symbolicznego w katalogu sites-enabled, a witryna nie będzie już obsługiwana.

Zarządzanie witrynami za pomocą NGINX

1. Konfiguracja bloku serwera NGINX

NGINX używa bloków serwera, które są odpowiednikiem wirtualnych hostów Apache. Pliki konfiguracyjne bloków serwera są umieszczane w katalogu /etc/nginx/sites-available/.

Przykładowa konfiguracja bloków serwera dla NGINX

Aby utworzyć plik konfiguracyjny dla example.com, uruchom:

sudo nano /etc/nginx/sites-available/test.oo.md

Wewnątrz pliku należy zdefiniować blok serwera dla example.com:

server {
listen 80;
server_name example.com www.test.oo.md;
root /var/www/test.oo.md;
index index.html index.htm;
access_log /var/log/nginx/test.oo.md_access.log;
error_log /var/log/nginx/test.oo.md_error.log;
location / {
try_files $uri $uri/ =404;
}
}

2. Włącz witrynę

Aby włączyć witrynę, należy utworzyć dowiązanie symboliczne w katalogu sites-enabled, które wskazuje na plik konfiguracyjny w katalogu sites-available. Można to zrobić za pomocą polecenia ln:

sudo ln -s /etc/nginx/sites-available/test.oo.md /etc/nginx/sites-enabled/

3. Testowa konfiguracja NGINX

Przed przeładowaniem NGINX warto przetestować konfigurację, aby upewnić się, że nie ma błędów składni:

sudo nginx -t

4. Przeładuj NGINX

Jeśli test konfiguracji zakończy się pomyślnie, przeładuj NGINX, aby zastosować zmiany:

sudo systemctl reload nginx

5. Wyłączanie witryny

Aby wyłączyć witrynę, usuń dowiązanie symboliczne z katalogu włączonych witryn:

sudo rm /etc/nginx/sites-enabled/test.oo.md

Następnie przeładuj NGINX, aby zastosować zmiany:

sudo systemctl reload nginx

Najlepsze praktyki zarządzania witrynami z NGINX lub Apache

  1. Utrzymywanie plików konfiguracyjnych w porządku: Zawsze twórz oddzielne pliki konfiguracyjne dla każdej witryny lub domeny w katalogu sites-available. Ułatwia to zarządzanie wieloma witrynami.
  2. Testuj konfiguracje przed przeładowaniem: Zawsze testuj konfigurację za pomocą apachectl configtest (dla Apache) lub nginx -t (dla NGINX) przed przeładowaniem serwera WWW. Pomoże to uniknąć problemów, które mogą zepsuć witryny.
  3. Użyj kontroli wersji dla plików konfiguracyjnych: Jeśli zarządzasz wieloma witrynami lub masz złożoną konfigurację, rozważ użycie kontroli wersji (takiej jak Git) dla plików konfiguracyjnych. Umożliwi to śledzenie zmian i wycofywanie ich w razie potrzeby.
  4. Używaj HTTPS: Zawsze konfiguruj certyfikaty SSL dla swoich witryn. Let’s Encrypt zapewnia bezpłatne certyfikaty SSL i można je łatwo zintegrować z Apache lub NGINX w celu obsługi HTTPS.
  5. Monitorowanie i logi: Zawsze konfiguruj dzienniki dostępu i błędów dla każdej witryny. Pomaga to w rozwiązywaniu problemów i monitorowaniu ruchu.

Podsumowanie

Zarówno NGINX, jak i Apache zapewniają zaawansowane sposoby zarządzania stronami internetowymi za pomocą katalogów sites-available i sites-enabled. Ta struktura umożliwia łatwe włączanie, wyłączanie i zarządzanie wieloma witrynami z jednego serwera.

W przypadku Apache można użyć poleceń takich jak a2ensite i a2dissite, podczas gdy w NGINX można ręcznie tworzyć i usuwać dowiązania symboliczne w celu włączenia lub wyłączenia witryn. Niezależnie od używanego serwera WWW, należy pamiętać o przeładowaniu serwera po wprowadzeniu zmian i zawsze testować konfiguracje przed ich zastosowaniem.

Przestrzeganie tych praktyk zapewni płynne zarządzanie wieloma witrynami na serwerze internetowym NGINX lub Apache.

Daj mi znać, jeśli potrzebujesz dalszych wyjaśnień lub pomocy!

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills