Linux Intranet Server HOWTO

Autor: Pramod Karnad karnad@indiamail.com
v2.11, 7 Kwietnia 1997
Wersja polska: Leszek Urbański tygrys@fidonet.org.pl
v1.0, 31 Lipca 1998


Ten dokument opisuje jak ustawić Intranet używając Linuxa jako serwer obsługujący Unixa, Netware, NT i Windows. Wystarczy nawiązać połączenie z maszyną Linuxową, aby używać wszystkich platform. Znajdują się tu dokładne objaśnienia jak ustawić HTTP używając serwera NCSA, oraz jak połączyć się z nim używając klientów TCP/IP Novell'a, Microsoft Windows 3.1, WFWG, Win 95, WinNT i MacTCP z Apple PowerMac. Dokument ten został napisany w standardzie ISO8859-2. Oryginał tego dokumentu znajduje się na http://www.inet.co.th/cyberclub/karnadp/http.html.

1. Wprowadzenie

Mówiąc prosto, Intranet to opisowy wyraz używany dla implementacji technologii Internetowych w organizacjach korporacyjnych, bez zewnętrznego połączenia do globalnego Internetu. Ta implementacja jest wykonana w taki sposób, żeby dostarczyć ogromne zasoby informacyjne organizacji do każdego miejsca pracy, z minimalnym kosztem, czasem i wysiłkiem. Ten dokument stara się wytłumaczyć w prosty sposób, jak ustawić Intranet używając gotowych, tanich lub darmowych narzędzi.

Ten dokument przyjmuje, że wiesz już, jak zainstalować TCP/IP w twoim serwerze Linuxowym, oraz połączyć go fizycznie do sieci LAN używając karty sieciowej Ethernet. Przyjmuje też, że posiadasz podstawową wiedzę o systemach Netware, WinNT i Mac'ach. Konfiguracja serwera Netware została pokazana na przykładzie wersji 3.1x jako podstawy. Możesz też użyć INETCFG, uzyskując ten sam rezultat. Po stronie klientów, omawiamy Windows 3.1x, Windows for Workgroups, Win95, WinNT, oraz Apple PowerMac.

W przykładach używam prywatnych adresów sieci (RFC-1918) - 172.16.0.0 i 172.17.0.0. Możesz wybrać odpowiadające adresy, zależnie od twojej konfiguracji.


       Serwer       Serwer      Serwer
       Linuxowy     Netware     WFWG/NT
      172.16.0.1   172.16.0.2   172.16.0.3
         |           |           |           172.16.0.0
   ------+-----+-----+--------+--+--------------
               |              |
               |              | 172.16.0.254
          Stacja robocza 1  Router
           172.16.0.5         | 172.17.0.254
                              |
                    ----------+-------+--------
             172.17.0.0               |
                              Stacja robocza 2
                                  172.17.0.5

1.1 Co będzie potrzebne

Przed rozpoczęciem instalacji, będą potrzebne następujące programy:

1.2 Nowe wersje tego dokumentu

Nowe wersje Linux Intranet Server HOWTO będą okresowo wysyłane na comp.os.linux.announce i comp.os.linux.help. Będą też umieszczane na różnych Linuxowych serwerach FTP, włącznie z sunsite.unc.edu.

Najświeższa wersja tego dokumentu jest dostępna w formacie HTML pod adresem http://www.inet.co.th/cyberclub/karnadp/http.html

1.3 Kontakt z autorem

Jeżeli masz pytania lub komentarze o tym dokumencie, wyślij do mnie list na adres karnad@indiamail.com.

Sugestie, krytyka i każdy inny rodzaj poczty są zawsze mile widziane. Jeżeli znajdziesz błąd w tym dokumencie, daj mi znać, żebym mógł go poprawić w następnej wersji. Dziękuję.

2. Instalacja serwera HTTP

Kiedy ściągasz serwer, masz dwie opcje: pobrać źródła i skompilować je samodzielnie, albo wziąć binaria. Binaria pod Linuxa (ELF) są dostępne z NCSA, ale tylko najnowsza wersja.

2.1 Przygotowania przed ściąganiem

Serwer NCSA poprowadzi cię przez kolejne opcje konfiguracji i przygotuje różne pliki. Ale zanim ściągniesz HTTPd, przygotuj odpowiedzi na następujące pytania:

System Operacyjny

Po pierwsze musisz wybrać między źródłami i binariami. Jeżeli twój system nie figuruje w menu, będziesz musiał pobrać domyślne źródła i skompilować je samemu.

Żeby sprawdzić wersję twojego Linuxa przejdź do linii poleceń twojej maszyny i napisz:

  linux:~$  uname -a
powinna pojawić się linia podobna do tej
   linux:~$  uname -a
   Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586
   linux:~$

Wersja Linuxa to 2.0.29.

Pozostałe parametry mogą być podane przed ściąganiem lub później, podczas modyfikacji pliku srm.conf w katalogu /usr/local/etc/httpd/conf. Dokładne nazwy dyrektyw, które pojawiają się w pliku httpd.conf, są pokazane w nawiasach. Jedyny wyjątek to dyrektywa DocumentRoot, która pojawia się w pliku srm.conf.

Typ procesu (ServerType)

Ta dyrektywa określa sposób działania serwera HTTPd na twoim komputerze. Preferowana metoda to ,,standalone''. Dzięki temu demon HTTP będzie działał cały czas. Jeżeli wybierzesz ładowanie HTTPd przez ,,inetd'', binaria serwera będą ładowane do pamięci na każde zapytanie przeglądarek, co może spowolnić twój serwer.

Przydzielanie portu (Port)

Dyrektywa ta definiuje port twojej maszyny, na którym HTTPd będzie nasłuchiwał zapytań HTTP. Jeżeli możesz zalogować się jako root, użyj standardowego ustawienia - 80. Jeżeli nie, wybierz port od 1025 do 65535.

UserID serwera (User)

Jest to nazwa użytkownika, jaką przybierze serwer podczas odpowiadania na zapytania HTTP i wykonywania operacji na plikach. Musisz to ustalić tylko jeżeli serwer jest uruchamiany jako root. Jeżeli nie masz uprawnień root'a, użyj swoją nazwę użytkownika, a jeśli jesteś administratorem systemu, możesz chcieć stworzyć specjalnego użytkownika, żeby kontrolować prawa dostępu do plików.

Grupa identyfikacyjna serwera (Group)

Określa identyfikator grupy serwera. Jest to dyrektywa bardzo podobna do poprzedniej i jest potrzebna tylko wtedy, gdy serwer pracuje w trybie ,,standalone''.

Jeżeli nie masz uprawnień root'a, użyj nazwy twojej głównej grupy. Możesz dowiedzieć się, do jakiej grupy należysz, wydając polecenie groups w linii poleceń Linuxa.

Adres email administratora serwera (ServerAdmin)

Gdy użytkownicy serwera mają problemy z serwerem, powinni wysyłać pocztę pod adres określony tą dyrektywą. Możesz tu umieścić swój osobisty adres e-mail.

Katalog serwera (ServerRoot)

Jest to miejsce, w którym znajduje się serwer. Jeżeli masz uprawnienia root'a, umieść serwer w jego domyślnym katalogu - /usr/local/etc/httpd. Jeżeli nie możesz zalogować się jako root, wybierz podkatalog w twoim katalogu domowym. Możesz dowiedzieć się o nazwie twojego katalogu domowego komendą pwd.

Katalog plików danych serwera (DocumentRoot)

Ta dyrektywa określa miejsce plików HTML (nie tylko - np. plików graficznych, skryptów CGI itp. - przyp. tłum.). Domyślny katalog to /usr/local/etc/httpd/htdocs. Możesz także wybrać katalog domowy specjalnego użytkownika, którego wybrałeś dyrektywą ,,User'', albo podkatalog w twoim katalogu domowym, jeżeli nie możesz logować się jako root.

Jeżeli nie wiesz, jakie ustawienia wybrać, użyj domyślnych. Teraz możesz już ściągnąć NCSA HTTPd z http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html.

Powinieneś przeczytać dokumentację HTTPd, znajdującą się na http://hoohoo.ncsa.uiuc.edu/docs/, zanim zaczniesz instalować HTTPd. Jeżeli będziesz chciał skompilować kod źródłowy serwera, będziesz musiał zmodyfikować pliki makefile w każdym z trzech katalogów (support, src, cgi-src). Jeżeli twoja wersja Linuxa jest już obsługiwana przez te pliki, wystarczy tylko napisać make linux w katalogu serwera (np. /usr/local/etc/httpd). (? - przyp. tłum.)

2.2 Kompilacja HTTPd

Jest to prosta czynność - wystarczy napisać make linux w linii poleceń w głównym katalogu serwera. Uwaga: Użytkownicy starej wersji Linuxa, nie obsługującej binariów ELF, muszą odkomentować linię #define NO_PASS w pliku portablility.h (pamiętaj, że ,,#'' w pliku języka C jest dyrektywą kompilatora - można tam wpisać ,,define'' lub ,,undef'' - chociaż może jest to tam ,,zakomentowane'' dodatkowymi ,,#'' - przyp. tłum.) i ustawić DBM_LIBS = -ldbm w pliku Makefile przed kompilacją HTTPd.

3. Testowanie HTTPd

Po zainstalowaniu HTTPd, zaloguj się jako root i uruchom go, pisząc httpd &. (przyjmując, że zainstalowałeś go jako ,,standalone'') Powinieneś widzieć go teraz w liście generowanej przez polecenie ps. Najprostszy sposób przetestowania HTTPd, to telnet. W linii poleceń Linuxa napisz

   linux:~$  telnet 172.16.0.1 80

gdzie 80 jest domyślnym portem dla HTTP. Jeżeli ustawiłeś dyrektywę ,,Port'' na inny niż 80, wpisz ten numer zamiast 80. Powinieneś otrzymać odpowiedź wyglądającą tak jak to:

   Trying 172.16.0.1...
   Connected to linux.mydomain.
   Escape character is '^]'.

Teraz, kiedy wpiszesz jakikolwiek znak i naciśniesz enter, powinieneś otrzymać odpowiedź podobną do poniższej.

   HTTP/1.0 400 Bad Request
   Date: Wed, 10 Jan 1996 10:24:37 GMT
   Server: NCSA/1.5
   Content-type: text/html

   <HEAD><TITLE>400 Bad Request < /TITLE> < /HEAD>
   <BODY><H1>400 Bad Request < /H1>
   Your client sent a query that this server could
   not understand.<P>
   Reason: Invalid or unsupported method.<P>
   < /BODY>

Teraz możesz połączyć się z serwerem używając innych komputerów.

4. Łączenie się z serwerem Linuxowym

Odwołuję cię do diagramu w rozdziale Wprowadzenie, znajdują się tam używane w tym dokumencie adresy. Stacja robocza 1 (dalej nazywana W/S1) znajduje się w sieci 172.16.0.0 i może bezpośrednio połączyć się z serwerem Linuxowym, a Stacja Rple.com/">http://www.apple.com

  • Przeglądarki WWW takie jak Netscape - na http://home.netscape.com/ lub MS Internet Explorer - na http://www.microsoft.com/ lub NCSA Mosaic z http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html
  • 1.2 Nowe wersje tego dokumentu

    Nowe wersje Linux Intranet Server HOWTO będą okresowo wysyłane na comp.os.linux.announce i comp.os.linux.help. Będą też umieszczane na różnych Linuxowych serwerach FTP, włącznie z sunsite.unc.edu.

    Najświeższa wersja tego dokumentu jest dostępna w formacie HTML pod adresem http://www.inet.co.th/cyberclub/karnadp/http.html

    1.3 Kontakt z autorem

    Jeżeli masz pytania lub komentarze o tym dokumencie, wyślij do mnie list na adres karnad@indiamail.com.

    Sugestie, krytyka i każdy inny rodzaj poczty są zawsze mile widziane. Jeżeli znajdziesz błąd w tym dokumencie, daj mi znać, żebym mógł go poprawić w następnej wersji. Dziękuję.

    2. Instalacja serwera HTTP

    Kiedy ściągasz serwer, masz dwie opcje: pobrać źródła i skompilować je samodzielnie, albo wziąć binaria. Binaria pod Linuxa (ELF) są dostępne z NCSA, ale tylko najnowsza wersja.

    2.1 Przygotowania przed ściąganiem

    Serwer NCSA poprowadzi cię przez kolejne opcje konfiguracji i przygotuje różne pliki. Ale zanim ściągniesz HTTPd, przygotuj odpowiedzi na następujące pytania:

    System Operacyjny

    Po pierwsze musisz wybrać między źródłami i binariami. Jeżeli twój system nie figuruje w menu, będziesz musiał pobrać domyślne źródła i skompilować je samemu.

    Żeby sprawdzić wersję twojego Linuxa przejdź do linii poleceń twojej maszyny i napisz:

      linux:~$  uname -a
    
    powinna pojawić się linia podobna do tej
       linux:~$  uname -a
       Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586
       linux:~$
    

    Wersja Linuxa to 2.0.29.

    Pozostałe parametry mogą być podane przed ściąganiem lub później, podczas modyfikacji pliku srm.conf w katalogu /usr/local/etc/httpd/conf. Dokładne nazwy dyrektyw, które pojawiają się w pliku httpd.conf, są pokazane w nawiasach. Jedyny wyjątek to dyrektywa DocumentRoot, która pojawia się w pliku srm.conf.

    Typ procesu (ServerType)

    Ta dyrektywa określa sposób działania serwera HTTPd na twoim komputerze. Preferowana metoda to ,,standalone''. Dzięki temu demon HTTP będzie działał cały czas. Jeżeli wybierzesz ładowanie HTTPd przez ,,inetd'', binaria serwera będą ładowane do pamięci na każde zapytanie przeglądarek, co może spowolnić twój serwer.

    Przydzielanie portu (Port)

    Dyrektywa ta definiuje port twojej maszyny, na którym HTTPd będzie nasłuchiwał zapytań HTTP. Jeżeli możesz zalogować się jako root, użyj standardowego ustawienia - 80. Jeżeli nie, wybierz port od 1025 do 65535.

    UserID serwera (User)

    Jest to nazwa użytkownika, jaką przybierze serwer podczas odpowiadania na zapytania HTTP i wykonywania operacji na plikach. Musisz to ustalić tylko jeżeli serwer jest uruchamiany jako root. Jeżeli nie masz uprawnień root'a, użyj swoją nazwę użytkownika, a jeśli jesteś administratorem systemu, możesz chcieć stworzyć specjalnego użytkownika, żeby kontrolować prawa dostępu do plików.

    Grupa identyfikacyjna serwera (Group)

    Określa identyfikator grupy serwera. Jest to dyrektywa bardzo podobna do poprzedniej i jest potrzebna tylko wtedy, gdy serwer pracuje w trybie ,,standalone''.

    Jeżeli nie masz uprawnień root'a, użyj nazwy twojej głównej grupy. Możesz dowiedzieć się, do jakiej grupy należysz, wydając polecenie groups w linii poleceń Linuxa.

    Adres email administratora serwera (ServerAdmin)

    Gdy użytkownicy serwera mają problemy z serwerem, powinni wysyłać pocztę pod adres określony tą dyrektywą. Możesz tu umieścić swój osobisty adres e-mail.

    Katalog serwera (ServerRoot)

    Jest to miejsce, w którym znajduje się serwer. Jeżeli masz uprawnienia root'a, umieść serwer w jego domyślnym katalogu - /usr/local/etc/httpd. Jeżeli nie możesz zalogować się jako root, wybierz podkatalog w twoim katalogu domowym. Możesz dowiedzieć się o nazwie twojego katalogu domowego komendą pwd.

    Katalog plików danych serwera (DocumentRoot)

    Ta dyrektywa określa miejsce plików HTML (nie tylko - np. plików graficznych, skryptów CGI itp. - przyp. tłum.). Domyślny katalog to /usr/local/etc/httpd/htdocs. Możesz także wybrać katalog domowy specjalnego użytkownika, którego wybrałeś dyrektywą ,,User'', albo podkatalog w twoim katalogu domowym, jeżeli nie możesz logować się jako root.

    Jeżeli nie wiesz, jakie ustawienia wybrać, użyj domyślnych. Teraz możesz już ściągnąć NCSA HTTPd z http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html.

    Powinieneś przeczytać dokumentację HTTPd, znajdującą się na http://hoohoo.ncsa.uiuc.edu/docs/, zanim zaczniesz instalować HTTPd. Jeżeli będziesz chciał skompilować kod źródłowy serwera, będziesz musiał zmodyfikować pliki makefile w każdym z trzech katalogów (support, src, cgi-src). Jeżeli twoja wersja Linuxa jest już obsługiwana przez te pliki, wystarczy tylko napisać make linux w katalogu serwera (np. /usr/local/etc/httpd). (? - przyp. tłum.)

    2.2 Kompilacja HTTPd

    Jest to prosta czynność - wystarczy napisać make linux w linii poleceń w głównym katalogu serwera. Uwaga: Użytkownicy starej wersji Linuxa, nie obsługującej binariów ELF, muszą odkomentować linię #define NO_PASS w pliku portablility.h (pamiętaj, że ,,#'' w pliku języka C jest dyrektywą kompilatora - można tam wpisać ,,define'' lub ,,undef'' - chociaż może jest to tam ,,zakomentowane'' dodatkowymi ,,#'' - przyp. tłum.) i ustawić DBM_LIBS = -ldbm w pliku Makefile przed kompilacją HTTPd.

    3. Testowanie HTTPd

    Po zainstalowaniu HTTPd, zaloguj się jako root i uruchom go, pisząc httpd &. (przyjmując, że zainstalowałeś go jako ,,standalone'') Powinieneś widzieć go teraz w liście generowanej przez polecenie ps. Najprostszy sposób przetestowania HTTPd, to telnet. W linii poleceń Linuxa napisz

       linux:~$  telnet 172.16.0.1 80
    

    gdzie 80 jest domyślnym portem dla HTTP. Jeżeli ustawiłeś dyrektywę ,,Port'' na inny niż 80, wpisz ten numer zamiast 80. Powinieneś otrzymać odpowiedź wyglądającą tak jak to:

       Trying 172.16.0.1...
       Connected to linux.mydomain.
       Escape character is '^]'.
    

    Teraz, kiedy wpiszesz jakikolwiek znak i naciśniesz enter, powinieneś otrzymać odpowiedź podobną do poniższej.

       HTTP/1.0 400 Bad Request
       Date: Wed, 10 Jan 1996 10:24:37 GMT
       Server: NCSA/1.5
       Content-type: text/html
    
       <HEAD><TITLE>400 Bad Request < /TITLE> < /HEAD>
       <BODY><H1>400 Bad Request < /H1>
       Your client sent a query that this server could
       not understand.<P>
       Reason: Invalid or unsupported method.<P>
       < /BODY>
    

    Teraz możesz połączyć się z serwerem używając innych komputerów.

    4. Łączenie się z serwerem Linuxowym

    Odwołuję cię do diagramu w rozdziale Wprowadzenie, znajdują się tam używane w tym dokumencie adresy. Stacja robocza 1 (dalej nazywana W/S1) znajduje się w sieci 172.16.0.0 i może bezpośrednio połączyć się z serwerem Linuxowym, a Stacja Rple.com/">http://www.apple.com

  • Przeglądarki WWW takie jak Netscape - na http://home.netscape.com/ lub MS Internet Explorer - na http://www.microsoft.com/ lub NCSA Mosaic z http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html
  • 1.2 Nowe wersje tego dokumentu

    Nowe wersje Linux Intranet Server HOWTO będą okresowo wysyłane na comp.os.linux.announce i comp.os.linux.help. Będą też umieszczane na różnych Linuxowych serwerach FTP, włącznie z sunsite.unc.edu.

    Najświeższa wersja tego dokumentu jest dostępna w formacie HTML pod adresem http://www.inet.co.th/cyberclub/karnadp/http.html

    1.3 Kontakt z autorem

    Jeżeli masz pytania lub komentarze o tym dokumencie, wyślij do mnie list na adres karnad@indiamail.com.

    Sugestie, krytyka i każdy inny rodzaj poczty są zawsze mile widziane. Jeżeli znajdziesz błąd w tym dokumencie, daj mi znać, żebym mógł go poprawić w następnej wersji. Dziękuję.

    2. Instalacja serwera HTTP

    Kiedy ściągasz serwer, masz dwie opcje: pobrać źródła i skompilować je samodzielnie, albo wziąć binaria. Binaria pod Linuxa (ELF) są dostępne z NCSA, ale tylko najnowsza wersja.

    2.1 Przygotowania przed ściąganiem

    Serwer NCSA poprowadzi cię przez kolejne opcje konfiguracji i przygotuje różne pliki. Ale zanim ściągniesz HTTPd, przygotuj odpowiedzi na następujące pytania:

    System Operacyjny

    Po pierwsze musisz wybrać między źródłami i binariami. Jeżeli twój system nie figuruje w menu, będziesz musiał pobrać domyślne źródła i skompilować je samemu.

    Żeby sprawdzić wersję twojego Linuxa przejdź do linii poleceń twojej maszyny i napisz:

      linux:~$  uname -a
    
    powinna pojawić się linia podobna do tej
       linux:~$  uname -a
       Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586
       linux:~$
    

    Wersja Linuxa to 2.0.29.

    Pozostałe parametry mogą być podane przed ściąganiem lub później, podczas modyfikacji pliku srm.conf w katalogu /usr/local/etc/httpd/conf. Dokładne nazwy dyrektyw, które pojawiają się w pliku httpd.conf, są pokazane w nawiasach. Jedyny wyjątek to dyrektywa DocumentRoot, która pojawia się w pliku srm.conf.

    Typ procesu (ServerType)

    Ta dyrektywa określa sposób działania serwera HTTPd na twoim komputerze. Preferowana metoda to ,,standalone''. Dzięki temu demon HTTP będzie działał cały czas. Jeżeli wybierzesz ładowanie HTTPd przez ,,inetd'', binaria serwera będą ładowane do pamięci na każde zapytanie przeglądarek, co może spowolnić twój serwer.

    Przydzielanie portu (Port)

    Dyrektywa ta definiuje port twojej maszyny, na którym HTTPd będzie nasłuchiwał zapytań HTTP. Jeżeli możesz zalogować się jako root, użyj standardowego ustawienia - 80. Jeżeli nie, wybierz port od 1025 do 65535.

    UserID serwera (User)

    Jest to nazwa użytkownika, jaką przybierze serwer podczas odpowiadania na zapytania HTTP i wykonywania operacji na plikach. Musisz to ustalić tylko jeżeli serwer jest uruchamiany jako root. Jeżeli nie masz uprawnień root'a, użyj swoją nazwę użytkownika, a jeśli jesteś administratorem systemu, możesz chcieć stworzyć specjalnego użytkownika, żeby kontrolować prawa dostępu do plików.

    Grupa identyfikacyjna serwera (Group)

    Określa identyfikator grupy serwera. Jest to dyrektywa bardzo podobna do poprzedniej i jest potrzebna tylko wtedy, gdy serwer pracuje w trybie ,,standalone''.

    Jeżeli nie masz uprawnień root'a, użyj nazwy twojej głównej grupy. Możesz dowiedzieć się, do jakiej grupy należysz, wydając polecenie groups w linii poleceń Linuxa.

    Adres email administratora serwera (ServerAdmin)

    Gdy użytkownicy serwera mają problemy z serwerem, powinni wysyłać pocztę pod adres określony tą dyrektywą. Możesz tu umieścić swój osobisty adres e-mail.

    Katalog serwera (ServerRoot)

    Jest to miejsce, w którym znajduje się serwer. Jeżeli masz uprawnienia root'a, umieść serwer w jego domyślnym katalogu - /usr/local/etc/httpd. Jeżeli nie możesz zalogować się jako root, wybierz podkatalog w twoim katalogu domowym. Możesz dowiedzieć się o nazwie twojego katalogu domowego komendą pwd.

    Katalog plików danych serwera (DocumentRoot)

    Ta dyrektywa określa miejsce plików HTML (nie tylko - np. plików graficznych, skryptów CGI itp. - przyp. tłum.). Domyślny katalog to /usr/local/etc/httpd/htdocs. Możesz także wybrać katalog domowy specjalnego użytkownika, którego wybrałeś dyrektywą ,,User'', albo podkatalog w twoim katalogu domowym, jeżeli nie możesz logować się jako root.

    Jeżeli nie wiesz, jakie ustawienia wybrać, użyj domyślnych. Teraz możesz już ściągnąć NCSA HTTPd z http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html.

    Powinieneś przeczytać dokumentację HTTPd, znajdującą się na http://hoohoo.ncsa.uiuc.edu/docs/, zanim zaczniesz instalować HTTPd. Jeżeli będziesz chciał skompilować kod źródłowy serwera, będziesz musiał zmodyfikować pliki makefile w każdym z trzech katalogów (support, src, cgi-src). Jeżeli twoja wersja Linuxa jest już obsługiwana przez te pliki, wystarczy tylko napisać make linux w katalogu serwera (np. /usr/local/etc/httpd). (? - przyp. tłum.)

    2.2 Kompilacja HTTPd

    Jest to prosta czynność - wystarczy napisać make linux w linii poleceń w głównym katalogu serwera. Uwaga: Użytkownicy starej wersji Linuxa, nie obsługującej binariów ELF, muszą odkomentować linię #define NO_PASS w pliku portablility.h (pamiętaj, że ,,#'' w pliku języka C jest dyrektywą kompilatora - można tam wpisać ,,define'' lub ,,undef'' - chociaż może jest to tam ,,zakomentowane'' dodatkowymi ,,#'' - przyp. tłum.) i ustawić DBM_LIBS = -ldbm w pliku Makefile przed kompilacją HTTPd.

    3. Testowanie HTTPd

    Po zainstalowaniu HTTPd, zaloguj się jako root i uruchom go, pisząc httpd &. (przyjmując, że zainstalowałeś go jako ,,standalone'') Powinieneś widzieć go teraz w liście generowanej przez polecenie ps. Najprostszy sposób przetestowania HTTPd, to telnet. W linii poleceń Linuxa napisz

       linux:~$  telnet 172.16.0.1 80
    

    gdzie 80 jest domyślnym portem dla HTTP. Jeżeli ustawiłeś dyrektywę ,,Port'' na inny niż 80, wpisz ten numer zamiast 80. Powinieneś otrzymać odpowiedź wyglądającą tak jak to:

       Trying 172.16.0.1...
       Connected to linux.mydomain.
       Escape character is '^]'.
    

    Teraz, kiedy wpiszesz jakikolwiek znak i naciśniesz enter, powinieneś otrzymać odpowiedź podobną do poniższej.

       HTTP/1.0 400 Bad Request
       Date: Wed, 10 Jan 1996 10:24:37 GMT
       Server: NCSA/1.5
       Content-type: text/html
    
       <HEAD><TITLE>400 Bad Request < /TITLE> < /HEAD>
       <BODY><H1>400 Bad Request < /H1>
       Your client sent a query that this server could
       not understand.<P>
       Reason: Invalid or unsupported method.<P>
       < /BODY>
    

    Teraz możesz połączyć się z serwerem używając innych komputerów.

    4. Łączenie się z serwerem Linuxowym

    Odwołuję cię do diagramu w rozdziale Wprowadzenie, znajdują się tam używane w tym dokumencie adresy. Stacja robocza 1 (dalej nazywana W/S1) znajduje się w sieci 172.16.0.0 i może bezpośrednio połączyć się z serwerem Linuxowym, a Stacja Rple.com/">http://www.apple.com

  • Przeglądarki WWW takie jak Netscape - na http://home.netscape.com/ lub MS Internet Explorer - na http://www.microsoft.com/ lub NCSA Mosaic z http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html
  • 1.2 Nowe wersje tego dokumentu

    Nowe wersje Linux Intranet Server HOWTO będą okresowo wysyłane na comp.os.linux.announce i comp.os.linux.help. Będą też umieszczane na różnych Linuxowych serwerach FTP, włącznie z sunsite.unc.edu.

    Najświeższa wersja tego dokumentu jest dostępna w formacie HTML pod adresem http://www.inet.co.th/cyberclub/karnadp/http.html

    1.3 Kontakt z autorem

    Jeżeli masz pytania lub komentarze o tym dokumencie, wyślij do mnie list na adres karnad@indiamail.com.

    Sugestie, krytyka i każdy inny rodzaj poczty są zawsze mile widziane. Jeżeli znajdziesz błąd w tym dokumencie, daj mi znać, żebym mógł go poprawić w następnej wersji. Dziękuję.

    2. Instalacja serwera HTTP

    Kiedy ściągasz serwer, masz dwie opcje: pobrać źródła i skompilować je samodzielnie, albo wziąć binaria. Binaria pod Linuxa (ELF) są dostępne z NCSA, ale tylko najnowsza wersja.

    2.1 Przygotowania przed ściąganiem

    Serwer NCSA poprowadzi cię przez kolejne opcje konfiguracji i przygotuje różne pliki. Ale zanim ściągniesz HTTPd, przygotuj odpowiedzi na następujące pytania:

    System Operacyjny

    Po pierwsze musisz wybrać między źródłami i binariami. Jeżeli twój system nie figuruje w menu, będziesz musiał pobrać domyślne źródła i skompilować je samemu.

    Żeby sprawdzić wersję twojego Linuxa przejdź do linii poleceń twojej maszyny i napisz:

      linux:~$  uname -a
    
    powinna pojawić się linia podobna do tej
       linux:~$  uname -a
       Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586
       linux:~$
    

    Wersja Linuxa to 2.0.29.

    Pozostałe parametry mogą być podane przed ściąganiem lub później, podczas modyfikacji pliku srm.conf w katalogu /usr/local/etc/httpd/conf. Dokładne nazwy dyrektyw, które pojawiają się w pliku httpd.conf, są pokazane w nawiasach. Jedyny wyjątek to dyrektywa DocumentRoot, która pojawia się w pliku srm.conf.

    Typ procesu (ServerType)

    Ta dyrektywa określa sposób działania serwera HTTPd na twoim komputerze. Preferowana metoda to ,,standalone''. Dzięki temu demon HTTP będzie działał cały czas. Jeżeli wybierzesz ładowanie HTTPd przez ,,inetd'', binaria serwera będą ładowane do pamięci na każde zapytanie przeglądarek, co może spowolnić twój serwer.

    Przydzielanie portu (Port)

    Dyrektywa ta definiuje port twojej maszyny, na którym HTTPd będzie nasłuchiwał zapytań HTTP. Jeżeli możesz zalogować się jako root, użyj standardowego ustawienia - 80. Jeżeli nie, wybierz port od 1025 do 65535.

    UserID serwera (User)

    Jest to nazwa użytkownika, jaką przybierze serwer podczas odpowiadania na zapytania HTTP i wykonywania operacji na plikach. Musisz to ustalić tylko jeżeli serwer jest uruchamiany jako root. Jeżeli nie masz uprawnień root'a, użyj swoją nazwę użytkownika, a jeśli jesteś administratorem systemu, możesz chcieć stworzyć specjalnego użytkownika, żeby kontrolować prawa dostępu do plików.

    Grupa identyfikacyjna serwera (Group)

    Określa identyfikator grupy serwera. Jest to dyrektywa bardzo podobna do poprzedniej i jest potrzebna tylko wtedy, gdy serwer pracuje w trybie ,,standalone''.

    Jeżeli nie masz uprawnień root'a, użyj nazwy twojej głównej grupy. Możesz dowiedzieć się, do jakiej grupy należysz, wydając polecenie groups w linii poleceń Linuxa.

    Adres email administratora serwera (ServerAdmin)

    Gdy użytkownicy serwera mają problemy z serwerem, powinni wysyłać pocztę pod adres określony tą dyrektywą. Możesz tu umieścić swój osobisty adres e-mail.

    Katalog serwera (ServerRoot)

    Jest to miejsce, w którym znajduje się serwer. Jeżeli masz uprawnienia root'a, umieść serwer w jego domyślnym katalogu - /usr/local/etc/httpd. Jeżeli nie możesz zalogować się jako root, wybierz podkatalog w twoim katalogu domowym. Możesz dowiedzieć się o nazwie twojego katalogu domowego komendą pwd.

    Katalog plików danych serwera (DocumentRoot)

    Ta dyrektywa określa miejsce plików HTML (nie tylko - np. plików graficznych, skryptów CGI itp. - przyp. tłum.). Domyślny katalog to /usr/local/etc/httpd/htdocs. Możesz także wybrać katalog domowy specjalnego użytkownika, którego wybrałeś dyrektywą ,,User'', albo podkatalog w twoim katalogu domowym, jeżeli nie możesz logować się jako root.

    Jeżeli nie wiesz, jakie ustawienia wybrać, użyj domyślnych. Teraz możesz już ściągnąć NCSA HTTPd z http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html.

    Powinieneś przeczytać dokumentację HTTPd, znajdującą się na http://hoohoo.ncsa.uiuc.edu/docs/, zanim zaczniesz instalować HTTPd. Jeżeli będziesz chciał skompilować kod źródłowy serwera, będziesz musiał zmodyfikować pliki makefile w każdym z trzech katalogów (support, src, cgi-src). Jeżeli twoja wersja Linuxa jest już obsługiwana przez te pliki, wystarczy tylko napisać make linux w katalogu serwera (np. /usr/local/etc/httpd). (? - przyp. tłum.)

    2.2 Kompilacja HTTPd

    Jest to prosta czynność - wystarczy napisać make linux w linii poleceń w głównym katalogu serwera. Uwaga: Użytkownicy starej wersji Linuxa, nie obsługującej binariów ELF, muszą odkomentować linię #define NO_PASS w pliku portablility.h (pamiętaj, że ,,#'' w pliku języka C jest dyrektywą kompilatora - można tam wpisać ,,define'' lub ,,undef'' - chociaż może jest to tam ,,zakomentowane'' dodatkowymi ,,#'' - przyp. tłum.) i ustawić DBM_LIBS = -ldbm w pliku Makefile przed kompilacją HTTPd.

    3. Testowanie HTTPd

    Po zainstalowaniu HTTPd, zaloguj się jako root i uruchom go, pisząc httpd &. (przyjmując, że zainstalowałeś go jako ,,standalone'') Powinieneś widzieć go teraz w liście generowanej przez polecenie ps. Najprostszy sposób przetestowania HTTPd, to telnet. W linii poleceń Linuxa napisz

       linux:~$  telnet 172.16.0.1 80
    

    gdzie 80 jest domyślnym portem dla HTTP. Jeżeli ustawiłeś dyrektywę ,,Port'' na inny niż 80, wpisz ten numer zamiast 80. Powinieneś otrzymać odpowiedź wyglądającą tak jak to:

       Trying 172.16.0.1...
       Connected to linux.mydomain.
       Escape character is '^]'.
    

    Teraz, kiedy wpiszesz jakikolwiek znak i naciśniesz enter, powinieneś otrzymać odpowiedź podobną do poniższej.

       HTTP/1.0 400 Bad Request
       Date: Wed, 10 Jan 1996 10:24:37 GMT
       Server: NCSA/1.5
       Content-type: text/html
    
       <HEAD><TITLE>400 Bad Request < /TITLE> < /HEAD>
       <BODY><H1>400 Bad Request < /H1>
       Your client sent a query that this server could
       not understand.<P>
       Reason: Invalid or unsupported method.<P>
       < /BODY>
    

    Teraz możesz połączyć się z serwerem używając innych komputerów.

    4. Łączenie się z serwerem Linuxowym

    Odwołuję cię do diagramu w rozdziale Wprowadzenie, znajdują się tam używane w tym dokumencie adresy. Stacja robocza 1 (dalej nazywana W/S1) znajduje się w sieci 172.16.0.0 i może bezpośrednio połączyć się z serwerem Linuxowym, a Stacja Rple.com/">http://www.apple.com

  • Przeglądarki WWW takie jak Netscape - na http://home.netscape.com/ lub MS Internet Explorer - na http://www.microsoft.com/ lub NCSA Mosaic z http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html
  • 1.2 Nowe wersje tego dokumentu

    Nowe wersje Linux Intranet Server HOWTO będą okresowo wysyłane na comp.os.linux.announce i comp.os.linux.help. Będą też umieszczane na różnych Linuxowych serwerach FTP, włącznie z sunsite.unc.edu.

    Najświeższa wersja tego dokumentu jest dostępna w formacie HTML pod adresem http://www.inet.co.th/cyberclub/karnadp/http.html

    1.3 Kontakt z autorem

    Jeżeli masz pytania lub komentarze o tym dokumencie, wyślij do mnie list na adres karnad@indiamail.com.

    Sugestie, krytyka i każdy inny rodzaj poczty są zawsze mile widziane. Jeżeli znajdziesz błąd w tym dokumencie, daj mi znać, żebym mógł go poprawić w następnej wersji. Dziękuję.

    2. Instalacja serwera HTTP

    Kiedy ściągasz serwer, masz dwie opcje: pobrać źródła i skompilować je samodzielnie, albo wziąć binaria. Binaria pod Linuxa (ELF) są dostępne z NCSA, ale tylko najnowsza wersja.

    2.1 Przygotowania przed ściąganiem

    Serwer NCSA poprowadzi cię przez kolejne opcje konfiguracji i przygotuje różne pliki. Ale zanim ściągniesz HTTPd, przygotuj odpowiedzi na następujące pytania:

    System Operacyjny

    Po pierwsze musisz wybrać między źródłami i binariami. Jeżeli twój system nie figuruje w menu, będziesz musiał pobrać domyślne źródła i skompilować je samemu.

    Żeby sprawdzić wersję twojego Linuxa przejdź do linii poleceń twojej maszyny i napisz:

      linux:~$  uname -a
    
    powinna pojawić się linia podobna do tej
       linux:~$  uname -a
       Linux linux 2.0.29 #4 Tue Sep 13 04:05:51 CDT 1994 i586
       linux:~$
    

    Wersja Linuxa to 2.0.29.

    Pozostałe parametry mogą być podane przed ściąganiem lub później, podczas modyfikacji pliku srm.conf w katalogu /usr/local/etc/httpd/conf. Dokładne nazwy dyrektyw, które pojawiają się w pliku httpd.conf, są pokazane w nawiasach. Jedyny wyjątek to dyrektywa DocumentRoot, która pojawia się w pliku srm.conf.

    Typ procesu (ServerType)

    Ta dyrektywa określa sposób działania serwera HTTPd na twoim komputerze. Preferowana metoda to ,,standalone''. Dzięki temu demon HTTP będzie działał cały czas. Jeżeli wybierzesz ładowanie HTTPd przez ,,inetd'', binaria serwera będą ładowane do pamięci na każde zapytanie przeglądarek, co może spowolnić twój serwer.

    Przydzielanie portu (Port)

    Dyrektywa ta definiuje port twojej maszyny, na którym HTTPd będzie nasłuchiwał zapytań HTTP. Jeżeli możesz zalogować się jako root, użyj standardowego ustawienia - 80. Jeżeli nie, wybierz port od 1025 do 65535.

    UserID serwera (User)

    Jest to nazwa użytkownika, jaką przybierze serwer podczas odpowiadania na zapytania HTTP i wykonywania operacji na plikach. Musisz to ustalić tylko jeżeli serwer jest uruchamiany jako root. Jeżeli nie masz uprawnień root'a, użyj swoją nazwę użytkownika, a jeśli jesteś administratorem systemu, możesz chcieć stworzyć specjalnego użytkownika, żeby kontrolować prawa dostępu do plików.

    Grupa identyfikacyjna serwera (Group)

    Określa identyfikator grupy serwera. Jest to dyrektywa bardzo podobna do poprzedniej i jest potrzebna tylko wtedy, gdy serwer pracuje w trybie ,,standalone''.

    Jeżeli nie masz uprawnień root'a, użyj nazwy twojej głównej grupy. Możesz dowiedzieć się, do jakiej grupy należysz, wydając polecenie groups w linii poleceń Linuxa.

    Adres email administratora serwera (ServerAdmin)

    Gdy użytkownicy serwera mają problemy z serwerem, powinni wysyłać pocztę pod adres określony tą dyrektywą. Możesz tu umieścić swój osobisty adres e-mail.

    Katalog serwera (ServerRoot)

    Jest to miejsce, w którym znajduje się serwer. Jeżeli masz uprawnienia root'a, umieść serwer w jego domyślnym katalogu - /usr/local/etc/httpd. Jeżeli nie możesz zalogować się jako root, wybierz podkatalog w twoim katalogu domowym. Możesz dowiedzieć się o nazwie twojego katalogu domowego komendą pwd.

    Katalog plików danych serwera (DocumentRoot)

    Ta dyrektywa określa miejsce plików HTML (nie tylko - np. plików graficznych, skryptów CGI itp. - przyp. tłum.). Domyślny katalog to /usr/local/etc/httpd/htdocs. Możesz także wybrać katalog domowy specjalnego użytkownika, którego wybrałeś dyrektywą ,,User'', albo podkatalog w twoim katalogu domowym, jeżeli nie możesz logować się jako root.

    Jeżeli nie wiesz, jakie ustawienia wybrać, użyj domyślnych. Teraz możesz już ściągnąć NCSA HTTPd z http://hoohoo.ncsa.uiuc.edu/docs/setup/OneStep.html.

    Powinieneś przeczytać dokumentację HTTPd, znajdującą się na http://hoohoo.ncsa.uiuc.edu/docs/, zanim zaczniesz instalować HTTPd. Jeżeli będziesz chciał skompilować kod źródłowy serwera, będziesz musiał zmodyfikować pliki makefile w każdym z trzech katalogów (support, src, cgi-src). Jeżeli twoja wersja Linuxa jest już obsługiwana przez te pliki, wystarczy tylko napisać make linux w katalogu serwera (np. /usr/local/etc/httpd). (? - przyp. tłum.)

    2.2 Kompilacja HTTPd

    Jest to prosta czynność - wystarczy napisać make linux w linii poleceń w głównym katalogu serwera. Uwaga: Użytkownicy starej wersji Linuxa, nie obsługującej binariów ELF, muszą odkomentować linię #define NO_PASS w pliku portablility.h (pamiętaj, że ,,#'' w pliku języka C jest dyrektywą kompilatora - można tam wpisać ,,define'' lub ,,undef'' - chociaż może jest to tam ,,zakomentowane'' dodatkowymi ,,#'' - przyp. tłum.) i ustawić DBM_LIBS = -ldbm w pliku Makefile przed kompilacją HTTPd.

    3. Testowanie HTTPd

    Po zainstalowaniu HTTPd, zaloguj się jako root i uruchom go, pisząc httpd &. (przyjmując, że zainstalowałeś go jako ,,standalone'') Powinieneś widzieć go teraz w liście generowanej przez polecenie ps. Najprostszy sposób przetestowania HTTPd, to telnet. W linii poleceń Linuxa napisz

       linux:~$  telnet 172.16.0.1 80
    

    gdzie 80 jest domyślnym portem dla HTTP. Jeżeli ustawiłeś dyrektywę ,,Port'' na inny niż 80, wpisz ten numer zamiast 80. Powinieneś otrzymać odpowiedź wyglądającą tak jak to:

       Trying 172.16.0.1...
       Connected to linux.mydomain.
       Escape character is '^]'.
    

    Teraz, kiedy wpiszesz jakikolwiek znak i naciśniesz enter, powinieneś otrzymać odpowiedź podobną do poniższej.

       HTTP/1.0 400 Bad Request
       Date: Wed, 10 Jan 1996 10:24:37 GMT
       Server: NCSA/1.5
       Content-type: text/html
    
       <HEAD><TITLE>400 Bad Request < /TITLE> < /HEAD>
       <BODY><H1>400 Bad Request < /H1>
       Your client sent a query that this server could
       not understand.<P>
       Reason: Invalid or unsupported method.<P>
       < /BODY>
    

    Teraz możesz połączyć się z serwerem używając innych komputerów.

    4. Łączenie się z serwerem Linuxowym

    Odwołuję cię do diagramu w rozdziale Wprowadzenie, znajdują się tam używane w tym dokumencie adresy. Stac