Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Apache, PHP i Linux...
Forum PHP.pl > Forum > Serwery WWW > Apache
zbig13
Od kilku dni jestem (szczęśliwym biggrin.gif) posiadaczem SuSe Linux 9.2 Professional. Wczoraj postanowiłem zainstalować na Linuxie środowisko programowania w php. Ściągnąłem najpierw serwer Apache 2.0.54 i zainstalowałem go z poziomu konsoli. Wszystko poszło dobrze, serwer nawet działał smile.gif Potem zainstalowałem php 5.0.4 (również z konsoli) i odtąd pojawiły się problemy, w związku z którymi mam kilka pytań:
1. Napisałem prosty skrypt php, testujący działanie środowiska. Otworzyłem go w przeglądarce Konqeror i co widze? Zamiast strony pojawił mi się kod źródłowy pliku sad.gif I nie wiem w czym problem, to wina Apacha czy środowiska php?
2. Zanim zainstalowałem Linuxa, na Windowsie miałem serwer IIS i nigdy wcześniej nie używałem Apache'a. Dlatego nie wiem w którym katalogu przechowywać skrypty php (być może z tym związany jest problem w 1 punkcie). W IIS był to katalog wwwroot/. Skrypt testowy skopiowałem do katalogu htdocs, ale pojawiło się to co opisałem w 1 punkcie.
3. Czy ktoś wie jak na Linuxie odinstalować serwer Apache albo php, zainstalowane z poziomu konsoli?

Proszę o pomoc i z góry dzięki!
Fo
na pkt. 3 powiem tak : rm -rf /usr/local/apache :?:

a na cala reszte mozesz zajrzec tutaj : http://witnet.gda.pl/~artur/linux/MAP.txt - nie jest to cudo, pisalem z zamiarem opublikowania tego, ale jeszcze duzo czasu minie nim to dokoncze - poprostu nie mam czasu, Tobie zas, ten txt moze byc pomocny.


pozdro.
Fo
matipl
proponuję do instalacji uzywać narzędzia YaST, przez które szybko znajdziesz pakiet, ściągniesz i zainstalujesz gotowe paczki i nie będziesz miał problemu z wstępną konfiguracją...
To samo tyczy się odinstalowania.
maciu
ja również próbuje zainstalować zespaw apache+php+mysql na linuxie. Korzystam z pomocy podanej w tym poście przez FO

I mam problem w czasie instalacji mysql. Niby instalacja przebiegła bezproblemowo, ale wpisuje komende 'mysqladmin ping', aby sprawdzić czy serwer działa to pojawia się error z komunikatem "can't conect to local mysql serwer through socket '/tmp/mysql.sock' "

Nie mam takiego pliku jak mysql.sock i nie wiem o co chodzi. Może ktoś pomóc?
Fo
w wykonales wczesniej :

/usr/local/mysql/bin/mysqld_safe &

?

edit : zobacz czy "ps aux" pokazuje ci wogole ze proces serwera mysql istnieje. jak nie przeoraj logi w /var/log
maciu
Wykonałem /usr/local/mysql/bin/mysqld_safe & i pojawił się taki komunikat:
Kod
starting mysql deamon
stopping server from pid file /usr/local/mysql/var/lokalhost.pid
mysql ended

i to chyba już to jest coś nie tak, bo serwer sie wylacza.

'ps aux' nie pokazuje procesu mysql
Fo
hmm, jakie masz distro ? slackware ?

1. zobacz czy bazke mysql zainstalowales - w /usr/local/mysql/var - powinien byc katalog mysql i w nim pliki stricto tej bazki.

2. poszukaj w logach wskazowek => ew. wklej te komunikaty do ktorych sie dokopiesz w logach.

2.5. sprawdz uprawnienia na katalogu /usr/local/mysql

3. jak sie nie dokopiesz - sproboj sie poprostu rebootnac,
maciu
Cytat
1. zobacz czy bazke mysql zainstalowales - w /usr/local/mysql/var - powinien byc katalog mysql i w nim pliki stricto tej bazki.

jest katalog mysql i sam tam pliki bazy

Cytat
2. poszukaj w logach wskazowek => ew. wklej te komunikaty do ktorych sie dokopiesz w logach.

050518 22:11:27 mysqld started /usr/local/mysql/libexec/mysqld: Can't read dir of '/root/tmp/' (Errcode: 13) /usr/local/mysql/libexec/mysqld: Can't create/write to file '/root/tmp/ibTA7XS7' (Errcode: 13) 050518
22:11:27 InnoDB: Error: unable to create temporary file; errno: 13 050518
22:11:27 Can't init databases 050518 22:11:27 Aborting 050518
22:11:27 InnoDB: Warning: shutting down a not properly started InnoDB: or created database! 050518
22:11:27 /usr/local/mysql/libexec/mysqld: Shutdown Complete050518
22:11:27 mysqld ended 050518
22:11:33 mysqld started /usr/local/mysql/libexec/mysqld: Can't read dir of '/root/tmp/' (Errcode: 13) /usr/local/mysql/libexec/mysqld: Can't create/write to file '/root/tmp/ibzCXNgg' (Errcode: 13) 050518
22:11:33 InnoDB: Error: unable to create temporary file; errno: 13 050518 22:11:33 Can't init databases 050518
22:11:33 Aborting 050518 22:11:33 InnoDB: Warning: shutting down a not properly started InnoDB: or created database! 050518
22:11:33 /usr/local/mysql/libexec/mysqld: Shutdown Complete 050518
22:11:33 mysqld ended

Cytat
2.5. sprawdz uprawnienia na katalogu /usr/local/mysql

wszystkie uprawnienia ma grupa i user mysql, ale wykonuje wszystko na roocie więc z tym nie powinno być problemów

Cytat
3. jak sie nie dokopiesz - sproboj sie poprostu rebootnac,

robiłem, bez zmian
Fo
OMFG

szczerze mowiac z takim czyms to sie nigdy jeszcze nie spotkalem - nie bede owijac w bawelne - full nowosc dry.gif

ciekawi mnie tylko DLACZEGO on proboje zrobic cos takiego :

050518 22:11:27 mysqld started /usr/local/mysql/libexec/mysqld: Can't read dir of '/root/tmp/' (Errcode: 13)

a sproboj utworzyc sobie katalog /root/tmp i nadac na niego chmod 777

=> dalej niewiem na jakiej dystrybucji linuxa instalujesz mysql 0_o
maciu
Cytat
a sproboj utworzyc sobie katalog /root/tmp i nadac na niego chmod 777

zrobiłem, ale bez zmian

Mam dystrybucje Mandrake 9.2
Fo
hmm, szczerze mówiąc - nie miałem nigdy do czynienia z mandrake'iem - tzn. raz - jak zobaczyłem taki ładny instalator to skończyło się to na formatce i instalacji slacka bodajże w wersji 9.1 jeszcze.

zajrzyj jeszcze może tutaj : http://forum.php.pl/index.php?showtopic=30631 ( fresh ! )

a jeżeli nie pomoże to zacznij już przeszukiwać http://google.pl/linux

jeszcze co mi przychodzi do głowy to taka rzecz, że obiło mi się kiedyś o uszy iż mandrake ma sam w sobie już po instalacji niektóre paczki mysql'owe - poszukaj być może u Ciebie też one są ( niewiem na jakim levelu jesteś jeśli chodzi o linux'y - więc wybacz jeśli bije za bardzo ), albo zobacz poprostu co powie : whereis mysql - i czy zgadza się to z /usr/local/mysql.


pozdro ya winksmiley.jpg
maciu
tak, na mandrake są paczki mysql'owe, ale ja ich nie instalowałem (można sobie to wybrać w czasie instalacji)

Próbowałem również zainstalować apache zgodnie z instrukcją i po wpisaniu komendy uruchomieniowej serwera
Cytat
/usr/local/apache2/bin/apachectl start

to wyświetla komunikat: "could not determine the server's fully qualified domein name using 127.0.0.1 for ServerName"

Poza tym gdy pracuje z linuxem to nie jestem podłączony do internetu, ale to chyba nie ma znaczenia?
Fo
a dokonfigurowałeś już swojego apache2 ? mam tutaj na myśli /usr/local/apache2/conf/httpd.conf

standardowo ( bez SSL ) powinno tak być jak dla Ciebie - ( serwerek domowy ) mniej więcej tak :

"ServerRoot /usr/local/apache2"
Listen 127.0.0.1:80
ServerName 127.0.0.1

a później /usr/local/apache2/bin/httpd -k start
maciu
nareszcie doszedłem o co chodzi. Otóż serwer mysql chodzi tylko gdy zaloguje sie na linuxa jako user mysql. Ja tam specjalnie się na tym nie znam, ale nie uważasz, że to coś nie tak, gdy pod rootem nie moge tego zrobić?

mam jeszcze jedno pytanie, w jaki sposób odinstalować apache, php, mysql z linuxa?
Fo
hmm jeżeli chodzi jedynie jako użytkownik mysql hmm, a spróbój zrobić cosik takiego winksmiley.jpg no to widocznie w mandraku jest cos inaczej jeśli chodzi o wykonywanie poleceń niż na takim slacku czy debianie smile.gif

jako root :
/usr/local/mysql/bin/mysqld_safe --user=mysql &

jeżeli chodzi o odinstalowywanie to nie bój się rm -rf smile.gif
poprostu usuń katalogi /usr/local/apache2 /usr/local/mysql /usr/local/php4

pozdro winksmiley.jpg
maciu
no i mam kolejny problem, tym razem z instalacją php

niby wszystko się zainstalowało i dodaje do pliku httpd.cnf komende
Cytat
LoadModule php4_module modules.libphp4.so

i co się okazuje? że nie ma takiego pliku jak libphp4.so (jest plik libphp4.a, ale to chyba nie to)
Fo
ale tu masz błąd : LoadModule php4_module modules.libphp4.so

powinno być tak : LoadModule php4_module modules/libphp4.so

edit : libphp4.so powinno być po skompilowaniu php4 z ./configure --with-apxs2=/usr/local/apache2/bin/apxs w katalogu : /usr/local/apache2/modules
maciu
gdy instaluje php z -with-apxs2=/usr/local/apache2/bin/apxs to pojawia się błąd:
"/usr/bin/ld:ext/ctype/ctype.lo file format not recognized; treating as linker script
/usr/bin/ld:ext/ctype/ctype.lo:2 syntax error"
Fo
aaevil.gif

www.google.pl/linux

http://www.linuxquestions.org/questions/ar...003/11/3/101474
http://linuxfromscratch.org/pipermail/lfs-...ary/031998.html


chociaż w sumie to co ci się dzieje to już jest bardzo ciekawe smile.gif

i przy czym Ci się to tak wysypuje przy make pewnie ?

jak bawiłeś się ./configure więcej niż 1 raz to :
make clean
make
make install

spróbój tak.

jak nie, dalej => www.google.pl => jak nie znajdziesz => wróć na forum i zarzuć :
całe ./configure które wykonywałeś i całe ./configure które wykonywałeś dla apache2
maciu
po wykonaniu 'make clean' nie pojawił się już ten błąd, polecenie make wykonało się prawidłowo, ale make install zwróciło błąd:
Warning! dlname not found in /usr/local/apache2/modules/libphp4.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /usr/local/apache2/modules/libphp4.so
chmod: nie udało się odczytać atrybutów `/usr/local/apache2/modules/libphp4.so': No such file or directory
apxs:Error: Command failed with rc=65536

configure jaki dodałem do apache
Cytat
./configure --prefix=/usr/local/apache2 --enable-so --enable-module=rewrite --enable-shared=rewrite

configure jaki dodałem do php
Cytat
./configure --prefix=/usr/local/php4 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --sysconfdir=/usr/local/php4 --with-config-file-path=/usr/local/php4
Fo
może tutaj coś wydobędziesz dla siebie :

http://www.google.pl/search?q=Warning!...1&start=10&sa=N

ja już dzisiaj nie mam troche czasu, robota nagli,

wygląda mi to na jakiegoś buga libtool'a , spróbowałbym jeszcze jeśli sie utworzył libphp4.a w /usr/local/apache2/modules coś takiego jak : ar -x libphp4.a - to powinno rozpakować libphp4.a do libphp4.so

poszukaj forum mandrake'owych, być może na nich znajdziesz lepsze informacje.

pzdr
maciu
libphp4.a rozpakował się, tylko nie do libphp4.so, ale do dziesiątek innych plików

Spróbówałem zainstalować php.4-3.11 zamiast 4-3.10 i co się okazuje? że pojawia się przy konfiguracji inny błąd:
Cytat
/usr/src/serwer/php-4.3.11/ext/mysql/php_mysql.c:1160: undefined reference to `mysql_create_db'
ext/mysql/php_mysql.lo(.text+0x239d): In function `zif_mysql_drop_db'


i weż tu człowieku bądz mądry tongue.gif
zbig13
Witam wszystkich! widze, że temat się troche rozwinal. mam nadzieje ze moge wtracic moj (kolejny tongue.gif) problem. Otoz, udalo mi sie zainstalowac juz wszystko (php+apache+mysql) tylko teraz mecze sie z tym, zeby laczyc sie z mysqlem z poziomu php. Bo wywala mi na razie: Call to undefined function mysql_connect(). Chyba wiem jak to zrobic tylko ze potrzebny mi jest plik konfiguracyjny php i nie wiem jak go znalezc smile.gif w Windowsie byl to php.ini, ale w Linuxie? Juz probowalem szukac recznie i w wyszukiwarce, ale nie moge znalezc. Mam wrazenie ze mi sie nie zainstalowal. HELP!!!
Seth
w Linuxie tez jest to php.ini

Wpisz updatedb, a potem slocate php.ini
bela
Albo poszukaj php.ini-dist winksmiley.jpg
dr_bonzo
@zbig13: Obejrzyj phpinfo() -- tam bedzie sciezka do pliku php.ini (nawet jesli on nie istnieje). Ewentualnie wgraj php.ini-dist i zmien nazwe na php.ini i wyedytuj go.

A Mysqla masz w wersji 4.1? Jesli tak to: nie mozesz uzywac funkcji mysql_* tylko mysqli_*, i musisz skompilowac php z --with-mysqli=... (czy jakos podobnie).
Fo
Cytat("dr_bonzo")
@zbig13: Obejrzyj phpinfo() -- tam bedzie sciezka do pliku php.ini (nawet jesli on nie istnieje). Ewentualnie wgraj php.ini-dist i zmien nazwe na php.ini i wyedytuj go.

troszke szczegolowiej - jak jestes w katalogu ze zrodlami php to po skompilowaniu bedzie tam php.ini.dist - robisz pozniej poprostu : cp php.ini-dist /usr/local/php4/php.ini

a to tak tylko dla juz jasnosci kompletnej.


pozdroffka winksmiley.jpg
maciu
zainstalowałem na swoim komputerze zestaw apache+php+mysql zgodnie z instrukcją Fo i wszystko ładnie działa.

Gdy zrobiłem to samo na komputerze szkolnym to niby wszystko się skompilowało, zainstalowało poprawnie, ale w przeglądarce wyświetla tylko strone główną apache, żadnej innej nie chce wyświetlać (wyświetla się komunikat, że strona nie jest dostępna na serwerze).

Profesorek ze szkoły powiedział, że może mieć to związek z tym, że komputery szkolne mają stały numer IP i trzeba coś w konfiguracji zmienić. No właśnie, ale co zmienić? Dodam, że serwer ma chodzić na localhoscie tylko.
Fo
Listen - na adres lokalny tego swojego kompa co na nim montujesz : 192.168.X.X
NameVirtualHost : 192.168.X.X:80
<VirtualHost 192.168.X.X:80>
pleplebla
</VirtualHost>

no mniej wiecej tak to powinno wygladac, zadnych szczegolnych zmian nie powinno sie raczej wprowadzac. pozdro winksmiley.jpg
zbig13
@Seth, Dr_bonzo, Bella_666, Fo - wielkie dzieki wam wszystkim za pomoc. Już wszystko znalazłem i wszystko mi dziala. Pozdro! smile.gif
Lewap
to może podczepię się pod ten wątek zeby nie zakładać prawie identycznego smile.gif wszędzie widuję instrukcje instalacji apache'a , php itp. ze źródeł , a ja zainstalowałem to w czasie instalacji linuksa (fedora 3) i mam pewien problemik. Dodałem do httpd.conf wszystkie niezbędne linijki , serwer startuje bez problemu , ale ... php nie działa tongue.gif tzn. po pierwsze to nie mogę za diabła znaleźć katalogu htdocs , w httpd.conf ServerRoot ustawione jest na /etc/httpd , ale tam po nim ani śladu. Doszedłem do tego że mogę kombinować z katalogiem /var/www/html , gdy umieszczę tam testowy skrypt php , to pojawia się tylko kod zamiast efektu działania , jest jakiś postęp ale dalej nie wiem już co z tym zrobic , pomóżcie smile.gif pozdr.
Fo
IMHO nie zalecam takiego sposobu instalacji serwera www smile.gif

albo jak jest coś już z paczki przy instalacji takiej fedory to hmm, poczytaj czy fedora ( bo sie nie orientuje ) ma coś takiego jak rekonfigurator paczek. w debianie jest coś takiego jak dpkg-reconfigure nazwa_paczki...

poczytaj....

pzdr.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.