ugrás a tartalomhoz

Apache PHP5 és Mysql telepítése Windows 7 x64 alá

oszi330 · 2010. Aug. 14. (Szo), 19.16
Sziasztok!

Elakadtam a PHP telepítésénél 64 bites Windows 7 alatt.
A fenti alkalmazásokat külön-külön próbáltam feltenni.
Először feltettem az Apache-ot (httpd-2.2.16-win32-x86-openssl-0.9.8o.msi), konfiguráltam virtualhostot és directory-t, és szépen kiszolgálta a statikus teszt oldalt.

Ezután PHP-t próbáltam Apache modulként telepíteni:

A letöltött php-5.2.14-Win32.zip-ből kicsomagoltam mindent a c:/Program Files (x86)/PHP5 könyvtárba.
A php.ini-recommended fájlt átneveztem php.ini-re, az apache httpd.conf-jába beírtam a LoadModule sort, beállítottam hogy a php.ini-t hol keresse, és definiáltam a .php kiterjesztést:

LoadModule php5_module "C:/Program Files (x86)/php5/php5apache2_2.dll"
PHPIniDir "C:/Program Files (x86)/php5"
AddType application/x-httpd-php .php

Az apache újraindítása után a phpinfo.php szépen elindult, kilistázta a dolgokat.
A php.ini-ben még nem volt egy extension sem beolvasva.

Az extensionokhöz szükséges libeket és más .dll-eket bemásoltam a c:/windows/system32 könyvtárába, (maradt másolat a PHP5 könyvtárában), hogy megtalálja őket.

Ezután elkezdtem engedélyezni azokat az extensionöket, amiket használni szoktam, és az apache újraindítása után néztem a phpinfo() függvény kimenetét, illetve az apache error.log-ját.

Az 1. próbálkozás a php-5.2.14-Win32.zip volt, melyekkel a következő tapasztalataim voltak:
- mbstring
- openssl
szépen betöltődött, amivel gondok voltak:
-curl
-mcrypt
-mysql
Ezekre azt írta az apache error.log-ja, hogy nem találja az extension dll-jeit, ami tudtommal azt jelenti, hogy a külső libeket nem sikerül betöltenie, vagy egyéb hiba lehet. Hiába próbálkoztam, nem sikerült betölteni ezeket az extensionöket.

Guglizás nyomán azt olvastam, hogy a curl-nek az lehet a baja, hogy libeay32.dll és a ssleay32.dll-t nem tudja betölteni, de az openssl viszont betöltődött! (A 2. és 3. próbálkozásomnál ez magától megoldódott)

A 2. próbálkozás: Egy régi php-5.2.4-Win32.zip volt, ehhez sikerül betölteni a curl extensiont is, az mcrypt, mysql továbbra sem ment.

A 3. próbálkozás a php-5.2.11-Win32.zip volt, itt az mcrypt, mysql betöltése szintén nem sikerült.

Amit tudtam tenni, hogy a php könyvtárában lévő dll-eket a system32 könytárba másoltam mindig az apache újraindításával egybekötve a dolgot.

aspell-15.dll
fdftk.dll
gds32.dll
libeay32.dll
libmcrypt.dll
libmhash.dll
libmysql.dll
libpq.dll
msql.dll
ntwdblib.dll
php5apache.dll
php5apache2.dll
php5apache2_2.dll
php5apache2_2_filter.dll
php5apache2_filter.dll
php5apache_hooks.dll
php5isapi.dll
php5nsapi.dll
php5pi3web.dll
php5ts.dll
ssleay32.dll

Ami nagyon fontos lenne a mysql extension működésre bírása. Ez a .zip-ekben adott fájlokkal Nekem nem sikerült.

A következő ötletem volt:
Feltettem a mysql-essential-5.1.49-winx64.msi 64 bites változatot, aminek a telepítése szépen sikerült, a kliens program csatlakozott hozzá, listázta a db-ket, stb.

Leállítottam az apache-ot, majd a MySQL bin könyvtárában lévő libmySQL.dll-lel felülírtam a c:/windows/system32 és c:/Program Files (x86)/PHP5 könyvtárban lévőt, majd újraindítottam az apache-ot. A phpinfo() továbbra sem listázta a mysql extensiont.

A próbálkozások során a gépet újra is indítottam többször.

Tudnátok segíteni abban, hogy milyen apache/php/mysql kombo működik a 64 bites Windows 7 alatt, illetve hogyan lehetne mégis működésre bírni a mysql extension-t?
 
1

64 bit

janoszen · 2010. Aug. 15. (V), 01.35
Tudom, hogy irtózatos szívás, de próbáld meg 64 bitesre leforgatni. Egyébként abból kiindulva, hogy nem adnak ki 64 bites binárist Windowsra azt gondolom, hogy nem nagyon tesztelik, de legalábbis unsupported.

Egyébként nagyon korrekt a postod, tanítani lehetne. Több ilyet!
2

32bit?

SamY · 2010. Okt. 22. (P), 14.17
Nekem otthon kb csontra ugyan ez a kornyezet van kialakitva. Meglesem neked hogyan - mar vagy 1 eves, bar nem emlexem, hogy ekkora szivas lett volna vele. Aztan az is kiderulhet, hogy szivtam vele es inkabb maradtam 32bites verzioknal. Igazabol ha mar ugyis csak otthonra fejlesztoi kornyezetnek hasznalod majdnem mindegy, hogy 64bites-e - szvsz.

Megjegyzes: en a system32 -be valo masolgatast kihagynam mindenkeppen, azoknak a dll-eknek be kell toltodniuk anelkul is (valamikor osregen 5.1.x -ben voltak mysqllib parak, akkor asszem meg azt be kellett masolni).