Apache restart
Sziasztok.
Először is szeretném leszögezni, hogy új környezet számomra a linux és akadt is vele egy kis gondom...
Készítettem egy olyan php alkalmazást, aminek a segítségével elméletileg különösebb bonyodalom nélkül képes vagyok a localhost-hoz aldomaint hozzáadni. Nem egy bonyolult szkript, viszont ahhoz hogy ez működjön ügye újra kellene indítani az apache-ot, vagy legalábbis újra beolvasni a konfigurációs állományokat. És itt van a probléma.
Csináltam egy /var/www/addhost/apache.sh filet, amit shell_exec() el futtatok és aminek a tartalma a következő:
/etc/init.d/apache2 reload >> /var/www/addhost/apache.log
Egyrészt az a problémám ezzel, hogy egészen egyszerűen nem működik az apache újraindítása / konfigok újratöltése, másrészt pedig a logban néha van üzenet, néha pedig nincsen... és nem igazán értem hogy, miért...
Amikor kapok üzenetet a logba, akkor azt mondja, hogy nincsen jogosultságom az apache babrálásához. Több kérdésem is van ezzel kapcsolatban...
1: hogyan tudnám elérni, hogy legyen jogosultságom?
2: egyáltalán mi dönti el, hogy a php-nak mihez van jogosultsága?
3: ha az dönti el, hogy ki futtatja, akkor hogyan tudom különböző xy felhasználó programjaként futtatni?
Remélem érthető, hogy mi a gondom... :)
A válaszokat előre is köszönöm! :))
■ Először is szeretném leszögezni, hogy új környezet számomra a linux és akadt is vele egy kis gondom...
Készítettem egy olyan php alkalmazást, aminek a segítségével elméletileg különösebb bonyodalom nélkül képes vagyok a localhost-hoz aldomaint hozzáadni. Nem egy bonyolult szkript, viszont ahhoz hogy ez működjön ügye újra kellene indítani az apache-ot, vagy legalábbis újra beolvasni a konfigurációs állományokat. És itt van a probléma.
Csináltam egy /var/www/addhost/apache.sh filet, amit shell_exec() el futtatok és aminek a tartalma a következő:
/etc/init.d/apache2 reload >> /var/www/addhost/apache.log
Egyrészt az a problémám ezzel, hogy egészen egyszerűen nem működik az apache újraindítása / konfigok újratöltése, másrészt pedig a logban néha van üzenet, néha pedig nincsen... és nem igazán értem hogy, miért...
Amikor kapok üzenetet a logba, akkor azt mondja, hogy nincsen jogosultságom az apache babrálásához. Több kérdésem is van ezzel kapcsolatban...
1: hogyan tudnám elérni, hogy legyen jogosultságom?
2: egyáltalán mi dönti el, hogy a php-nak mihez van jogosultsága?
3: ha az dönti el, hogy ki futtatja, akkor hogyan tudom különböző xy felhasználó programjaként futtatni?
Remélem érthető, hogy mi a gondom... :)
A válaszokat előre is köszönöm! :))
mivel nem írtad melyik dist
sudoers
DE! én a helyedben írnék egy scriptet, ami rámutat az apachera scriptjére, mert ha valamilyen biztonsági résen bejutnak bárki tetszés szerűen kezeli majd az apacheodat. Leginkább nem ajánlom. Te tudod.
+1
Az már csak apróság a fentiek mellett, hogy a reload is tart egy kis ideig és addig a szervered nem fog kiszolgálni.
Én szóltam.
köszi a féltést :)
Ellenben az még mindig nagyon érdekel, hogy ha nekem van ügye fent egy jólszituált apache, és mellé egy php értelmező, akkor ha megnyitok egy böngészőt, és abban egy localhostos php scriptet, akkor a php értelmező, illetve az apache az kinek a neve alatt fog futni? És egyáltalán milyen jogai lesznek? mely helyeken képes majd módosítani? stb... :)
valójában szeretnék összerakni egy tárhely szolgáltatást a saját gépemen. persze nem külső ügyfeleknek, hanem csak így magamnak ismerkedés gyanánt, hogy belelássak hogyan is működik ez. :) Persze a domain nevek itt ügye a localhost különböző aldomainjai lennének... És minden domainhez tartozó szkript csak a saját könyvtárában lenne képes módosításokat végezni és az egyéb szokásos dolgok. :)
Ha esetleg tudtok ajánlani egy vagy akár több könyvet, cikket, blogot, bármit ami segíthet, azt nagyon nagyon megköszönném, és irtó hálás lennék! :)
Jó volna ha elsősorban magyar nyelven tudnám olvasni, de persze az sem kifejezetten probléma ha angol nyelvű, max lasabban haladok valamivel... :) Legalább az angolt is fejlesztem közben :)))))
PHP jogok
Ami a tárhely szolgáltatást illeti, az elmúlt 3 évem jelentős részét abba fektettem, hogy összerakjam a témát és gondolom nem is kell mondjam, nem egyszerű. Ha nem csak saját alkalmazásokat akarsz futtatni, akkor egy csomó probléma szembe fog jönni, amire nem is gondoltál. Példának okáért egy pár ilyesmi:
Ezek persze csak akkor jönnek elő, ha már van néhány tucat ügyfeled, akik közül nem mindenki ért ahhoz, amit csinál, ellenben szereti ezt gondolni. Arról a problémáról nem is beszélve persze, hogy hogyan konfigurálod a szervert (a reload itt a fent említett problémák miatt nem megoldás, hiszen egy ügyfél folyamatosan confolja a hostjait, akkor akadozik a szolgáltatás, ráadásul ha ketten kérnek egyszerre reloadot, abból vicces dolgok lesznek).
Ha ilyesmit szeretnél csinálni, akkor először is jóóó alaposan meg kell ismerkedned a Linux kernel rejtelmeivel (példál a már sokat emlegedett Tannenbaum - Oprendszerek könyv révén) és föl kell szedned némi C tudást is, ugyanis anélkül a feladat nem valósítható meg tisztességesen. Emellé nem árt valami Python vagy Perl sem, hiszen a konfiguráló szoftvereidet valamiben meg kell írnod. Ezen felül nem árt egy kicsit érteni a hálózatokhoz sem, amiben ez a könyv nagy segítség. Aztán ha ezek mind megvannak, akkor A-Z el kell olvasni az Apache és a potenciális konkurensek manualját, majd el kell olvasni még egyszer.
Köszi
Az hogy sok mindent el kell sajátítani ahhoz, hogy meg tudjam valósítani, az nem gond mert egyrészt szeretek tanulni, másrészt pedig érdekel a téma, ráadásul mindhárom említett nyelv szimpatikus.
Köszönöm a könyveket, megyek és bele is ásom magam a témába. :)