Apache/PHP: Ændre i virtual hosts

Tags:    apache php linux ubuntu server-side

Kære udviklere.

Jeg sidder lige nu og arbejder på et ret svært projekt.
Jeg prøver at lave et kontrolpanel til min VPS-server, således at jeg ikke skal 117 steder, for at tilføje et nyt domæne, men at jeg bare kan gøre det på min hjemmeside.

Mit problem er dog:
På hjemmesiden kan man oprætte domæner og sub-domæner, men for some weird reason, så kan jeg ikke få PHP til at skrive i /etc/apache2/sites-available/xx

Inden den skriver i filen, har jeg sat den til at udføre:
chmod("/etc/apache2/sites-available/xx", "777");
Og når den så har udført skrive-kommandoen, så udfører den:
chmod("/etc/apache2/sites-available/xx", "644");

Jeg har også prøvet at sætte et 0 (NUL) foran 777 og 644, men det hjalp ikke noget som helst.

Er der nogen som ved, hvordan man kan løse dette problem?

Det er nemmere for mig, hvis jeg kun skal ind på 2 hjemmesider for at oprætte et domæne eller subdomæne på min server, fremt for at jeg først skal ind og oprette DNS (min hosting provider's hjemmeside), for dernæst at lave Apache2 virtualhost filer, for til sidst at logge ind på min mailserver's MySQL server og oprette en bruger osv.

Jeg kører Ubuntu 10.04 LTS og Apache2.

Håber at nogen kan hjælpe, jeg er virkelig gået i stå nu, aner ikke hvordan jeg skal løse dette problem.

NB: Jeg har prøvet med fwrite(); i hjemmesiden's mappe (ofte kendt som public_html eller htdocs), og dér virkede det kun, hvis filen eksisterede + havde CHMOD 777 (underligt må jeg godt nok indrømme).

På forhånd tak for jeres hjælp.



3 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Det er helt sikkert et spørgsmål om, at apache ikke har rettigheder til at skrive til den mappe. Hvordan du ændrer det, er jeg i tvivl om.

Måske du kunne løse det ved, at apache gemmer filen et andet sted og et cron job samler op og flytter filerne løbende?



Eller lave et shell script som kan lave det hårde arbejde, mens PHP blot sender nogle parametrer sammen med exec/system kald.



Stefan: Åbenbart. Jeg kunne godt læse filerne, men ikke skrive i dem, hvilket undrer mig.
Jeg ved intet om Cron Jobs, vi lærer det ikke lige på min uddannelse (Web Integrator på Roskilde Tekniske Skole)...
Men det lyder som en okay løsning.

Michael: Kunne gøres sådan ja, men det er jo lige med at få struktureret det, så det bliver gjort ordentligt, og så der ikke er fejl.

------ EDIT!!! ------

Videre svar til Michael:

Jeg har kigget på suexec til Apache2, og der stod bl.a. at hvis man ikke var bekendt med suexec, skulle man undgå at bruge det.

Vi lærer generelt intet om server opsætning på min uddannelse, det eneste vi lærte i faget "Web Server" var at sætte virtual hosts, .htaccess-filer og lignende, men INTET om Ubuntu.

Alt blev testet i XAMPP (Windows), hvilket jeg syntes er latterligt.



Indlæg senest redigeret d. 14.01.2012 14:53 af Bruger #10243
t