Jak na Ubuntu Server uruchomić swój własny serwer WWW (cz. 4)?
Ostatnia część z serii. W tej części pokażę jedynie podstawową konfigurację maszyny w celu oczekiwanego funkcjonowania. Nie zaprezentuję, w jaki sposób wprowadzać limity quoty, transferu, czy też podpinać domeny. Jest to najbardziej podstawowa konfiguracja, do tworzenia własnych stron (najlepiej). Co będziemy potrzebować? Na pewno wszystkie rzeczy, które wykonaliśmy w 3 poprzednich częściach. Czyli system, odpowiednie aplikacje zainstalowane, oraz chwilę czasu, którą musimy przeznaczyć na ich konfigurację. Do dzieła!
Kroki
1
Łączymy się z naszą maszyną oraz sprawdzamy, czy nie wyszły aktualizacje. Jeśli tak - aktualizujemy system. Jeśli nie - idziemy dalej.
2
By połączyć działanie bazy MySQL z PHP musimy doinstalować jedną paczkę:
apt-get install php5-mysql
apt-get install php5-mysql
3
Przejdźmy teraz do właściwej konfiguracji systemu. Zajmiemy się najpierw serwerem FTP. Chcemy, by użytkownicy nie mogli przeglądać zawartości całego systemu. Ujmując rzecz inaczej - mają oni mieć jedynie dostęp do swego katalogu domowego.
Przechodzimy do katalogu konfiguracyjneg:
cd /etc/proftpd
Modyfikujemy plik proftpd.conf:
nano proftpd.conf
Kolejno wyświetlane konfiguracje dotyczą nazwy serwera, jego typu, czasu oczekiwania, itd., itd. Jednak jak już na wstępie wspomniałem, zajmuję się w tej części podstawową konfiguracją. Interesuje nas linia 33, oraz 37.
Linia 33 odpowiada "trzymaniu" danej osoby w jej katalogu domowym, a 37 za niezwracanie uwagi na to, jaką dana osoba ma powłokę systemową ustawioną.
Usuwamy z ich początku jedynie znak hash'a (#).
Ctrl+X, nadpisujemy zawartość.
Przechodzimy do katalogu konfiguracyjneg:
cd /etc/proftpd
Modyfikujemy plik proftpd.conf:
nano proftpd.conf
Kolejno wyświetlane konfiguracje dotyczą nazwy serwera, jego typu, czasu oczekiwania, itd., itd. Jednak jak już na wstępie wspomniałem, zajmuję się w tej części podstawową konfiguracją. Interesuje nas linia 33, oraz 37.
Linia 33 odpowiada "trzymaniu" danej osoby w jej katalogu domowym, a 37 za niezwracanie uwagi na to, jaką dana osoba ma powłokę systemową ustawioną.
Usuwamy z ich początku jedynie znak hash'a (#).
Ctrl+X, nadpisujemy zawartość.
4
By zmiany przyniosły jakiś rezultat musimy zresetować serwer ftp.
/etc/init.d/proftpd restart
/etc/init.d/proftpd restart
5
W kroku 3 utworzyliśmy użytkownika phpmyadmin. Nie będzie nam do tego użytkownika potrzebna powłoka - nie będziemy się na niego na pewno logować za pośrednictwem protokołu SSH.
Udajemy się do /etc/ i edytujemy plik passwd:
nano /etc/passwd
Przy końcu pliku odnajdujemy użytkownika phpmyadmin. Interesuje nas jedynie końcówka wpisu. Zamieniamy /bin/bash na /bin/false
Udajemy się do /etc/ i edytujemy plik passwd:
nano /etc/passwd
Przy końcu pliku odnajdujemy użytkownika phpmyadmin. Interesuje nas jedynie końcówka wpisu. Zamieniamy /bin/bash na /bin/false
6
Uruchamiamy na serwerze apache odpowiednie moduły, miedzy innymi odpowiedzialne za obsługę php, jak i katalogów użytkowników.
Komendą a2enmod aktywujemy odpowiednio wyświetlone moduły na liście. Nas interesują moduły:
php5 userdir
Może się okazać, tak jak w moim przypadku, że moduł php5 jest już aktywny - spoko, nic się nie dzieje. Drugi zostanie aktywowany.
Wykonujemy jeszcze restart serwera apache:
/etc/init.d/apache2 restart
Komendą a2enmod aktywujemy odpowiednio wyświetlone moduły na liście. Nas interesują moduły:
php5 userdir
Może się okazać, tak jak w moim przypadku, że moduł php5 jest już aktywny - spoko, nic się nie dzieje. Drugi zostanie aktywowany.
Wykonujemy jeszcze restart serwera apache:
/etc/init.d/apache2 restart
7
To nie wszystko, włączenie modułu php5 nie włączy obsługi php dla wszystkich użytkowników. Co możemy zaobserwować udając się pod adres http://<adres IP serwera>/~phpmyadmin
Plik index.php "będzie chciał" zapisać się na dysku komputera. Musimy więc włączyć obsługę php dla wszystkich kont.
Plik index.php "będzie chciał" zapisać się na dysku komputera. Musimy więc włączyć obsługę php dla wszystkich kont.
8
Przechodzimy do lokalizacji modułów apache'a (włączonych).
cd /etc/apache2/mods-enabled
Przechodzimy do modyfikacji modułu php5.
nano php5.conf
Hashujemy tam linię 11-15. Restartujemy serwer:
/etc/init.d/apache2 restart
cd /etc/apache2/mods-enabled
Przechodzimy do modyfikacji modułu php5.
nano php5.conf
Hashujemy tam linię 11-15. Restartujemy serwer:
/etc/init.d/apache2 restart
9
Odświeżamy stronę i co widzimy? Działa! :)
Stosujemy się do (późniejszego) polecenia z phpmyadmin'a i modyfikujemy plik konfiguracyjny:
cd /home/phpmyadmin/public_html
mv mv config.sample.inc.php config.inc.php
nano config.inc.php
W linii 18 wpisujemy dowolny ciąg znaków, np:
asdohoihwq978837grvbfsduvf
Stosujemy się do (późniejszego) polecenia z phpmyadmin'a i modyfikujemy plik konfiguracyjny:
cd /home/phpmyadmin/public_html
mv mv config.sample.inc.php config.inc.php
nano config.inc.php
W linii 18 wpisujemy dowolny ciąg znaków, np:
asdohoihwq978837grvbfsduvf
10
Poza tym widzimy, że brakuje pewnego modułu php5. Mcrypt. Zainstalujmy go więc, oraz kilka mniej, lub bardziej przydatnych:
apt-get install php5-mcrypt php5-imagick php5-gd
Restartujemy na wszelki wypadek jeszcze raz serwera apache:
/etc/init.d/apache2 restart
apt-get install php5-mcrypt php5-imagick php5-gd
Restartujemy na wszelki wypadek jeszcze raz serwera apache:
/etc/init.d/apache2 restart
11
Od teraz wszystko działa, jak należy :).
12
Uwagi i spostrzeżenia
Oceń tę poradę
3.8
(5 głosów)
Twoja ocena:
Zapisywanie głosu...