Instalacja Apache + PHP5 + MySQL

Uwaga: Ten wpis został utworzony ponad rok temu. Informacje w nim zawarte mogą być nieaktualne!

W dzisiejszym artykule opiszę krok po kroku instalację serwera stron www apache2 wraz z PHP w wersji 5 i bazą danych MySQL.

Notka: Poprzednia wersja artykułu posiadała błąd, dlatego mogła nie udać wam się konfiguracja, bardzo przepraszam za trudności które przez to wystąpiły, ta wersja stestowana u mnie na świeżym Ubuntu 10.04.1 i daję sobie rękę uciąć, że działa jak należy.
Wszystkim którym poprzednia wersje nie chodziła zapraszam do zrobienia jeszcze raz wszystkiego po kolei.

Wchodzimy w terminal i aktualizujemy nasze oprogramowanie:

sudo apt-get update && sudo apt-get install apache2 php5-mysql mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin

Podczas instalacji ukaże nam się komunikat abyśmy podali (w podanej kolejności:

hasło administratora do bazy danych MySQL (bardzo ważne, zapamiętać)
– zaznaczamy apache2, kiedy zapyta jaki serwer ma automatycznie skonfigurować (zaznaczamy spacją)
podajemy hasło administratora, które wcześniej ustaliliśmy tak aby dało się zarządzać bazą przez PHPMyAdmina
ustalamy hasło dzięki któremu MySQL będzie porozumiewał się z PHPMyAdminem, może być takie samo jak hasło administratora MySQL

Okej, serwer jest zainstalowany, teraz ustawimy go tak abyśmy mogli wrzucać pliki do katalogu public_html w naszym katalogu domowym.

Wpisujemy w terminalu:

mkdir ~/public_html

cd /etc/apache2/mods-enabled

sudo ln -s ../mods-available/userdir.conf userdir.conf

sudo ln -s ../mods-available/userdir.load userdir.load

Restartujemy apache2 poniższym poleceniem aby zatwierdzić wprowadzone przez nas zmiany.

sudo /etc/init.d/apache2 restart

Pora na próbę generalną, wpisujemy w terminalu:

gedit ~/public_html/index.php

Po czym w stworzonym pliku wpisujemy:

<?php
phpinfo();
?>

I zapisujemy.

Teraz w przeglądarce wpisujemy:

http://127.0.0.1/~nazwa_uzytkownika/ (zamiast nazwa_uzytkownika oczywiscie swoj login do Ubuntu)

Jeżeli otworzyła nam się fioletowa, długa strona z informacjami o PHP to znaczy że zrobiliśmy wszystko dobrze

Możemy jeszcze wejść na:

http://127.0.0.1/phpmyadmin/

Jeżeli otworzy nam się strona wymagająca zalogowania, to znaczy że poprawnie skonfigurowaliśmy bazę danych MySQL i PHPMyAdmina, wpisujemy root i hasło, które wcześniej mieliśmy zapamiętać. To wszystko, nasz serwer powinien już hulać.

Jeżeli powyższy artykuł nie rozwiązał lub rozwiązał częściowo Twój problem, dodaj swój komentarz opisujący, w którym miejscu napotkałeś trudności.
Mile widziane komentarze z uwagami lub informacjami o rozwiązaniu problemu.
  • kondor34

    Mam problem wykonałem wszystko tak jak w instrukcji wszystko poszło ok ale gdy wpisuje w przeglądarke http://127.0.0.1/nazwa_uzytkownika/ (zamiast nazwa_uzytkownika oczywiscie swoj login do Ubuntu) wyskakuje mi coś takiego The requested URL/login do Ubuntu/was not found on this server

    Apache/2.2.14(ubuntu)server at 127.0.0.1 Port80 niewiem co mogłem źle wykonać.

    • omnix

      Mam problem z komunikacją bazy z skryptem vBulletin przeważnie wystarczy wgrać bazę do phpmyadmin i skonfigurować w katalogu www/includes plik config.php niestety umnie to nie działa po instalacji ubuntu i skonfigurowaniu serwera coś jest nie tak ( przynajmniej tak mi sie wydaje) nie wiem gdzie szukać awari dodam ze w katalogu www plik html. jest widoczny czyli wygląda że jest ok ,jednak komunikacji między phpmyadmin a vb niema ?

  • car3oon

    U mnie jest podobna sytuacja jak u kondor34.
    Natomiast po wpisaniu samego adresu localhosta tj. http://127.0.1.1/ otrzymuje następujący ekran:

    It works!
    This is the default web page for this server.
    The web server software is running but no content has been added, yet.

    • Szmitas

      Artykuł poprawiony, spróbuj ponownie.

  • djarek

    A masz już jakąś stronę WWW wrzuconą?

  • Psajdi

    W artykule jest błąd. Wkrótce wstawie poprawioną wersję. Pozdrawiam.

  • http://www.ubuntu-pomoc.org Szmitas

    Postąpiłem według instrukcji (dwa dni temu) i wszystko działa jak należy.

  • alex51

    Plik index.php powinien mieć taki kod:

    a nie jak podano w artykule:
    phpinfo();
    ?>

    • Szmitas

      Wiadomo o co chodzi, poprawiłem. Niestety WordPress nie ogarnia tak dobrze tagów – muszę w końcu się tym zająć :)

      Pozdrawiam!

  • Błażej

    Dzięki za instrukcję. Niejasny jest dla mnie punkt z haszowaniem „od cd do„, ale poradziłem sobie.

    Tak wygląda u mnie php5.conf:

        
    	SetHandler application/x-httpd-php
        
        
    	SetHandler application/x-httpd-php-source
        
        # To re-enable php in user directories comment the following lines
        # (from  to .) Do NOT set it to On as it
        # prevents .htaccess files from disabling it.
        #    
        #        
        #            php_admin_value engine Off
        #        
        #    
    

    Porada* dla tych, którzy chcą zainstalować WordPressa: Pamiętajcie, aby mieć zawsze ustawione dobre uprawnienia do plików. Po skopiowaniu plików instalacyjnych do danego folderu, wejdźcie do terminala i wklejcie:

    chmod 777 /home/NAZWA_UZYTKOWNIKA/public_html/NAZWA_FOLDERU/ -R

    Gdy dodacie szablon lub jakieś wtyczki prosto z dysku, to musicie do polecenia dodać katalog /wp-content/.

    * Nie biorę odpowiedzialności za wszelkie szkody. Jeśli wprowadzam w błąd, proszę poprawić.

    • Szmitas

      Uprawnienia 777 powinien mieć jedynie katalog główny, pozostałe już nie muszą, stąd -R nie jest konieczne.

      • Błażej

        Rzeczywiście. Ah, no i miałem na myśli 755. Czyli po skopiowaniu plików instalacyjnych, tylko główne foldery (wp-admin, wp-content, wp-includes) mają 0700, a subfoldery już 0755 i pliki – 0644.

        I wydaje mi się, że warto jeszcze wspomnieć o zabezpieczeniu, aby public_html był jedynie widoczny lokalnie. Czyli dodać Listen 127.0.0.1:80 do /etc/apache2/ports.conf: ttps://help.ubuntu.com/community/ApacheMySQLPHP#Securing%20Apache

  • marek8308

    Mam podobnie jak u kolegów. W przeglądarce po wpisaniu adresu 127.0.0.1/nazwa_u żytkownkika wyskakuje
    „Not Found

    The requested URL /marek/ was not found on this server.
    Apache/2.2.14 (Ubuntu) Server at 127.0.0.1 Port 80”

    I nie bardzo rocumiem zapis:
    „Hashujemy wszystko od cd do (do tego przed ostatniego, ten ostatni zostawmy w spokoju)”

    Dodam, że adres http://127.0.0.1/phpmyadmin/ działa.

  • wojtek

    Tym, którym nie działa http://localhost/nazwa_uzytkownika polecam wrzucać pliki do /var/www – katalog „www” otwierajcie oczywiście jako administrator.

  • trytyt

    O dupe rozbić taki serwer instaluje WP i połowa rzeczy w nim nie działa a o phpbb3 juz nie wspomnę – pozostaje się katować nadal filezillą …

    • Szmitas

      Co takiego Ci nie działa? Ja posiadam na dysku kopię strony ubuntu-pomoc i nie mam żadnych problemów.

  • vaverix

    Witam pownownie,
    niestety, postąpiłem tak jak w artykule i podczas gdy wpisze adres, tj. http://127.0.0.1/~nazwa_użytkownika/ (oczywiście wpisuje poprawną nazwe użytkownika) to wtedy otwiera się okienko do pobierania pliku i zapisania pliku index.php na dysku, a gdy wejdę w public_html i na nim prawym przyciskiem, nastepnie ‚otworz za pomocą’ i wybieram przeglądarkę, to wyświetla się kod… (czyli „”)

    Dodam iż wcześniej, na ubuntu 9.10 Karmic było w porządku, zaktualizowałem do 10.4 poprzez menadżer aktualizacji, zainstalowałem wszystko od nowa (poza usunięciem folderu public_html i pliku index.php, więc poprostu ominąłem te dwa kroki lecz to nie powinno w żaden sposób wpłynąć na działanie php…) no i dalej jest tak jak jest.

    phpMyAdmin pod adresem http://127.0.0.1/phpmyadmin/ działa poprawnie, a podczas resetowania apache wszystko jest okej, a niewpływający na działane go komunikat, usunąłem według poradnika niedawno umieszczonego na tej stronie.

    • vaverix

      kod, który się nie dodal, a powinien być w cudzysłowiach, to ten który wyświetla info na temat php5, zresztą taki jaki jest tu, w artykule podany, czyli:

      
      
  • daras

    Mam identyczny problem co kolega powyżej siedzę juz nad tym pół dnia i nic

  • daras

    wychodzi na to ze czyta tylko jako skrypty php to co jest w var/www w innych miejscach jak gdyby php nie dzilalo macie jakiś pomysł co z tym zrobić ??

  • kongos

    Dokładnie jak koledzy powyżej. Zmieniać trzeba ręcznie w katalogu var/www co więcej po wpisaniu kodu podanego czyli

    wyświetla się pusta strona bez żadnej informacji o php. Jakieś pomysły?

  • Sebastian

    Rozwiązanie waszego problemu jest tu: link. Czytajcie od dołu :)

    • Sebastian

      Gwoli ścisłości w podanym przeze mnie linku zamiast /etc/apache2/mods-avaible/php5.conf należy użyć ściezki /etc/apache2/mods-enabled/php5.conf.

  • cezeusz

    Zrobiłem według instrukcji i lipa.

  • darmon

    mkdir ~/public_html

    uaktywnienie w Apache2 katalogu użytkownika

    sudo a2enmod userdir

    restart serwera Apache2 i testujemy

    sudo /etc/init.d/apache2 restart

    dostęp do katalogu domowego public_html:

    http://localhost/~twoja-nazwa

    TO pomoglo mi dziala

  • darmon

    Apache ściąga pliki PHP zamiast je wykonać
    Otworzyć plik php5.conf

    sudo gedit /etc/apache2/mods-avaible/php5.conf

    a następnie trzeba za komentować wiersze

    #
    #
    # php_admin_value engine Off
    #
    #

    Restart Apach2 i powinno być już dobrze :)

  • http://mypchelp.pl/index.php/ubuntu/instalacja-apache2-php-myql-postgresql/ darmon
  • http://www.xerxes.nfsmods.pl Xerxes

    Dla usunięcia błędu pobierania plików .php robimy tak:
    W terminalu sudo gedit /etc/apache2/mods-enabled/php5.conf
    Odnajdujemy i zamieniamy * na nazwę użytkownika np. . Zapisujemy.
    Wpisujemy polecenie sudo a2enmod userdir.
    Robimy restart apache poleceniem sudo /etc/init.d/apache2 restart i w przeglądarkę wpisujemy http://localhost/~NAZWA/plik.php u mnie zamiast nazwa będzie cezary.
    To wszystko

  • greg

    Ja zrobiłem wszystko tak jak w powyższym artykule, tyle że mam problem gdy dochodzę do : http://127.0.0.1/phpmyadmin/ help :)

  • reeco5

    Zastosowałem się do instrukcji ze strony http://newbie.linux.pl/?id=article&kategoria=3&show=510 ale gdy wykonuję drugi test (http://127.0.0.1/phpmyadmin/) przekierowuje mnie na stronę Yahoo. Nie wiem co źle zrobiłem, będę niesamowicie wdzięczny za jakąkolwiek pomoc. Gdyby ktoś mógł mi coś poradzić/poinstruować daję mojego maila: reeco5@interia.pl.

    Jestem zielony, a naprawdę mi zależy na uruchomieniu tego, także jeszcze raz mówię – będę wdzięczny za każdą pomoc.

  • reeco5

    Kolejne pytanie:
    Jak można sprawdzić swoje hasło i login (to które wpisałem przy instalacji nie działa), czy istnieje jakiś plik gdzie jest zapisane. Ewentualnie czy (i jak?) można dokonać reinstalacji i ponownego wprowadzenia loginu i hasła.

    • Kamil

      Spróbuj zalogować się z nazwą użytkownika ‚root’ i hasłem podanym przy instalacji.

  • dadsadsads

    Nie działa

    The requested URL /phpmyadmin was not found on this server.

  • dadsadsads
  • arkadiuszg

    Witam…

    Jak dostawalem komunikat o pobieraniu pliku przy wchodzeniu na http://localhost/phpmyadmin/, to pogrzebalem w pakietach i zainstalowalem „libapache2-mod-php5” z Synaptica.
    Mi pomoglo, wiec moze i komus z Was sie przyda.

    pozdrawiam

  • Pingback: Instalacja Apache + PHP5 + MySQL | Konfiguracja i Instalacja serwerow: Apache, MySQL, FTP i SAMBA | Scoop.it()

  • Pingback: Instalacja Apache + PHP5 + MySQL | Instalacja i konfiguracja linux | Scoop.it()

  • Pingback: Instalacja Apache + PHP5 + MySQL | Instalacja i konfiguracja - Linux | Scoop.it()

  • Pingback: Instalacja Apache + PHP5 + MySQL | Praca z plikami na Linuksie | Scoop.it()

  • Pingback: Instalacja Apache + PHP5 + MySQL | Instalacja i konfiguracja www | Scoop.it()

  • Pingback: Instalacja Apache + PHP5 + MySQL | Instalacja i konfiguracja Apache | Scoop.it()

  • Adakus

    http://127.0.0.1/~nazwa_uzytkownika/test.php (zamiast nazwa_uzytkownika oczywiscie swoj login do Ubuntu)
    Wpiszcie to w przegladarke to wam wyswietli fioletowa liste o php. Jesli klikacie 2 razy na pliku test.php to go
    sciaga zamiast otwierac. To wszystko.

  • greg

    Umnie wszystko dział (zainstalowałem stronke na wordpressie połączył sie z bazą mysql) tylko jest problem bo z zewnątrz nie można wejść na strone powinna być pod dostępna pod IP 84.234.12.41 Można wejść tylko na serwerze polanie i z zewnątrz już nie :((

    • http://www.ubuntu-pomoc.org/ Łukasz Schmidtke

      To już kwestia firewalla i przekierowania portów na ruterze.

      • greg

        tak też podejżewałem zmieniłem w /etc/init.d/firewall

        # ustawienie polityki dzialania
        iptables -P INPUT DROP na ACCEPT
        iptables -P FORWARD DROP oraz ACCEPT
        iptables -P OUTPUT ACCEPT
        Dodałem:
        iptables –A INPUT –p tcp –dport 80 –j ACCEPT
        I już strona jest dostępna ale jak to powinno być fachowo żeby było bespiecznie?? Czy tak może być?

  • Milosz

    Zainstalowałem apache2, mysql, php zgodnie z poradnikiem powyzej. Później usunałem wszystko poprzez:

    sudo apt-get remove (…)

    Jak wpiszę w przeglądarkę http://127.0.1.1 to dalej mi wyskakuje strona o treści „It works!…”. Jak sprawić, żeby tak nie było?

    Zainstalowałem xampp’a, wszystko poszło poprawnie ( w przeciwieństwie do ręcznej instalacji apache2 i reszty) ale to wpisaniu w przeglądarkę localhost mam dalej komunikat „It works!…” i nie uruchamia mi strony z xamppa.

    Jak to poprawić?

  • Maxit

    Witam, pomoże mi ktoś?
    W: Nie udało się pobrać http://archive.ubuntu.com/ubuntu/dists/quantal-updates/universe/binary-i386/Packages 404 Not Found [IP: 91.189.91.15 80]

    E: Nie udało się pobrać niektórych plików indeksu, zostały one zignorowane lub użyto ich starszej wersji.

  • VoyciecH

    A nie powinno być:

    „sudo apt-get update && sudo apt-get install apache2 php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin” ?

  • Paweł

    w sites-avaible 000-default.conf zmieniłem także scieżkę do swojego katalogu reakcja jak na screenie, phpmyadmin działa normalnie. Jakieś pomysły?