„Webszerver által létrehozott könyvtárak és fájlok jogosultságainak módosítása” változatai közötti eltérés
(Új oldal, tartalma: „== Webszerver által létrehozott könyvtárak és fájlok jogosultságainak módosítása == A [http://www.w3host.hu W3HOST] webtárhelyekre elhelyezett weboldalak nag…”) |
|||
14. sor: | 14. sor: | ||
Tehát: | Tehát: | ||
* A ''jogosultsag.php'' fájl látrehozása a következő tartalommal: | * A ''jogosultsag.php'' fájl látrehozása a következő tartalommal: | ||
+ | |||
<source lang="php"> | <source lang="php"> | ||
<?php | <?php | ||
75. sor: | 76. sor: | ||
</source> | </source> | ||
− | * A php szkript futtatása: | + | |
− | Pl.: ''http://www.kutyakeksz.hu/konyvtar/jogosultsag.php'' | + | * A php szkript futtatása: Pl.: ''http://www.kutyakeksz.hu/konyvtar/jogosultsag.php'' |
+ | |||
+ | Amint ez megtörtént, FTP kapcsolaton keresztül már nem fog gondot okozni ez a szerver környezet. | ||
+ | |||
[[Category: Webtárhely]] | [[Category: Webtárhely]] |
A lap 2013. március 11., 18:04-kori változata
Webszerver által létrehozott könyvtárak és fájlok jogosultságainak módosítása
A W3HOST webtárhelyekre elhelyezett weboldalak nagyobb biztonsága érdekében a php fájlokat futtató webszerver más felhasználói jogosultságokkal fut, mint amit FTP kapcsolaton keresztül használunk. Ennek előnye a nagyobb biztonság, azonban okoz némi kényelmetlenséget is (főleg Joomla használata esetén).
A kényelmetlenség akkor jelentkezik, mikor törölni szeretnénk a teljes oldalt FTP kapcsolaton keresztül, és néhány könyvtár és fájl ott marad a tárhelyen (azok maradnak ott, amelybe a weboldalunk elhelyezett valamit).
Miért jelent ez nagyobb biztonságot?
Mert ha figyelünk a helyes könyvtárak és fájlok jogosultságaira, akkor a webszerver (azaz a weboldal) csak azokat a fájloknak és könyvtáraknak a tartalmát tudja módosítani, amit mi engedélyezünk! Tehát mi szabályozhatjuk! Ez nagyon fontos. Azonban néhány speciális esetben ez fordítva is igaz lesz. Azaz FTP kapcsolattal mi sem fogjuk tudni írni/módosítani a webszerver (azaz a weboldal) által létrehozott tartalmat, azaz még törölni sem.
Itt egy kicsit speciálisabban is olvashatunk erről.
Ha törölni/módosítani szeretném a webtárhelyem teljes tartalmát, mit tegyek?
Hozzunk létre a webtárhelyünkön egy fájlt, pl.: jogosultsag.php. Ezt a fájlt ott helyezzük el, amely könyvtárban, és az összes alkönyvtárban szeretnénk elvégezni a jogosultság beállítást. Ez a megoldás NEM csökkenti a webtárhely biztonságát, csupán jogosultságot ad az FTP írhatóságra.
Tehát:
- A jogosultsag.php fájl látrehozása a következő tartalommal:
<?php echo "<html>"; echo "<head>"; echo "<title>W3HOST - Webtárhely fájlok és könyvtárak jogosultságainak beállítása. />"; echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>"; echo "<meta name=\"description\" content=\"Minta a webszerver által létrehozott fájlok és könyvtárak jogosultságának módosítására.\" />"; echo "</head>"; echo "<body>"; echo "<pre>"; $success=true; // Fájlok $success=$success && changefilemod(); // Könyvtárak $success=$success && changedirmod(); if ($success) { echo "\n\nA script futása sikeresen végetért."; } else { echo "\n\nA script futása közben hiba törtent!"; } echo "</pre>"; echo "</body>"; echo "</html>"; function changefilemod() { echo "\n\n1. Fájlok jogosultságainak beállítása...\n"; $command="find " . $_SERVER["DOCUMENT_ROOT"] . " -uid " . posix_geteuid() . " -type f -exec chmod 664 '{}' \;"; $output = system($command, $retval); if ($retval) { echo "\nA fájlok jogosultságainak beállítása NEM sikerült.\n"; echo $output; return false; } echo "\nA fájlok jogosultságainak beállítása sikeresen megtörtént.\n"; return true; } function changedirmod() { echo "\n\n2. Könyvtárak jogosultságainak beállítása...\n"; $command="find " . $_SERVER["DOCUMENT_ROOT"] . " -uid " . posix_geteuid() . " -type d -exec chmod 775 '{}' \;"; $output = system($command, $retval); if ($retval) { echo "\nA könyvtárak jogosultságainak beállítása NEM sikerült.\n"; echo $output; return false; } echo "\nA könyvtárak jogosultságainak beállítása sikeresen megtörtént.\n"; return true; } ?>
- A php szkript futtatása: Pl.: http://www.kutyakeksz.hu/konyvtar/jogosultsag.php
Amint ez megtörtént, FTP kapcsolaton keresztül már nem fog gondot okozni ez a szerver környezet.