CGI: Różnice pomiędzy wersjami
(Nie pokazano 5 wersji utworzonych przez 3 użytkowników) | |||
Linia 1: | Linia 1: | ||
− | |||
Na serwerach ''MyDevil'' jest możliwość uruchamiania aplikacji opartych o CGI, FastCGI, SCGI i UWSGI. | Na serwerach ''MyDevil'' jest możliwość uruchamiania aplikacji opartych o CGI, FastCGI, SCGI i UWSGI. | ||
Linia 15: | Linia 14: | ||
AddType application/x-httpd-fastcgi0 .cgi | AddType application/x-httpd-fastcgi0 .cgi | ||
Aby przekierować cały ruch do socketa fastcgi należy dodać: | Aby przekierować cały ruch do socketa fastcgi należy dodać: | ||
− | + | SetHandler application/x-httpd-fastcgi0 | |
Aplikacje oparte o FastCGI należy podbindować do socketu <code class="directory">/usr/home/''login''/domains/''domena''/fastcgi0.sock</code> i nadać im uprawnienia <code>o+rw</code>. Każda domena może używać aż do 10 socketów fastcgi. Przykładowo, socket wybiera się wpisując w .htaccess jedną z poniższych linijek (obsługa dla pliku z rozszerzeniem .cgi): | Aplikacje oparte o FastCGI należy podbindować do socketu <code class="directory">/usr/home/''login''/domains/''domena''/fastcgi0.sock</code> i nadać im uprawnienia <code>o+rw</code>. Każda domena może używać aż do 10 socketów fastcgi. Przykładowo, socket wybiera się wpisując w .htaccess jedną z poniższych linijek (obsługa dla pliku z rozszerzeniem .cgi): | ||
Linia 38: | Linia 37: | ||
/usr/home/''login''/domains/''domena''/fastcgi9.sock | /usr/home/''login''/domains/''domena''/fastcgi9.sock | ||
− | + | ==== Tworzenie socketu ==== | |
− | + | ||
+ | spawn-fcgi -M 0777 -F '''1''' -s /usr/home/login/domains/example.com/fastcgi0.sock /usr/local/sbin/fcgiwrap | ||
+ | |||
+ | Pogrubiona cyfra 1 to liczba workerów, czyli aplikacji serwujących skrypty CGI jednocześnie. Mniejsza ilość oznacza, że w razie większej liczby użytkowników niektórzy z nich mogą zobaczyć błąd - jeden worker jest w stanie obsłużyć jednego użytkownika na raz, dopiero gdy skrypt CGI się zakończy może obsłużyć następnego użytkownika. | ||
=== Konfiguracja SCGI === | === Konfiguracja SCGI === |
Aktualna wersja na dzień 00:07, 13 sie 2018
Na serwerach MyDevil jest możliwość uruchamiania aplikacji opartych o CGI, FastCGI, SCGI i UWSGI.
Niektóre aplikacje mogą wymagać aktywnej opcji binexec
Spis treści
Wstępna konfiguracja domeny
Do uruchomienia strony wykorzystującej CGI, FastCGI, SCGI bądź UWSGI należy najpierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:
- Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS,
- Została dodana Strona WWW z wskazaniem typu PHP.
Konfiguracja FastCGI
Za pomocą pliku .htaccess
definiuje się które żądania zostaną przekierowane do socketu fastcgi. Aby żądania do konkretnych rozszerzeń były obsługiwane przez fastcgi należy dodać:
AddType application/x-httpd-fastcgi0 .cgi
Aby przekierować cały ruch do socketa fastcgi należy dodać:
SetHandler application/x-httpd-fastcgi0
Aplikacje oparte o FastCGI należy podbindować do socketu /usr/home/login/domains/domena/fastcgi0.sock
i nadać im uprawnienia o+rw
. Każda domena może używać aż do 10 socketów fastcgi. Przykładowo, socket wybiera się wpisując w .htaccess jedną z poniższych linijek (obsługa dla pliku z rozszerzeniem .cgi):
AddType application/x-httpd-fastcgi0 .cgi AddType application/x-httpd-fastcgi1 .cgi AddType application/x-httpd-fastcgi2 .cgi (...) AddType application/x-httpd-fastcgi9 .cgi
Przekierowanie całego ruchu do socketu fastcgi:
SetHandler application/x-httpd-fastcgi0 SetHandler application/x-httpd-fastcgi1 SetHandler application/x-httpd-fastcgi2 (...) SetHandler application/x-httpd-fastcgi9
Każdy z socketów (uprawnienia o+rw) należy bindować na:
/usr/home/login/domains/domena/fastcgi0.sock /usr/home/login/domains/domena/fastcgi1.sock /usr/home/login/domains/domena/fastcgi2.sock (...) /usr/home/login/domains/domena/fastcgi9.sock
Tworzenie socketu
spawn-fcgi -M 0777 -F 1 -s /usr/home/login/domains/example.com/fastcgi0.sock /usr/local/sbin/fcgiwrap
Pogrubiona cyfra 1 to liczba workerów, czyli aplikacji serwujących skrypty CGI jednocześnie. Mniejsza ilość oznacza, że w razie większej liczby użytkowników niektórzy z nich mogą zobaczyć błąd - jeden worker jest w stanie obsłużyć jednego użytkownika na raz, dopiero gdy skrypt CGI się zakończy może obsłużyć następnego użytkownika.
Konfiguracja SCGI
Podobnie jak w przypadku FastCGI, za pomocą .htaccess
można serwować stronę korzystającą z SCGI: Konkretne rozszerzenie:
AddType application/x-httpd-scgi0 .cgi
Lub cały ruch:
SetHandler application/x-httpd-scgi0
Aplikacje oparte o SCGI należy uruchomić na serwerze i podbindować do socketu /usr/home/login/domains/domena/scgi0.sock
i nadać im uprawnienia o+rw. Analogicznie jak w przypadku FastCGI, możemy uruchomić do 10 socketów.
Konfiguracja UWSGI
Podobnie jak w przypadku FastCGI, za pomocą .htaccess
można serwować stronę korzystającą z UWSGI: Konkretne rozszerzenie:
AddType application/x-httpd-uwsgi0 .cgi
Lub cały ruch:
SetHandler application/x-httpd-uwsgi0
Aplikacje oparte o UWSGI należy uruchomić na serwerze i podbindować do socketu /usr/home/login/domains/domena/uwsgi0.sock
i nadać im uprawnienia o+rw. Analogicznie jak w przypadku FastCGI, możemy uruchomić do 10 socketów.