Archive for May, 2009

Echo Content-type: text/html echo echo

Echo Content-type: text/html
echo
echo “”
echo “Co robi Aki?
echo “”

ison=`who | grep aki`

if [ ! -z "$ison" ]; then
echo “

Aki pracuje w systemie.


else
echo “

Aki chwilowo nie pracuje w systemie.


fi

echo “”
Skrypty z parametrami


By Progs in C++  .::. (Add your comment)

Na skrypty. Należy tam skopiować

Na skrypty. Należy tam skopiować skrypt i upewnić się, że ma ustawione prawa do wykonania.

Jeśli nie masz dostępu do katalogu cgi-bin, poproś swojego administratora serwe­ra WWW o udostępnienie go. Nie możesz po prostu założyć sobie katalogu o takiej nazwie i skopiować tam skrypty — to nie będzie działać.

Teraz, kiedy masz już gotowy do uruchomienia skrypt, możesz wywołać go z wnętrza stro­ny WWW poprzez użycie odnośnika, jak opisaliśmy to wcześniej. W całości skrypt będzie wyglądał następująco:


By Progs in pierwsza  .::. (Add your comment)

W stanie zrozumieć, w tym

W stanie zrozumieć, w tym przypadku, plik HTML.
Teraz trzeba zainstalować skrypt w odpowiednim miejscu na serwerze. Ten krok jest zależ­ny od typu serwera, którego używamy. W większości przypadków, na serwerach UNIX‑owych można znaleźć specjalny katalog cgi-bin


By Progs in pierwsza  .::. (Add your comment)

“$ison” ]; then echo “Aki

“$ison” ]; then
echo “

Aki pracuje w systemie.


else
echo “

Aki chwilowo nie pracuje w systemie.


fi
Wreszcie zamykamy stronę HTML:
echo “”
I to wszystko. Jeśli uruchomimy ten program w celu przetestowania z linii poleceń, otrzy­mamy następujący rezultat:
Content-type: text/html

Co robi Aki?

Aki chwilowo nie pracuje w systemie.

Wygląda jak zwykły dokument HTML, prawda? I o to właśnie chodzi. Odpowiedź genero­wana przez skrypt jest odsyłana do serwera a później do przeglądarki. Tak więc powinna mieć postać, którą serwer i przeglądarka


By Progs in kodowanie  .::. (Add your comment)

Kończących dokument. Zacznijmy od pierwszych

Kończących dokument.
Zacznijmy od pierwszych linii kodu HTML. Generujemy je za pomocą następujących po­leceń, wykorzystujących powłokę systemu UNIX:
echo “”
echo “Co robi Aki?
echo “”
Teraz sprawdźmy, czy Aki pracuje akurat w systemie. Wykorzystamy do tego polecenie who i zapamiętamy rezultat w zmiennej ison. Jeśli akurat korzysta z systemu, zmienna ta będzie miała jakąś wartość. W przeciwnym razie będzie pusta.
ison=`who | grep aki`
Teraz sprawdźmy rezultat i zwróćmy odpowiednią informację jako część odpowiedzi gene­rowanej przez skrypt.
if [ !


By Progs in pierwsza  .::. (Add your comment)

Mieć wartość text/html. Tak więc

Mieć wartość text/html. Tak więc pierwsza część skryptu, która następuje poniżej, wyświetla po prostu linię zawierającą nagłówek a następnie pustą linię (nie wolno zapomnieć o pustej linii!):
#!/bin/sh

echo Content-type: text/html
echo
Teraz dodajemy dalszą część skryptu, treść dokumentu HTML, którą musimy przygotować samodzielnie z wnętrza skryptu. Będziemy musieli w niej wykonać następujące czynności:
wyświetlić znaczniki, tworzące pierwszą część dokumentu HTML,
sprawdzić, czy użytkownik Aki akurat korzysta z systemu i wyświetlić wiadomość,
wyświetlić resztę znaczników



Najprostszą formą skryptu CGI, który

Najprostszą formą skryptu CGI, który wywoływany jest ze strony WWW poprzez odnośnik taki, jak ten:
Czy Aki pracuje w systemie?
Kiedy wybierzemy odnośnik prowadzący do skryptu CGI, skrypt zostanie uruchomiony. Skrypt nie otrzymuje żadnych parametrów, po prostu uruchamia się i zwraca odpowiednie dane.
Najpierw określmy, jakiego typu dane będziemy generować. Ponieważ będzie to dokument HTML, content-type


By Progs in kodowanie  .::. (Add your comment)

Ona odpowiadać nagłówkowi content-type, który wysłaliśmy do

Ona odpowiadać nagłówkowi content-type, który wysłaliśmy do serwera. To znaczy, że jeśli użyliśmy nagłówka zawierającego typ text/html, reszta danych powinna zawierać kod HTML. Jeśli użyjemy typu image/gif, wtedy reszta zwracanych danych powinna zawierać binarny plik GIF. Podobnie w przypadku innych typów.
Ćwiczenie 18.1: Spróbuj
To ćwiczenie jest podobne do prostego przykładu, który służył nam do wyświetlania daty z wcześniejszej części tego rozdziału. Poniższy skrypt CGI sprawdza, czy Aki korzysta z serwera i zwraca odpowiednią odpowiedź, która pokazana jest na rys. 18.4.
Rysunek 18.4
Rezultat działania skryptu pingaki

Ten przykład



18.1: Powszechnie stosowane formaty plików i odpowiednie wartości

18.1: Powszechnie stosowane formaty plików i odpowiednie wartości content-type
Format
Wartość Content-type
HTML
text/html
tekst
text/plain
GIF
image/gif
JPEG
image/jpeg
Postscript
application/postscript
MPEG
video/mpeg

Zwróć uwagę, iż po wierszu zawierającym określenie typu zawartości musi się pojawić pusty wiersz. Oznacza on, że nie będą już przesyłane żadne inne nagłówki, a wszystkie dalsze informacje stanowią treść żądania.
Dane zwracane w odpowiedzi
Gdy już określisz typ zawartości przesyłanych informacji, będziesz mógł rozpocząć przesyłanie właściwej treści odpowiedzi. Oczywiście


By Progs in kodowanie  .::. (Add your comment)

Wygenerować nagłówek Content-type i przekazać go serwerowi,

Wygenerować nagłówek Content-type i przekazać go serwerowi, który z kolei prześle go do przeglądarki. Nagłówek ten składa się ze słów Content-type, specjalnego kodu, określającego typ przesyłanego pliku oraz znaku nowej linii:

Content-type: text/html
Każdemu typowi pliku lub zasobu odpowiada unikalny typ zawartości. To nie przypadek, że typy zawartości żądań HTTP są takie same, jak typy MIME używane przy przesyłaniu poczty elektronicznej z załącznikami MIME. W tabeli 18.1 przedstawione zostały te najczęściej używane w żądaniach HTTP.


By Progs in C++  .::. (Add your comment)

Jakie akceptuje, adresu IP komputera zgłaszającego żądanie

Jakie akceptuje, adresu IP komputera zgłaszającego żądanie oraz używanej przeglądarki.
Za każdym razem, gdy serwer przesyła odpowiedź do przeglądarki, umieszczane są w niej, między innymi, nagłówki określające typ przesyłanych informacji. Gdy żądanie dotyczy obrazu GIF lub dokumentu HTML, serwer określa typ zawartości na podstawie rozszerzenia pliku. Jednak serwer nie ma żadnego sposobu, aby określić typ wyników, jakie zostaną wygenerowane przez skrypt CGI, a zatem to właśnie skrypt



Nie jest, w zasadzie, częścią dokumentu i

Nie jest, w zasadzie, częścią dokumentu i nie jest nigdzie wyświetlany. Należy on do informacji przesyłanych przez serwer WWW do przeglądarki i umożliwia jej określenie rodzaju danych, jakie zostaną przekazane. Zawsze podczas przesyłania żądań i odpowiedzi HTTP, nagłówki wykorzystywane są do przesyłania informacji pomiędzy serwerem i przeglądarką. Na przykład, gdy przeglądarka zgłasza żądanie to wraz z nim zazwyczaj przesyła informacje dotyczące typu


By Progs in html  .::. (Add your comment)

Skryptu może się znajdować gdzie indziej i

Skryptu może się znajdować gdzie indziej i serwer musi ją stamtąd pobrać. Może to być plik dyskowy lub dane mogą zostać przekazane bezpośrednio do innego pro­gramu. Aby dokładniej dowiedzieć się, w jaki sposób skrypty CGI są zaimplemen­towane na Twoim serwerze, powinie­neś sprawdzić dokumentację swojego serwe­ra.

Pierwszą rzeczą, jaką skrypt powinien zwrócić w odpowiedzi, jest specjalny nagłówek, okreś­lający, jakiego typu informacja znajduje się w dalszej części.


By Progs in kodowanie  .::. (Add your comment)

Przeglądarki są w stanie zinterpretować. Zanim skrypt

Przeglądarki są w stanie zinterpretować. Zanim skrypt zacznie generować faktyczne dane wyjściowe, należy jednak przekazać serwerowi WWW informacje dotyczące typu generowanych informacji.

Mówiąc o odpowiedzi skryptu, mam na myśli dane, które skrypt odsyła do serwera. W przypadku UNIX-a, dane są wysyłane na standardowe wyj­ście programu i z tego miejsca serwer je odbiera. W przypadku innych syste­mów


By Progs in html  .::. (Add your comment)

O jaką powinieneś zadbać, tworząc skrypty CGI.

O jaką powinieneś zadbać, tworząc skrypty CGI. Po wykonaniu skryptu CGI, wyniki jego wykonania zostają przekazane do przeglądarki. Ogólnie rzecz biorąc, wyniki skryptu zazwyczaj będą miały postać kodu HTML. Skrypty mogą jednak generować dowolne wyniki,


By Progs in C++  .::. (Add your comment)

Testowania skryptów CGI w systemie

Testowania skryptów CGI w systemie Windows.
Anatomia skryptu CGI
Gdy już upewnisz się, że będziesz w stanie pisać skrypty CGI i umieszczać je na serwerze WWW, możesz zacząć dokładniej poznawać zasady ich tworzenia. Wszystkie skrypty CGI są wywoływane w taki sam sposób i muszą zwracać wyniki w ściśle określonej postaci, dlatego też mają pewne wspólne cechy. W tej części rozdziału przedstawię wspólny szkielet wykorzystywany we wszystkich skryptach CGI.
Nagłówki odpowiedzi
Sposób działania skryptów CGI wyjaśnię w odwrotnej kolejności. Pierwszą rzeczą, jaką omówię będą nagłówki odpowiedzi, czyli ostatnia


By Progs in kodowanie  .::. (Add your comment)

Perl. W tym celu, w

Perl. W tym celu, w pierwszej linii skryptu, należy podać położenie programu będącego interpreterem Perl-a. Zakładając, że pełna ścieżka dostępu do interpretera języka Perl to C:perlbinperl.exe, w pierwszej linii skryptu powinieneś umieścić poniższy kod:

#!C:perlbinperl.exe

Od tej chwili jesteś już gotów do tworzenia


By Progs in pierwsza  .::. (Add your comment)


You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.