Linux/Apache
 

APACHE WEB SERVER I VHOST
Datum objavljivanja 02.10.2006

 
 
    Ovo malo uputstvo pokazuje kako jednstavno podesiti virtuelni sajt na Fedora Core Linuxu. Potrebno je omogućiti korisnički web direktorijum i zatim podesiti virtuelni sajt koristeći tu lokaciju. Naravno mogu se napraviti i druge lokacije i podesiti drugi virtuelni sajtovi ako je nekome to potrebno

----------------------------------------------------------------------------------------------------------------------------------------
Prvi korak

Ovo uputstvo podrazumeva da je Apache web server već instaliran  i da radi (na Fedora Core Linuxu HTTPD paket je već instaliran).Takođe je potreban root password od računara na kome radimo.

Može se postaviti bilo koje ime koje želite za vaš virtuelni sajt, čak i ime sajta koje već postoji na internetu (microsoft.com). Zbog promene lokalne liste hostova i IP adresa, Linux će preusmeriti sve zahteve za vaš virtuelni sajt ka lokalnom Apache web serveru.

Podešavanje strukture virtuelnog sajta

Najčešće se koristi lokalni korisnički diektorijum za smeštanje Apache virtuelnih sajtova (ovo ne zahteva root password). Preporučujem ~/public_html način koji je najčešće korišćen na Unixima. Minimum koji bih preporučio je public_html direktorijum i cgi-bin direktorijum. Imajte na umu da svaki direktorijum mora imati neophodne dozvole da bi server mogao da im pristupa.


[mirandam@charon ~]$ cd /home/
[mirandam@charon home]$ chmod 711 ~
[mirandam@charon home]$ cd ~
[mirandam@charon ~]$ mkdir public_html
[mirandam@charon ~]$ chmod 755 public_html
[mirandam@charon ~]$ cd public_html
[mirandam@charon public_html]$ mkdir cgi-bin
[mirandam@charon public_html]$ chmod 701 cgi-bin



Svaki virtuelni sajt mora imati jedinstveno podešenu strukturu direktorijuma.

Mogu se koristiti i druge lokacije ako neko to želi. Najčešće korišćeni su /usr/local, /opt/, i /var/www/.
primer:

/usr/local/vsites/site1
/usr/local/vsites/site2

Podešavanje Apachea

Kao root izmeniti httpd.conf. U Fedora Core Linuxu taj fajl se nalazi u: /etc/httpd/conf/httpd.conf .Dobro je da se pre izmene napravi rezervna kopija originalnog fajla. Posle svih izmena u konfiguracionom fajlu potrebno je restartovati Apache web server.

Podešavanje korisničkih direktorijuma

Da bi omogućili korisničke direktorijume potrebno je editovati httpd.conf u liniji ~333 i promeniti sledeći sadržaj:

<IfModule mod_userdir.c>
    UserDir disable
    # UserDir public_html
</IfModule>

treba da stoji ovako:

<IfModule mod_userdir.c>
    # UserDir disable
    UserDir public_html
</IfModule>

Ako želite da definišete koji korisnici će moći da pristupaju sajtu, tada iskoristite UserDir parametar sa listom korisničkih imena:

UserDir enable username

Podešavanje virtuelnih sajtova

Omogućavanje virtuelnih sajtova na lokalnom računaru uklanjanjem kometara sa linije ~953:

# Use name-based virtual hosting.
#
NameVirtualHost *:80

Svaki virtuelni sajt se dodaje na kraju fajla.

<VirtualHost *:80>
    ServerAdmin mirandam@googles_email_service
    DocumentRoot /home/mirandam/public_html/
    ServerName mjmwired.charon
    ServerAlias mjwmired.charon *.mjmwired.charon
    ErrorLog logs/mjmwired-error_log
    CustomLog logs/mjmwired-access_log common

    ErrorDocument 403 /403.html
    ErrorDocument 404 /404.html

    ScriptAlias /cgi-bin/ "/home/mirandam/public_html/cgi-bin/"
    <Directory "/home/mirandam/public_html/cgi-bin/">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Za podešavanje jedinstvenih parametara za svaki sajt (stvari kao sto su SSI, redirect,i dr) može se ubaciti između <VirtualHost> tagova. Na primer  403 i 404 prema fajlovima koje sami kreirate .

Posle napravljenih izmena, sačuvati ih u konfiguracionom fajlu i restartovati Aapche. Na Fedora Core Linuxu to bi izgledalo ovako:

[root@localhost ~]# /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: 

Podešavanje hostname adrese


Budući da je svaki virtuelni sajt postavljen na lokalnoj mašini, potrebno je da damo do znanja mašini kako da reši IP adresu za svaki virtuelni sajt.

Editovati /etc/hosts (kao root) da bi dodali sadržaj za svaki virtuelni sajt koji je dodat. Svaki sajt će pokazivati na localhost adresu koja je uvek 127.0.0.1.

Primer:

127.0.0.1       mjmwired.charon

Budite sigurni da ste stavili ono što imate u ServerName parametru.

Sada je sigurno da se može pristupiti svakom sajtu na našoj mašini: osnovni sajt (localhost), vaš korisnicki sajt (~username), i vaš virtuelni sajt.

Primer:

   1. http://localhost/
   2. http://localhost/~mirandam/
   3. http://mjmwired.charon/


-----------------------------------------------------------------------------------------------------

prevedeno sa http://www.mjmwired.net/resources/mjm-apache-virtual-sites.html
 
atomic 2005