Strona 1 z 2

[+] php, a public_html

: 15 marca 2010, 22:38
autor: rekimere
Witajcie!
Mam pewien problem i nie mogę znaleźć rozwiązania. Otóż pliki php nie wykonują się kiedy są w katalogu /home/nazwa_użytkownika/public_html. Czyli jeżeli wpiszę w przeglądarkę http://strona/~user/plik.php wyskakuje mi monit do pobrania tego pliku, jednak gdy kopiuję go do katalogu /var/www i wpisuję http://strona/plik.php wszystko działa normalnie. Trochę się naszukałem i nigdzie nie mogłem znaleźć jednoznacznej przyczyny i wyjaśnienia tego problemu, więc zgłaszam się do Was. Z góry dzięki za wszystkie odpowiedzi! :)
Wersja apache - 2.2.14, php - 5.3.1-5, linux - 2.6.30-2-686
http://wklej.org/id/297636/ - apache2.conf (httpd.conf pusty) - piszcie, które konfigi jeszcze chcecie widzieć.

: 15 marca 2010, 22:43
autor: timor
Jeżeli nie podasz żadnego konfiga to zostaje wróżenie z fusów :)

: 16 marca 2010, 08:07
autor: daniel_l81
Musisz zmienić ścieżkę z katalogu /var/www do katalogu /home/nazwa_użytkownika/public_html w pliku /etc/apache2/sites-available/default, czyli powinieneś mieć tak:

Kod: Zaznacz cały

 
DocumentRoot /home/nazwa_użytkownika/public_html
<Directory /home/nazwa_użytkownika/public_html/>
....
</Directory>
Po tym restart serwera apache i powinno działać.

: 16 marca 2010, 08:24
autor: lessmian2
daniel_l81 pisze:Musisz zmienić ścieżkę z katalogu /var/www do katalogu /home/nazwa_użytkownika/public_html w pliku /etc/apache2/sites-available/default
E, czekaj, nie tak szybko.

rekimere, napisz może coś więcej o systemie i konfiguracji serwera www. Na początek zamieść wyniki poleceń:

Kod: Zaznacz cały

apache2ctl -M
apache2ctl -S
Zamieść też pliki zawierające konfigurację Twoich VHostów. Możesz też napisać jak konfigurowałeś PHP i mod_userdir.

: 16 marca 2010, 08:33
autor: grzesiek
Problem zapewne leży w tym, że nie wskazałeś dla PHP gdzie mogą się znajdować skrypty, które będą interpretowane, to jest w php.ini i nazywa się chyba user_dir albo coś z root.

: 16 marca 2010, 08:54
autor: lessmian2
W domyślnej konfiguracji PHP oba parametry (user_dir, doc_root) są puste i nie mają wpływu na wykonywanie skryptów. Dopóki kolega nie pokaże plików konfiguracyjnych, możemy urządzić loterię ;)

: 16 marca 2010, 09:05
autor: grzesiek
Stawiam na uprawnienia :)
Kiedyś jak to robiłem, to też nie pamiętam abym musiał coś specjalnie robić aby PHP czytało tam pliki - tylko moduł załadować. Ale w Linuxie zawsze jest jeszcze coś do zrobienia ;)

: 16 marca 2010, 09:12
autor: lessmian2
grzesiek pisze:Stawiam na uprawnienia
Też o tym myślałem, ale u mnie są "normalne" - 755 - i działa.
grzesiek pisze:Ale w Linuxie zawsze jest jeszcze coś do zrobienia
W tym jest większość frajdy z tego systemu :)

: 16 marca 2010, 12:53
autor: redelek
Hej,
Miałem ostatnio taki problem. Wystarczyło poprawić linijkę w konfigu apache i ruszyło bez problemów

Kod: Zaznacz cały

Options Indexes FollowSymLinks MultiViews

: 16 marca 2010, 13:51
autor: rekimere
Dzięki za zainteresowanie!
[URL]http://wklej.org/id/297846/[/URL] - apache2ctl -M
[URL]http://wklej.org/id/297848/[/URL] - apache2ctl -S
[URL]http://wklej.org/id/297849/[/URL] - default/000-default
Uprawnienia - public_html mam 755, z user_dir i doc_root kombinowałem - wpisywałem /home/*/public_html i nic.
Wszystkie opcje są standardowo, ostatnio doinstalowywałem lstat, ale nie wiem czy mógł on coś namieszać?
@redelek - Która linijka konkretnie? W pierwszym poście jest apache2.conf