MySQL és Apache VirtualHost

Fórumok

Sziasztok,

Slak 11.0
Apache 2.2
MySQL 5

Sikeresen fennt van és működik, bár nem teljes az öröm.
Több domain van a gépen és a mysql nem hajlandó a www.valami.hu hostra elindulni, csak ha a szerver ip címét írom a hosthoz.
Mi a csudát kefélhetek el?

Az érdekes az, hogy ezt az összeállítást már egyszer megvalósítottam és akkor simán ment. (Bár akkor nem volt egyben ns szerver is. Lehet, hogy itt kéne mást tenni?)

Az oldalak egyébként gyönyörüen működnek vhostnak megfelelően.

Nagyon kéne a segítség!

Hozzászólások

es miert akarnad a www.valami.hu-ra a mysql-t? tobb ip-t van, es minden ip-re kulon mysql-t akarsz? vagy nem ertem.

t

Egy szerver van és több domaint kezel.
Apache virtualhost:

...
ServerName valami.hu
...

...
ServerName masik.hu
...

...stb.

A probléma az, hogy a mysql-t úgy kéne elérni, hogy
host: www.valami.hu
user: ...
passwd: ...

de így nem lehet, 203-as hibát ad, "nem lehet kapcsolódni a szerverhez"
Ha viszont azt adom meg, hogy
host: ip cím,
akkor megy, de ugye ez nem jó, mert a domainek alól kellene elérni, külön-külön.

Tudom, hogy én vagyok a béna és már nem vagyok világos, de egész nap ezzel szenvedek és már bosszant, úgy hogy elnézést.

Azt szeretném elérni, hogy a nálam kezelt domainevekhez, saját mysql hozzáférések legyenek.

www.valami.hu mysql adatbázisa és hozzáférése:
host: www.valami.hu
user: user1
passwd: user1pw
stb.

www.masik.hu
host: www.masik.hu
user: user2
passwd: user2pw
stb.

És nálam ez most így nem megy!!!!!
Csak ha minden domainhoz a szerver ip címét írom,
Tehát olyan, mintha a mysql nem venne tudomást a VirtualHostokról.

Gondolkodj már egy kicsit! Ha localhoston elérhető, akkor minek kellene domain nevet adni? Ha meg igen, akkor valószínűleg másik gépen van, de akkor megint nem jó a domain név, hiszen különálló gépen van, nem a webszerveren. Vagy nálatok az a divat, hogy minden domainhez külön mysql szerver van, külön vassal? Ezt kétlem, nem érné meg...

Még valami. Úgyis egy domainhez egy hozzáférés szokott tartozni, akkor megint felesleges a domain, elég a localhost...

VPS-t használnak :)

Én csak arra tudok gondolni, hogy mivel több adatbázis szerverük van, ezért a rendszergazda csinál mysql.domain.hu -t mindenkinek, és ezután szabadon tudja mozgatni az adatbázisokat a gépek között a terhelés elosztása miatt. Így az ügyfél tudta nélkül tud költöztetni. (Megfontolandó módszer a jövőre nézve!)

Nem teljesen értem a gondod de:
- localhostra bindeld a mysql-t, ez a www.akarmi.hu -s dolog nem tudom hogy jutott eszedbe
- GRANT ALL ON adatbazis1.* TO 'juzer1'@'localhost' IDENTIFIED BY 'jelszo1'
- GRANT ALL ON adatbazis2.* TO 'juzer2'@'localhost' IDENTIFIED BY 'jelszo2'

A fentivel rögtön jó leszel és persze localhost helyett azt kell beírni ahonnan jön a mysql-re a kapcsolat. Ha unix socketen jön ugyanarról a gépről, akkor is localhost. Például egy freebsd jailes konfigon lehet hogy a webszerveres jail a 127.0.0.2 és 127.0.0.3 a mysql jailje, akkor a fenti példában 127.0.0.2-t kell írni a localhost helyire (és persze TCP-n megy a kommunikáció).

MySQL elérést pedig nagyon nem ajánlott csak úgy publikusan bárhonnan elérhetően adni. A hangsúly a csak úgyon van.

(Ha ez esetleg egy fizetős shared hosting szerver, akkor sürgősen utána kéne olvasni a dolgoknak, mielőtt valami nagyobb baj lesz.)

Rendben, ez is nagyon fontos, megfogadom.

Tehát, akkor a fentiek alapján, ha valamelyikötöknél, mint szolgáltató lenne a www.valami.hu domain nevem és kérnék egy MySQL hozzáférést, akkor az alábbi adatokkal kapnám:

hostnév: localhost
usernév: egyuser
passwd: egypasswd
adatb.név: egyDB

Igaz?

Hogy mennyire biztonságos, azon lehet vitatkozni, de én ezt _tapasztaltam_ (bár elismerem, nincs nagy tapasztalatom, össz 3-4 esetről van szó):

ha a domained www.valami.hu, akkor

hostnév: localhost
adatb.név: valami
usernév: valami
passwd: egypasswd

--
A gazdagság legnagyobb forrása a két füled között van.