Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

NND od kiedy zainstalowałem PHP i MySQL nie wyświetla strony

26 Sty 2008 16:21 3684 9
  • Poziom 36  
    Witam.

    Mam pewien problem. NND świeżo po instalacji, po wpisaniu w przeglądarkach adresu IP routera NND zwracał on stronę powitalną (serwer WWW działał prawidłowo).

    Zainstalowałem PHP i MySQL zgodnie z FAQ na http://www.nnd-linux.pl/faq.php#30 ale teraz mam problem z uruchomieniem WWW. Zamiast niegdysiejszej strony powitalnej NND wyświetla się znane 'nie można wyświetlić strony'.

    Po uruchomieniu z konsoli: /etc/rc.d/httpd start pojawia się odpowiedź NND:

    NND: Uruchamiam serwer HTTP [Trwa....]

    I nic nie dzieje się dalej... tak jakby NDD na coś czekał - niby uwieszka ale ogólnie router NND dalej działa prawidłowo. Po kombinacji Ctrl+C system zwraca komunikat [Nieudane].

    Jak teraz znaleźć przyczynę?
    Darmowe szkolenie: Ethernet w przemyśle dziś i jutro. Zarejestruj się za darmo.
  • Poziom 23  
    NND to Slackware? Nie mam o nim pojęcia.
    System uruchamia httpd przy starcie?
    Bo
    Cytat:
    Uruchamiam serwer HTTP [Trwa....]

    może świadczyć o tym, że próbujesz uruchomić demona drugi raz.
    Zrestartuj komputer i sprawdź, czy masz apache w uruchomionych procesach:
    Code:
    ps x | grep httpd

    ale nie wiem, czy to poprawne polecenie dla Slackware.

    Zdaje się, że prawidłowo powinno się instalować MySQL, Apache i Php - w tej kolejności, ale pewnien nie jestem.

    Jeżeli masz wszystko poprawnie zainstalowane i uruchomione zostaje tylko

    httpd.conf

    Czy jest wszystko oka sprawdzasz:
    Code:
    apachectl configtest


    więcej o apachectl


    pozdrawiam stygma
  • Poziom 36  
    stygma napisał:
    może świadczyć o tym, że próbujesz uruchomić demona drugi raz.
    Zrestartuj komputer i sprawdź, czy masz apache w uruchomionych procesach:
    Code:
    ps x | grep httpd

    ale nie wiem, czy to poprawne polecenie dla Slackware.

    A co powinno się stać po tym poleceniu, bo mi tak jakby je akceptował (ale nic poza tym), nie mam też żadnego komunikatu zwrotnego.

    stygma napisał:
    Zdaje się, że prawidłowo powinno się instalować MySQL, Apache i Php - w tej kolejności, ale pewnien nie jestem.

    Ja instalowałem tak jak było zalecane na stronie http://nnd.freesco.pl/modules.php?name=News&file=article&sid=18

    stygma napisał:
    Jeżeli masz wszystko poprawnie zainstalowane i uruchomione zostaje tylko

    httpd.conf

    Czy jest wszystko oka sprawdzasz:
    Code:
    apachectl configtest

    System zwraca Syntax OK

    --- edit ---

    PS. Na początku podczas instalacji apache (pacman -S apache) była informacja o konflikcie z thttpd i system pytał czy go zastąpić - zgodziłem się i zastąpiłem.
  • Poziom 23  
    MES Mariusz napisał:
    nie mam też żadnego komunikatu zwrotnego.

    To znaczy, że Apache nie jest uruchamiany wraz z systemem, albo podałem Tobie niewłaściwe (dla Slackware) polecenie.
    Sprawdź:
    Code:
    ps x | grep startx

    albo po prostu:
    Code:
    ps x

    jeżeli polecenie działa prawidłowo w pierwszym przypadku pokaże proces X-ów, a w drugim wywali listę procesów.
    MES Mariusz napisał:
    System zwraca Syntax OK

    No to jest OK.
    MES Mariusz napisał:
    Na początku podczas instalacji apache (pacman -S apache) była informacja o konflikcie z thttpd i system pytał czy go zastąpić - zgodziłem się i zastąpiłem.

    Chyba lepiej było najpierw odinstalować thttpd.

    Sprawdzałeś, czy katalog root Apache (nie wiem gdzie powinien być na NND) jest poprawnie podany w httpd.conf?

    MES Mariusz napisał:
    Po uruchomieniu z konsoli: /etc/rc.d/httpd start

    Uruchamiasz z konta zwykłego usera, czy roota?
    Jeżeli ze zwykłego przełącz się na su:
    Code:
    su -

    ale znowu nie wiem, czy to polecenie zadziała - w razie co zaloguj się na roota.

    pozdrawiam stygma[/quote]


    Edith:

    Tutaj

    znalazłem sposób
    blah z KateOS Forum napisał:
    Spróbuj uruchomić serwer przez wydanie polecenia
    "# httpd"
    To powinno wyrzucić jakieś ewentualne błędy.
  • Poziom 36  
    stygma napisał:
    Zrestartuj komputer i sprawdź, czy masz apache w uruchomionych procesach:
    Code:
    ps x | grep httpd



    Poprzednim razem była pomyłka - powyższe polecenie zwraca odpowiedź:
    1115 pts/0 S+ 0:00 grep httpd

    Dopiero następne wydawanie tego samego polecenia nie zwraca żadnych komunikatów. A wracając do odpowiedzi - 1115 pts/0 S+ 0:00 grep httpd - czy ona mówi nam coś konkretnego?

    Dodatkowo: ps x | grep startx zwraca:
    610 pts/0 R+ 0:00 grep startx

    ps x zwraca:

    ps x
    PID TTY STAT TIME COMMAND
    1 ? S 0:09 init [3]
    2 ? S 0:00 [keventd]
    3 ? S 0:00 [kapmd]
    4 ? SN 0:00 [ksoftirqd_CPU0]
    5 ? S 0:00 [kswapd]
    6 ? S 0:00 [bdflush]
    7 ? S 0:00 [kupdated]
    8 ? S 0:00 [xfsbufd]
    9 ? S 0:00 [xfslogd/0]
    10 ? S 0:00 [xfsdatad/0]
    14 ? S< 0:00 [mdrecoveryd]
    15 ? S 0:00 [kjournald]
    126 ? Ss 0:00 /usr/sbin/syslogd -m 0
    139 ? Ss 0:00 /usr/sbin/klogd -c 4
    152 ? S 0:00 /usr/sbin/crond
    167 ? Ss 0:00 /usr/sbin/sshd
    337 ? S 0:00 /usr/bin/niceshaper start
    368 ? Ss 0:00 /usr/sbin/dhcpd eth1
    382 tty1 Ss+ 0:00 /sbin/agetty 38400 tty1 linux
    383 tty2 Ss+ 0:00 /sbin/agetty 38400 tty2 linux
    384 tty3 Ss+ 0:00 /sbin/agetty 38400 tty3 linux
    385 tty4 Ss+ 0:00 /sbin/agetty 38400 tty4 linux
    386 tty5 Ss+ 0:00 /sbin/agetty 38400 tty5 linux
    387 tty6 Ss+ 0:00 /sbin/agetty 38400 tty6 linux
    388 tty10 Ss+ 0:00 /sbin/agetty 38400 tty10 linux
    547 ? Ss 0:00 sshd: mes [priv]
    567 pts/0 S 0:00 su
    572 pts/0 S 0:00 bash
    743 pts/0 R+ 0:00 ps x


    stygma napisał:
    Sprawdzałeś, czy katalog root Apache (nie wiem gdzie powinien być na NND) jest poprawnie podany w httpd.conf?

    Jeśli chodzi o katalog w którym zainstalował się właściwy apache, to nawet nie wiem gdzie on jest (gubię się jeszcze w linuksowym rozmieszczeniu plików i katalogów). Wiem na pewno, że mam plik httpd.conf w lokalizacji: /etc/httpd/conf/httpd.conf - dołączam go w załączniku.

    Na końcu tego pliku jest linijka: Include /etc/httpd/conf/php.conf
    Inkludowany w tym miejscu plik również dodałem do załącznika.

    Może też na coś ważnego naprowadzą cię podpowiedzi z innych for, gdzie próbuję też rozwiązać ten temat:

    - https://www.elektroda.pl/rtvforum/topic923439.html (ostatnie posty w temacie)
    - http://forum.freesco.pl/viewtopic.php?t=16476

    PS. Polecenie # httpd (nawet po reboocie) nie zwraca żadnej odpowiedzi. Może dlatego, że niby serwer WWW jest już uruchomiony?
  • Pomocny post
    Poziom 23  
    Eeeee, nie zrozumieliśmy się. Polecenie ps wyświetla uruchomione procesy, a grep wyszukuje ciąg znaków. Wpisz w konsoli:
    Code:
    man ps

    i
    Code:
    man grep

    Polecenie man wyświetla manuala do polecenia/programu, które po nim napiszesz.
    MES Mariusz napisał:
    A wracając do odpowiedzi - 1115 pts/0 S+ 0:00 grep httpd - czy ona mówi nam coś konkretnego?

    Tylko tyle, że został uruchomiony proces szukania procesu, który ma "httpd" w nazwie.
    poprzednio stygma napisał:
    jeżeli polecenie działa prawidłowo w pierwszym przypadku pokaże proces X-ów, a w drugim wywali listę procesów.

    bo chodziło mi o sprawdzenie czy na NND taki zapis opcji ps zadziała.
    Pisałem o startx, bo byłem przekonany, że masz uruchomione okna, a samo ps x miało wywalić całą listę procesów, żeby była całkowita pewność że to polecenie działa.

    Twój główny katalog:
    httpd.conf napisał:
    # Folder główny serwera
    DocumentRoot "/home/httpd/html"

    tam będą pliki strony (index.html, czy php).


    w tym drugim topiku na elektrodzie MES Mariusz napisał:
    Postawiłem NND, niceshapera, doinstalowałem sambę, zarządzam tym wszystkim zdalnie

    No, poszedłeś od razu na głęboką wodę.
    Musisz przez telnet?
    Jeżeli będziesz konfigurował wszystko bezpośrednio z localhosta nie będzie (no prawie...) problemów z uprawnieniami.



    Ja bym zaczął od zahaszowania (# - znak komentarza) linii:
    Code:
    Include /etc/httpd/conf/ssl.conf

    Code:
    Include /etc/httpd/conf/php.conf

    w httpd.conf.
    Jeżeli po tym httpd zadziała, po kolei (albo na zmianę) odhaszuj te linie - okaże się która psuje konfigurację.
    Jeżeli żadna z nich - to już nie wiem.

    Sprawdź, czy masz tę libphp4.so w /usr/lib/apache/
    Trochę dziwnie wygląda ten Twój plik httpd.conf. Wydaje mi się, że ja mam wszystkie moduły ładowane w httpd.conf. Php korzysta z php.ini.
    Jaka to wersja apache? Jak nie wiesz wpisz:
    Code:
    httpd -v

    chyba powinien pokazać...


    pozdrawiam stygma
  • Poziom 36  
    stygma napisał:
    Pisałem o startx, bo byłem przekonany, że masz uruchomione okna, a samo ps x miało wywalić całą listę procesów, żeby była całkowita pewność że to polecenie działa.

    Mi też wydawało się, że piszesz o oknach właśnie, ale nie bardzo wierzyłem, bo NND raczej nie ma okien - to okrojony linux na potrzeby postawienia routera sieciowego.

    stygma napisał:
    Ja bym zaczął od zahaszowania (# - znak komentarza) linii:
    Code:
    Include /etc/httpd/conf/ssl.conf

    Code:
    Include /etc/httpd/conf/php.conf

    w httpd.conf.
    Jeżeli po tym httpd zadziała, po kolei (albo na zmianę) odhaszuj te linie - okaże się która psuje konfigurację.
    Jeżeli żadna z nich - to już nie wiem.

    Zahaszowałem wskazane linie, zapisałem, zrobiłem reebot, ale po restarcie dalej - nie można wyświetlić strony. Kurcze... Co to jest nie tak...

    stygma napisał:
    Sprawdź, czy masz tę libphp4.so w /usr/lib/apache/

    Tak, w tym katalogu jest taki plik.

    stygma napisał:
    Jaka to wersja apache? Jak nie wiesz wpisz:
    Code:
    httpd -v


    System zwraca odpowiedź:

    Server version: Apache/2.2.4 (Unix)
    Server built: May 10 2007 23:51:16


    ---edit---

    Postanowiłem jeszcze wykonać dla pewności /etc/rc.d/httpd start i... Działa, serwer WWW wystartował! Czyli pomogło odhaszowanie którejś z linii, podejrzewam SSL-a.

    Ok. Czyli znaczy się, że apache nie startuje automatycznie. Ale dlaczego - przecież do rc.conf dopisałem wyraz apache do deamonów, moja linia wygląda tak:

    DAEMONS=(syslogd klogd crond sshd lan internet iptables niceshaper apache !xinetd dhcpd mysql)

    --- edit ---

    Tak, przyczyną był SSL. Teraz pozostał mi tylko problem samoczynnego uruchamiania Apache-a
  • Poziom 23  
    MES Mariusz napisał:
    DAEMONS=(syslogd klogd crond sshd lan internet iptables niceshaper apache !xinetd dhcpd mysql)

    Pozostałe nie wiem, jak są ładowane, ale przecież nie piszesz "fizycznie" na klawiaturze apache start, tylko httpd start, nie? Jeżeli chodzi o MySQL to może być różnie - może być np. mysql_safe, czy jeszcze inaczej, ale u Ciebie będzie to mysqld (mysql to klient, a mysqld serwer bazy). Czyli w Twoim DAEMONS zmień apache na httpd, i mysql na mysqld (albo inaczej, jeżeli demon mysqla się nazywa inaczej).

    pozdrawiam stygma

    Edith:
    MES Mariusz napisał:
    przyczyną był SSL

    Hi, hi, a ja się biedzę z Apache+SSL, tyle, że u mnie działa "wszystko" oprócz php.
  • Poziom 36  
    stygma napisał:
    MES Mariusz napisał:
    DAEMONS=(syslogd klogd crond sshd lan internet iptables niceshaper apache !xinetd dhcpd mysql)

    Pozostałe nie wiem, jak są ładowane, ale przecież nie piszesz "fizycznie" na klawiaturze apache start, tylko httpd start, nie?

    Faktycznie. Zaraz to zmienię.

    stygma napisał:
    Jeżeli chodzi o MySQL to może być różnie - może być np. mysql_safe, czy jeszcze inaczej, ale u Ciebie będzie to mysqld (mysql to klient, a mysqld serwer bazy). Czyli w Twoim DAEMONS zmień apache na httpd, i mysql na mysqld (albo inaczej, jeżeli demon mysqla się nazywa inaczej).

    Apache dopisywałem sam, ale mysql został dopisany prawdopodobnie przez skrypt instalacyjny mysql-a, ale w swoim czasie to sprawdzę też.
  • Poziom 23  
    MES Mariusz napisał:
    mysql został dopisany prawdopodobnie przez skrypt instalacyjny

    To zostaw, pewnie ja się mylę.


    pozdrawiam stygma