Strona WWW¶
Strony WWW w SMALL.PL napędza wydajny serwer NGiNX
. Dodatkowe moduły umożliwiają korzystanie ze "standardu" .htaccess - możliwa jest łatwa edycja reguł przepisywania (rewrite), czy szablonów autoindex. A autorskie rozwiązanie firmy ADMIN.NET.PL
przezroczystego cache zapewnia niesamowitą szybkość ładowania stron.
Jedno konto w SMALL.PL umożliwia hostowanie więcej niż jednej strony WWW. Ich konfiguracja jest możliwa za pomocą panelu DevilWeb oraz przez SHELLa za pomocą modułu devil www
.
DevilWEB¶
Po zalogowaniu się do panelu administracyjnego konfiguracja stron WWW znajduje się w zakładce Strony WWW
. Po kliknięciu pokaże się lista dodanych już stron WWW.
Informacja
Po dodaniu domeny głównej jest możliwość dodania subdomen. W tym celu w polu Nazwa domeny
należy wpisać pełną nazwę subdomeny. Na przykład przy dodaniu subdomeny statystki do domeny domena.pl należy w polu Nazwa domeny wpisać statystyki.domena.pl
Aby dodać stronę należy kliknąć zakładkę + Dodaj nową stronę
. Pokaże się następujące menu.
PHP¶
Aby dodać stronę typu PHP (lub taką, która wykorzystuje CGI) należy wpisać nazwę domeny, a następnie kliknąć przycisk dodaj
. Po dodaniu witryny w Szczegóły
przy danej stronie można włączyć kompresję GZIP
, wymusić SSL
, zezwolić na wykonanie funcji PHP: eval()
, exec()
, wskazać katalogi Open Basedir
ograniczające dostęp skryptów PHP witryny do podanych katalogów.
Python¶
Aby dodać stronę typu Python należy kliknąć zaawansowane ustawienia
, wpisać nazwę domeny i wybrać typ strony Python
. Następnie trzeba wybrać plik wykonywalny Python
, czyli wersję interpretera
oraz typ konfiguracji
. Jeżeli hostowana aplikacja potrzebuje odrębnego środowiska należy skonfigurować virtualenv, później wybrać z listy rozwijanej Inny katalog
, a następnie wskazać ścieżkę do pliku wykonywalnego python
, na przykład /usr/home/login/python3/bin/python
.
Ruby¶
Uwaga
Przed dodaniem strony typu Ruby
należy skonfigurować RVM bądź skompilować Ruby
samodzielnie
Aby dodać stronę typu Ruby należy kliknąć zaawansowane ustawienia
, wpisać nazwę domeny i wybrać typ strony Ruby
. Następnie trzeba wybrać plik wykonywalny Ruby
oraz typ konfiguracji
.
Node.js¶
Aby dodać stronę typu Node.js należy kliknąć zaawansowane ustawienia
, wpisać nazwę domeny i wybrać typ strony Node.js
. Następnie trzeba wybrać plik wykonywalny Node.js
zainstalowany już na serwerze bądź skompilowany samodzielnie oraz typ konfiguracji
.
Proxy¶
Aby dodać stronę typu Proxy należy kliknąć zaawansowane ustawienia
, wpisać nazwę domeny i wybrać typ strony Proxy
. Jako adres docelowy proxy
należy wybrać serwer small.pl oraz zarezerwowany port bądź stworzone wcześniej repozytorium GIT, SVN lub HG. Strona typu proxy
umożliwia obsługę websocket
do aplikacji uruchomionej pod adresem docelowym proxy. Jeżeli aplikacja na swoim porcie udostępnia komunikację po protokole HTTPS
to należy zaznaczyć opcję HTTPS
.
Uwaga
Strona typu proxy
nie zadziała (pojawi się komunikat błędu 502) jeżeli zaznaczymy opcję HTTPS
gdy docelowa strona aplikacji na swoim porcie nie obsługuje protokołu HTTPS
, a jednie HTTP
. Tej opcji nie należy mylić z wymuszeniem HTTPS
na stronie, które to można aktywować osobno w szczegółach danej strony.
Pointer¶
Aby dodać stronę typu Pointer (wskaźnik
na inną stronę) należy kliknąć zaawansowane ustawienia
, wpisać nazwę domeny i wybrać typ strony Pointer
. Jako wskaźnik
należy wybrać wbudowaną bądź własną stronę WWW.
Devil¶
Konfiguracja stron WWW jest również możliwa z poziomu SHELLa za pomocą modułu devil www
.
Dodawanie i usuwanie domen¶
Dodawanie domeny odbywa się za pomocą polecenia devil www add DOMENA [typ]
, gdzie argumentami są:
- DOMENA - nazwa domeny,
- typ - Typ strony WWW: php, python, ruby, nodejs,
proxy
,pointer
. - W przypadków typów python, ruby i nodejs należy podać ścieżkę do pliku wykonywalnego oraz środowisko konfiguracji (production, staging, development lub test).
- W przypadku typu proxy należy podać adres docelowy proxy.
- W przypadku typu pointer należy podać istniejącą stronę, która nie jest typu pointer.
Uwaga
Jeżeli aplikacja na swoim porcie nasłuchuje protokołem HTTPS
przy dodawaniu strony typu proxy
jej adres należy poprzedzić https://
. Strona typu proxy
nie zadziała (pojawi się komunikat błędu 502) jeżeli zaznaczymy opcję HTTPS
podczas gdy docelowa strona aplikacji na swoim porcie nie nasłuchuje protokołem HTTPS
, a jednie HTTP
. Tej opcji nie należy mylić z wymuszeniem HTTPS
, która to jest dostępna jako devil www options DOMENA sslonly on
.
Usuwanie domeny odbywa się za pomocą polecenia devil www del DOMENA
.
Jest również możliwość:
- ustawiania wymuszenia SSL:
devil www options DOMENA sslonly on|off
- ustawienna kompresji GZIP:
devil www options DOMENA gzip on|off
- ustawienie obsługi funkcji PHP eval():
devil www options DOMENA php_eval on|off
- ustawienie obsługi funkcji PHP exec():
devil www options DOMENA php_exec on|off
- ustawienie open_basedir dla PHP:
devil www options DOMENA php_openbasedir katalog:katalog2:...
(domyślne katalogi zostaną zawsze dodane) - ustawienia cache:
devil www options DOMENA cache control|short|long|purge|off
orazdevil www options DOMENA cache_cookie any|none|name
- ustawienia WAF:
devil www options www_domain waf 0|1|2|3|4|5
- ustawienia ochorny przed atakami opartej o blacklisty:
devil www options www_domain blacklist 0|1|2|3|4
- ustawienia limitu procesów (dla stron typu Python, Node.js, Ruby):
devil www options DOMENA processes 1+
Przykłady¶
Na serwerze uruchomiono program nasłuchujący na porcie TCP 12345. Aby użytkownik wchodzący na stronę mojeproxy.pl otrzymał strony generowane przez ten program, należy utworzyć domenę typu proxy
na serwer lokalny, port 12345. Przykładowo, w konsoli należy wpisać:
devil www add mojeproxy.pl proxy localhost 12345
Proxy do konkretnego adresu na uruchomionym serwerze http://127.0.0.1:12345/aplikacja/:
devil www add mojeproxy.pl proxy localhost 12345 /aplikacja
Własne strony błędów¶
Użytkownik może z łatwością utworzyć własne strony błędów dla swojej strony. W tym celu należy w głównym katalogu domeny (np. /usr/home/login/domains/domena/public_html/
) utworzyć katalog errors
i umieścić w nim statyczne strony błędów. Kod PHP nie zostanie wykonany, tylko wyświetlony użytkownikowi. Poniżej prezentujemy listę stron błędów, które można zmieniać:
Kod błędu | Plik ze stroną | Opis błędu |
---|---|---|
401 | errors/401.html | wyświetlany po błędnej autoryzacji. |
403 | errors/403.html | brak dostępu do pliku/katalogu. |
404 | errors/404.html | plik/katalog nie istnieje. |
500 | errors/500.html | błąd serwera (najczęściej błędne wpisy w .htaccess). |
502 | errors/502.html | odrzucenie żądania przez backend/fastcgi (php) lub przekroczenie limitu interpretatorów. |
503 | errors/503.html | przekroczenie limitu interpretatorów. |
504 | errors/504.html | przekroczenie czasu na wykonanie żądania. |
Restart domeny¶
Aby zrestartować domenę typu python, nodejs lub ruby należy użyć polecenia devil www restart DOMENA
Limit procesów dla Phusion Passenger¶
Możliwość ustawienia ilości procesów dla stron typu python, nodejs i ruby. Składnia polecenia:
devil www options DOMENA processes <ILOŚĆ>
Gdzie:
- DOMENA - oznacza domenę WWW typu python, nodejs lub ruby.
- ILOŚĆ - ilość procesów w przedziale od 1 do 80% procesów systemowych konta hostingowego.
Opcja dostępna jest również w panelu DevilWEB:
Strony WWW (WWW Websites) ➡ Szczegóły (Details) ➡ Limit procesów (Number of processes) ➡ należy wpisać nową wartość oraz zapisać zmiany przyciskiem Zapisz zmiany (Save changes).