Ez a leírás a xampp.org oldalon található Windows-ra telepíthető csomagjához készült. A doksi segítségével lokális fejlesztéshez (localhost-on 127.0.0.1) új ‘domaint’ hozhatunk létre.
Miért jó ez:
- hasonló környezet mint a végleges domain alatt
- az adott Hostra akár egyedi konfigurációt is alkalmazhatunk
- projektjeink elkülönülhetnek
- .htaccess (Apache és PHP) beállítások teljes arzenálját használhatjuk
A Xampp csomag előnyös tulajdonságai:
- rendkívül jól felszerelt
- naprakész
- telepíteni-és frissíteni gyerekjáték
Hátrányok:
- picit nagyobbacska (pendrive-ra)
Mi kell a beállításokhoz:
- startra kész telepített XAMPP szerver pack
- szövegszerkesztő pl.: NotePad++
Xampp Apache könyvtár struktúrája:
A példában Windows Xp környezetben az E: meghajtóra telepítettem a Xampp-ot. (E:/xampp). Minden lépés előtt, mentsük azt a könyvtárat amiben változtatunk; ha gond volna akkor csak másoljuk vissza a mappát (A szervert azért állítsuk le .
A beállítás menete:
0, keressük meg a konfig fájlban ezt a bejegyzést és a #Deny részt módosítsuk így:
- <Directory />
- Options FollowSymLinks
- AllowOverride None
- Order deny,allow
- #Deny from all
- </Directory>
Engedélyezzük a mod_rewrite modult. Keressünk rá a (LoadModule rewrite_module) kifejezésre, és ha van # jel előtte azt vegyük ki.
- LoadModule rewrite_module modules/mod_rewrite.so
1, Engedélyezzük a .HTACESS használatát. Ezzel a .htaccess-ben belőhető összes lehetőség is engedélyezve lesz.
A telepített xampp mappában startoljunk be az apache/conf könyvárba és nyissuk meg szövegszerkesztővel a httpd.conf nevű fájlt.
Kerssünk rá a .htaccess kifejezésre a fájlban (CTRL + F).
- <FilesMatch “^.ht”>
- Order allow,deny
- #Deny from all #ez most nem kell
- </FilesMatch>
Mentsük el a fájlt
2, Az extra mappából nyissuk meg a httpd-vhosts.conf nevű fájlt. Ez tartalmazza a virtual host-okat. Ide kell beírnunk a sajátunkat is. Előtte a célmappát hozzuk létre, és tegyünk bele egy teszt fájlt (E:/xampp/htdocs/www/akarmi).
- NameVirtualHost local.akarmi.hu:80
- <VirtualHost 127.0.0.1:80>
- ServerAdmin [email protected]
- DocumentRoot “E:/xampp/htdocs/www/akarmi”
- ServerName local.akarmi.hu
- </VirtualHost>
3. Nincs más dolgunk, mint a Windows-nak is megmondani, hogy ezt a host-ot ne interneten keresse, hanem a sajátgép (127.0.0.1) tartományba. Ha a Windowst a C meghajtóra telepítettük: C:/WINDOWS/system32/drivers/etc/hosts nevű fájt nyissuk meg és jegyezzük be az új domainünket.
- #IP domain
- 127.0.0.1 local.akarmi.hu
4, Indítsuk újra az Apache-ot
5, írjuk be a böngészőbe az új címet: local.akarmi.hu
A leíráshoz csatolt programhoz PHP futási lehetőség kell, valamint a képen látható két paramétert állítsuk be. A progi hívásakor írjuk be az URL-t: local.akarmi.hu és adjuk meg az útvonalat ahová a DocumentRoot mutani fog (a mappa amiben a fájlok lesznek). A program elvégzi helyettünk a piszkos munkát, nincs más dolgunk mint az Apache-ot újraindítani.
A PHP fájl letöltéséhez a csatolt állományok között.
error_reporting(E_ERROR);
if(!empty($_POST))
{
//windows host fájl
$host_file_path=”C:/WINDOWS/system32/drivers/etc/hosts”;
//apache vhost conf fájl
$vhost_file_path=”E:/xampp/apache/conf/extra/httpd-vhosts.conf”;
$vhost_path=trim($_POST["vhost_path"]);
$vhost_url=trim($_POST["vhost_url"]);
$datum=date(“Y-m-d H:i:s”);
$new_vhost_tag=<< ############################################### NameVirtualHost $vhost_url:80 Whost_Tag; $new_hosts=<< ############################################### 127.0.0.1 $vhost_url NEwHosts; ############################################### ############################################### } ############################################################################################## $path=($vhost_path) ? trim($vhost_path) : dirname(__FILE__); $form =<< Vhost PATH
FORM; ?> Tanácsok: Hajrá, lokális fejlesztésre fel! hasonló bejegyzés:
# $vhost_url
# $datum
###############################################
ServerAdmin admin@$vhost_url
DocumentRoot “$vhost_path”
ServerName $vhost_url
# $datum
#hosts
$hosts=fopen($host_file_path, “a+”);
if($hosts)
{
fwrite($hosts, $new_hosts);
}else
{
echo “a hosts fájl nem található”;
}
fclose($hosts);
#vhost write
$vhosts=fopen($vhost_file_path, “a+”);
if($vhosts)
{
fwrite($vhosts, $new_vhost_tag);
}else
{
echo “a vhost.conf fájl nem található”;
}
fclose($vhosts);
##############################################################################################
$vhost_url= ($vhost_url) ? trim($vhost_url) :”local.name.hu”;
echo $form;
0