A Drupal magyar nyelvű népszerűségének növekedésével jogosan merült fel a kérdés, hogy miként telepíthető a különböző ingyenes szolgálatatók szervereire. Ezeken a kiszolgálókon általában különböző védelmeket építenek be, melyek korlátozzák a felhasználó mozgásterét, egyrészt a felhasználók egymástól való megvédése érdekében, másrészt a szerver egészségének megtartása végett. Ezek azonban nem minden esetben jönnek jól annak, aki Drupal rendszert szeretne telepíteni.
Eddig a következő tapasztalatokat sikerült összegyűjteni a különböző rendszereken:
Két alapproblémával kell megküzdeni a telepítéshez. Először is az UltraWeb valamiért egy belső átirányítást használ arra, hogy az index.php fájlnevet nem tartalmazó kéréseket az index.php-re irányítsa, ezért a webcímben átadott paramétereket nem kapja meg. Így a telepítés után bármilyen linkre kattintva továbbra is a honlapot kapjuk. Annak érdekében, hogy az index.php bekerüljön a linkekbe, a következőt keressük meg a common.inc fájlban az url() függvényben:
Cseréljük le a következőre:
Azaz minden esetben legyen benne az index.php a kérés címében.
Ettől kezdve a linkekre kattintva be tudjuk regisztrálni első felhasználónkat és elkezdhetjük beállítani a rendszert. Sajnos a második hiba, amivel találkozni fogunk, az valóban a Drupal hibája. A fordítási állomány feltöltésekor open_basedir hibát kapunk, mert a Drupal a PHP feltöltési könyvtárában próbálja megnyitni a fájlt, amit az UltraWeb beállítása nem enged meg. Amíg ezt a Drupalban nem javítják ki, addig a következőt ajánljuk. Vegyük fel a Magyar nyelvet az add language oldal lenyíló menüjéből, majd kapcsoljuk be (enabled) és állítsuk be azt alapértelmezettnek (default). Ezután töltsük fel a hu.po állományt, és a következő szkriptet az UltraWebes FTP gyökérkönyvtárunkba, és a szkriptet a böngészőből meghívva telepítsük a magyar fordítást:
include_once 'includes/common.inc';
include_once 'includes/locale.inc';
if (file_exists('hu.po')) {
// Drupal 4.5.0 esetén
// $file = 'hu.po';
// Drupal 4.5.1 vagy újabb verzió esetén
$file = (object) array('filepath' => 'hu.po');
_locale_import_po($file, 'hu', 'overwrite');
header('Location: index.php');
exit();
}
echo 'A hu.po nem található!';
?>
Ha minden jól megy, akkor automatikusan visszakerülünk a Drupal rendszerünk kezdőlapjára, ahol a beköszönő oldal már magyarul fog minket üdvözölni. Sajnos a menü továbbra is angol, mert a rendszer nem észlelte az új fordítás feltöltését, és a menü gyorsítótárat nem törölte. A modulok listáján a beállítások mentésével elérhetjük, hogy a menü gyorsítótár törlődjön, és a menüt is magyarul kapjuk meg. A továbbiakban a kiegészítő modulok fordításait hasonlóképpen tudjuk feltölteni, a modul csomagjában kapott hu.po importálásával.
Azt mindenképpen tartsuk észben, hogy mivel a .htaccess állományt nem engedi feltölteni az UltraWeb, a különböző speciális kiterjesztésű (.theme, .module, stb) állományaink nem védettek, azok a webről olvashatóak lesznek.
A cron.php időzített futtatását az Ultraweb adminisztrációs oldalán állíthatjuk be. A szolgáltató 3 időzítést engedélyez, így naponta 3x lehetséges az adatbázis leindexelése.
Rövid webcímek használatára nincs lehetőségünk.
A FreeWeb rendszerével kapcsolatban sajnos az a tapasztalatunk, hogy olyan mértékben korlátozzák a PHP beállításait, hogy ez nem teszi lehetővé a Drupal életképes futását. A fájl feltöltési méret limit 10k-ra van állítva, azaz a több mint 400k méretű fordítási állomány nem tölthető fel. Ez azt is jelenti, hogy később egy képet vagy PDF állományt sem tudunk majd valamely tartalmunkhoz fűzni, tehát a kilátások nem túl jók. Mégis megpróbálhatjuk a fenti módszert a hu.po feltöltésére és külön szkripttel történő importálására. Akkor azt fogjuk tapasztalni, hogy a FreeWeb rendszeren maximum öt másodpercig futhatnak a PHP szkriptek, ami a fordítás importáláshoz nem elegendő. Ezt a futási limitet programból nem tudjuk állítani.
Ennél a szolgáltatónál annyira kevés a PHP szkriptek számára megengedett memória használat, hogy ez egy funkcionális Drupal webhely számára nem tűnik elegendőnek.
Ezt az oldalt tervezzük a jövőben bővíteni további tapasztalatokkal, amennyiben azok rendelkezésre állnak. A telepítési problémákat továbbra is a fórumban szerencsés megvitatni, itt az eredmények summás megfogalmazása kaphat helyet.
A FreeWeb az egyik legrégebbi ingyenes tárhely szolgáltató Magyarországon, sajnos azonban csak korlátozott formában engedi futtatni a Drupal rendszert. Az érdeklődésre való tekintettel egy tesztrendszer beállításával megvizsgáltam az alap lehetőségeket. Lássuk hogyan telepíthetünk Drupal rendszert a Freeweben és mik a buktatók.
database mappájában található database.4.1.mysql nevű fájlt, és nyomjuk le a végrehajtás gombot. Ezzel létrejön az adatbázisunk, bezárhatjuk ezt az ablakot.sites/default/settings.php fájlt a számítógépünkön. Ugyanebben a fájlban vegyük ki a kettőskeresztet a $base_url beállítása elől, és adjuk meg záró perjel nélkül a webhelyünk címét. A file.inc-ben található chmod() hívásokat tegyük megjegyzésbe. Az email küldés működéséhez a FreeWeb PHP/CGI levélküldés oldalán generáljunk magunknak azonosítót, majd a user.module fájlban a user_mail() függvény végére a saját azonosítónkkal kitöltve a return előtt szúrjuk be a következő sort: $header .= "\nX-FW-MailID: ide-ird-az-azonositot"; Ezzel a forráskód előkészítésével készen vagyunk.scripts mappa felmásolása szükségtelen, ezeket a rendszer semmire nem használja. A .htaccess fájl feltöltését a FreeWeb nem engedélyezi.mkdir() miatt nem tudja létrehozni a files és uploads mappákat. Az FTP programunkban hozzunk létre egy files és az alatt egy uploads nevű mappát a weblapunk gyökerében. Mindkettőre adjunk írási jogot az egyéb csoport felhasználóinak (ennek módja FTP programtól függ). Térjünk vissza a Drupal felületére és adjuk meg a files és files/uploads karaktersorozatokat a fájlok és ideiglenes feltöltések mappájaként értelemszerűen. A Drupal létre fog hozni egy .htaccess állományt a files mappában. A Drupal FreeWeb-en történő telepítését és beállítását illetően a fentieken túl az átalános tanácsokat vehetjük figyelembe. A modulok beállítása, új sminkek felvétele stb. ugyanúgy működik mint bármely más kiszolgálón.
Érdemes megjegyezni, hogy mitől esünk el, ha a FreeWeb-et választjuk Drupal webhelyünk futtatására.
.htaccess nem tölthető fel, a .inc, .theme, .module és hasonló speciális kiterjesztésű fájljaink nem védettek a kíváncsi szemek előtt, ezek forráskódját tudják olvasni, meglétét tudják ellenőrizni..htaccess feltölthetetlensége és bizonyos beállítások átállításának tiltása miatt egyes PHP beállítások sem úgy állnak rendelkezésre, ahogyan a Drupal számára ideális lenne. Szerencsére az olyan esetek, mint a magic_quotes_gpc bekapcsolt állapota speciálisan kezeltek a kódban, ezért működik az ideálisan elvárt beállítások hiányában is a Drupal.files és az ez alatt található uploads mappa is a weben olvasható könyvtárban található (nem is tudjuk máshova tenni), csak azonosítással elérhető letöltések létrehozása nem lehetséges, hiába is próbáljuk bekapcsolni ezt az opciót a beállításoknál.Amennyiben részletesebben érdeklődünk a PHP beállításait illetően, a FreeWeb ugyan letiltja a phpinfo() használatát, de az ini_get() segítségével egyes PHP beállítások lekérdezhetőek, így ezzel a számunkra érdekes beállítások neveit ismerve felmérhetjük a környezet korlátait.
Ehhez a dokumentációhoz csak az ezt bővítő, pontosító, javító hozzászólásokat várunk, más (FreeWeb-hez kapcsolódó) problémák számára hoszting fórumunk ad megfelelő teret.
Ma gondoltam egyet és felraktam egy 5.1-es drupal-t a régi freeweb-es tárhelyemre. Mivel láttam, hogy a kézikönyvben még csak a 4.7-es verzióhoz való leírás szerepelt, így gondoltam megosztom a tapasztalataimat.
Nagyjából a következő lépésekből áll a telepítés:
# $base_url = 'http://www.example.com';$base_url = 'http://www.freeweb.hu/mycroft';A "régi" leírásban szereplő hiányosságok továbbra is érvényesek (pl. .htacces tiltása, rövid webcímek hiánya stb.)
Hirtelenjében ennyi tapasztalatom akadt, ahogy elkezdem használni a rendszert, még lehet hogy előjön valami, azt természetesen jelzem.
Ha valami hülyeséget írtam, szóljatok! :)
Az Ultraweb (UW) ingyenes szolgáltató PHP és MySQL rendszert biztosít, melyeken a Drupal működtethető (bár nem ideális konfigurációban). Mivel folyamatosan nagy az érdeklődés az UW-n való telepítést illetően, és sok a félreértés, az imént próbaképpen végrehajtottam egy teljes Drupal 4.7.2 telepítést, melynek lépéseit és tapasztalatait az alábbiakban igyekeztem összefoglalni.
A Drupal beállításához tehát tegyük a következőket:
database mappájában található database.4.1.mysql nevű fájlt, és nyomjuk le a végrehajtás gombot. Ezzel létrejön az adatbázisunk, bezárhatjuk ezt az ablakot.sites/default/settings.php fájlt a számítógépünkön. Az ugyanebben a fájlban található ini_set() hívásokat tegyük megjegyzésbe, a file.inc-ben található chmod() és realpath() hívásokat tegyük megjegyzésbe. Keressük meg a common.inc fájlban az url() függvény kódját és a $script = (strpos... sort teljes egészében cseréljük le annyira, hogy $script = 'index.php';. Ezzel a forráskód előkészítésével készen vagyunk.index.php-re. Jegyezzük meg a weben olvasható belépési adatokat, váltsunk át egy FTP progamra, és másoljuk fel a Drupal csomag fentiek szerint szerkesztett tartalmát. A gyökérben található szöveges fájlok és a scripts mappa felmásolása szükségtelen, ezeket a rendszer semmire nem használja. A .htaccess fájl feltöltését az Ultraweb nem engedélyezi.files mappát és az abban található .htaccess állományt. Hibát ad viszont a feltöltésre használt mappát illetően, amit kézzel kell létrehoznunk (a files mappán belül célszerű uploads néven), és ennek megfelelően beállítani a Drupal által hibásnak jelölt értéket.cron.php rendszeres futtatását. Ez nagyon ajánlott, ha például a kereső modul szolgáltatásait igénybe szeretnénk venni, vagy a gyorsítótár régebbi bejegyzéseit törölni szeretnénk időről-időre. Leggyakrabban naponta futtathatjuk a szkriptet, megválasztva az időpontot, amikor végre kell hajtani. Később a Drupal eseménynaplóban tekinthetjük vissza, hogy sikeres volt-e a futtatás.A Drupal Ultraweb-en történő telepítését és beállítását illetően a fentieken túl az átalános tanácsokat vehetjük figyelembe. A modulok beállítása, új sminkek felvétele stb. ugyanúgy működik mint bármely más kiszolgálón.
Érdemes megjegyezni, hogy mitől esünk el, ha az Ultrawebet választjuk Drupal webhelyünk futtatására.
.htaccess nem tölthető fel, a .inc, .theme, .module és hasonló speciális kiterjesztésű fájljaink nem védettek a kíváncsi szemek előtt, ezek forráskódját tudják olvasni, meglétét tudják ellenőrizni.ini_set() tiltása és a .htaccess feltölthetetlensége miatt bizonyos PHP beállítások sem úgy állnak rendelkezésre, ahogyan a Drupal számára ideális lenne. Szerencsére az olyan esetek, mint a magic_quotes_gpc bekapcsolt állapota speciálisan kezeltek a kódban, ezért működik az ideálisan elvárt beállítások hiányában is a Drupal.files és az alatta található uploads mappa is a weben olvasható könyvtárban található (nem is tudjuk máshova tenni), csak azonosítással elérhető letöltések létrehozása nem lehetséges, hiába is próbáljuk bekapcsolni ezt az opciót a beállításoknál.Amennyiben részletesebben érdeklődünk a PHP beállításait illetően, az UW nem tiltja a phpinfo() használatát, így egy ezt meghívó egyszerű szkript létrehozásával áttekinthetjük a futtatókörnyezet képességeit.
Ehhez a dokumentációhoz csak az ezt bővítő, pontosító, javító hozzászólásokat várunk, más (ultrawebes) problémák számára hoszting fórumunk ad megfelelő teret.