Strona WWW
Serwer WWW w MyDevil napędza wydajny NGiNX. Autorskie rozwiązania MyDevil takie jak: przezroczyste cachowanie, łatki do nginxa, własny spawner PHP zapewniają niesamowitą i niespotykaną na innych hostingach szybkość ładowania stron. Dodatkowe moduły umożliwiają korzystanie ze "standardu" .htaccess dostępnego do tej pory tylko w niewydajnym Apache. Możliwa jest łatwa edycja reguł przepisywania (rewrite), czy szablonów autoindex.
Jedno konto w MyDevil 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
.
Spis treści
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.
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 danych lokalizacji.
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
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 mydevil oraz zarezerwowany port bądź stworzone wcześniej repozytorium git, svn lub hg. Strona typu proxy umożliwia obsługę websocket do aplikacji oferowanej pod adresem docelowym proxy. Jeżeli aplikacja na swoim porcie udostępnia ruch po HTTPS to należy zaznaczyć opcję HTTPS.
Strona typu proxy nie zadziała (pojawi się komunikat 502) jeżeli zaznaczymy opcję HTTPS 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 na stronie które to można aktywować osobno w szczegółach danej strony.
Pointer
Aby dodać stronę typu Pointer 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 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 trzeba podać adres docelowy proxy.
- W przypadku typu pointer trzeba podać istniejącą stronę, która nie jest typu pointer.
Jeżeli aplikacja na swoim procie 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 502) jeżeli zaznaczymy opcję HTTPS 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 jakooptions 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
devil www options DOMENA php_openbasedir katalog:katalog2:...
(domyślne katalogi zostaną zawsze dodane). - ustawienia cache.
- ustawienia WAF.
Przykłady
Na serwerze uruchomiono program nasłuchujący na porcie 12345. Aby użytkownik wchodzący na stronę mojeproxy.pl widział 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
Restart domeny
Aby zrestartować domenę typu python, nodejs bądź ruby należy użyć polecenia devil www restart domena