Apache, virtual host, dyndns
Dobrodošli, Gost. Molim vas prijavite se ili se registrujte.

Prijavite se sa korisničkim imenom, lozinkom i dužinom sesije

Linuxo Forumi

Stranice: [1] 2   Idi dole
  Štampaj  
Autor Tema: Apache, virtual host, dyndns  (Pročitano 2908 puta)
0 članova i 1 posetilac pregledaju ovu temu.
zchira
Hero Member
*****
Van mreže Van mreže

Poruke: 570


« poslato: 08 Април 2009, 19:52:27 »

Par dana pokusavam da podesim/konfigurisem sledece:
imama 2 racunara (laptor i desktop).
desktop je 192.168.1.120
laptop je 192.168.1.130

na desktopu je instaliran i postavljen apache.
Na ruteru preko koga idem na net (adsl) imam podrsku za dyndns, tako da od spolja mogu da pristupim racunaru sa neshto.dyndns.org ...

Pokusao sam da postavim virtualHost tako da mi (gledano sa desktopa) http://cake.localhost/
bude na /home/zchira/http/
To sam nekako i podesio, ali je problem sto se nista ne vidi ni od spoljne mreze (sa posla) ni sa laptop-a.
Kada sa laptopa pokusam da pristupim desktopu:
http://192.168.1.120/

dobijam

Citat
Access forbidden!

You don't have permission to access the requested directory. There is either no index document or the directory is read-protected.

If you think this is a server error, please contact the webmaster.
Error 403
192.168.1.120
Wed Apr 8 20:35:30 2009
Apache/2.2.11 (Unix) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8k


jel moze neko da mi da neki savet?

Dakle treba mi da imam virtual host na apacheu i da mogu da mu pristupam sa laptopa i (eventualno) od spolja.
Prijavi uredniku   Sačuvana

paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #1 poslato: 08 Април 2009, 20:13:44 »

Mislim da je permission problem. Probaj da taj /home/zchira/http/ premestis u /var/www/html/ i onda sootvetno prmeni virtuelne host direktive u apache config fajl, i pokusaj opet.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
zchira
Hero Member
*****
Van mreže Van mreže

Poruke: 570


« Odgovor #2 poslato: 08 Април 2009, 20:25:59 »

Mislim da to nije problem, jer sa laptopa ne vidim (Access forbidden) ni defaultni host (na http://192.168.1.120/ ). Inace default se kod arch  linuxa ne nalazi u /var/www/html nego na /home/httpd/html.
Inace moji conf fajlovi su ovakvi:

httpd-vhosts.conf

Citat

#
# Use name-based virtual hosting.
#
NameVirtualHost 192.168.1.120

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost 192.168.1.120>
#    ServerAdmin webmaster@localhost
    DocumentRoot "/home/httpd"
    ServerName localhost
#    ServerAlias localhost
#    ErrorLog "/var/log/httpd/default.host-error_log"
#    CustomLog "/var/log/httpd/default.host-access_log" common
</VirtualHost>

<VirtualHost 192.168.1.120>
#    ServerAdmin webmaster@cake.localhost
    DocumentRoot "/home/zchira/httpd/cake"
    ServerName cake.localhost
#    ErrorLog "/var/log/httpd/cake-error_log"
#    CustomLog "/var/log/httpd/cake-access_log" common


<Directory "/home/zchira/httpd/cake">
    AllowOverride None
    Options ExecCGI
    DirectoryIndex index.php
    Order allow,deny
    Allow from all
</Directory>


</VirtualHost>



mozda i ovo ima nekog znacaja:
fajl hosts
Citat

#
# /etc/hosts: static lookup table for host names
#

#<ip-address>   <hostname.domain.org>   <hostname>
127.0.0.1      localhost.localdomain   localhost
192.168.1.120      cake.localhost
# End of file
Prijavi uredniku   Sačuvana

paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #3 poslato: 08 Април 2009, 20:36:45 »

Ne znam kako to ide na ARCH-u al mislim da jedan od problem je da treba da promenis ovo:

NameVirtualHost 192.168.1.120

u ovo

NameVirtualHost 192.168.1.120:80

tako da zna apache da NameVirtualHost direktive su na port 80 jer moze da budu i na 443 (SSL)

Isto i ove stavke:

<VirtualHost 192.168.1.120>

promeni da budu:

<VirtualHost 192.168.1.120:80>

I normalno ne zaboravi da resetujes apache nakon svega.

 na kraju svega, proveri da ti iptables ili neki firewall ne blokira pristup.

Isto taka vidi i u one "/etc/hosts.allow" i "/etc/hosts.deny" da ne ima nesto.

Proveri posle toga i port 80 gde i kako slusa t.e. na koje IP adrese i sl, a to mozes sa komandom:

netstat -anlp | less
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
zchira
Hero Member
*****
Van mreže Van mreže

Poruke: 570


« Odgovor #4 poslato: 08 Април 2009, 20:56:22 »

nije pomoglo....

netstat -anlp mi daje ovako neshto:

Citat
[root@localhost etc]# netstat -anlp
Active Internet connections (servers and established)                                                                         
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name                             
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                                             
tcp        0      0 0.0.0.0:2401            0.0.0.0:*               LISTEN      5446/xinetd                                   
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      5406/mysqld                                   
tcp        0      0 0.0.0.0:33547           0.0.0.0:*               LISTEN      5596/xfce4-session                           
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      5455/portmap                                 
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      5358/httpd                                   
tcp        0      0 0.0.0.0:48532           0.0.0.0:*               LISTEN      -                                             
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      5437/sshd                                     
tcp        0      0 0.0.0.0:53975           0.0.0.0:*               LISTEN      5478/rpc.mountd                               
tcp        0      0 0.0.0.0:41879           0.0.0.0:*               LISTEN      5465/rpc.statd                               
tcp        0      0 192.168.1.120:22        192.168.1.130:44055     ESTABLISHED 5952/sshd: zchira [                           
tcp        0      0 :::37586                :::*                    LISTEN      5596/xfce4-session                           
udp        0      0 0.0.0.0:2049            0.0.0.0:*                           -                                             
udp        0      0 0.0.0.0:977             0.0.0.0:*                           5465/rpc.statd                               
udp        0      0 0.0.0.0:35027           0.0.0.0:*                           5478/rpc.mountd                               
udp        0      0 0.0.0.0:48733           0.0.0.0:*                           -                                             
udp        0      0 0.0.0.0:55136           0.0.0.0:*                           5465/rpc.statd                               
udp        0      0 0.0.0.0:111             0.0.0.0:*                           5455/portmap             


Ova ssh konekcija je verovatno zato sta sedim za laptopom a preko ssh-a sam zakacen na desktop-ovu konzolu...

Evo sta jos imam u hosts.allow:

Citat
#
# /etc/hosts.allow
#

# cvs setting
cvs:ALL

# ssh setting
sshd: 192.168.1.0/255.255.255.0

# nfs setting



i hosts.deny

Citat

#
# /etc/hosts.deny
#

ALL: ALL: DENY

# End of file

Prijavi uredniku   Sačuvana

paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #5 poslato: 08 Април 2009, 21:03:08 »

A jel mozes da samu web strano orvotis sa desktop-a? Na primer na desktop-a startuj web browes i pokusaj da otvoris 192.168.1.120.

Isto tako iskljuci iptables ukoliko ti rade.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #6 poslato: 08 Април 2009, 21:09:07 »

Inace samo da dodam, na mom serveru koji ima CentOS imam stranu neku u /var/www/html/strana, virtuelna host direktiva je bija DocumentRoot /var/www/html/strana i sve je radilo kako treba. Sada cisto da pokusam sam istu web stranu prebacio u /home/paralizer/strana i virtuelnu host direktivu sam promenio u  DocumentRoot /home/paralizer/strana i dobio sam istu gresku kao i ti 403 forbiden.

Ne znam tacno al znam da jos nesto oko permisije treba da podesis ako zelis da ti web strana bude u /home/tvoj_user direktorijumu.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
na12
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 396



« Odgovor #7 poslato: 08 Април 2009, 21:10:07 »

Probaj da svim direktorijumima koji su na putu do /home/zchira/http/ dodelis execute permission,znaci chmod +x /home /home/zchira /home/zchira/http
Zato sto kretanje kroz direktorijume naredbom cd zahteva execute permission
« Poslednja izmena: 08 Април 2009, 21:15:15 od na12 » Prijavi uredniku   Sačuvana

paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #8 poslato: 08 Април 2009, 21:19:04 »

Ili pokusaj da apache startujes kao user "zchira" tada ce 100% da radi, al ne garantujem za posledice.

Ukoliko to zelis da ucinis edituj apache config fajl i promeni:

User apache
Group apache

u

User zchira
Group zchira
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #9 poslato: 08 Април 2009, 21:21:27 »

I finalno, kako kaze "na12" pokusao sam sada kod mene i radi, izvrsi ovo komandu:

chmod +x /home/zchira

i posle

chmod +x /home/zchira/html

i sve ce da proradi.

Reko sam ti da je permission problem....
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
zchira
Hero Member
*****
Van mreže Van mreže

Poruke: 570


« Odgovor #10 poslato: 08 Април 2009, 21:41:29 »

Sa desktopa mogu da pristupim stranici sa http://192.168.1.120/
mogu da pristupim i drugom virtualHostu (koji sa nalazi u /home/zchira/httpd/) sa
http://cake.localhost/

Ok, sa laptopa mi je proradio pristup osnovnom hostu (http://192.168.1.120   - on je u /home/httpd/html).
Propblem je bio sto mi je u virtualHost bila putanja podesena na
/home/httpd/
a ne na
/home/httpd/html

Sad ostaje jos problem sto sa laptopa ne mogu da pristupim tom virtual hostu koji se nalazi na /home/zchira/httpd/cake

Sa desktopa se toj stranici pristupa sa:
http://cake.localhost/

Kako bi trebao da mu pristupam preko laptopa?
http://cake.192.168.1.120   ne moze (mislim da je to nevalidan format da se mesa ip adresa i ovo 'cake')...

Prijavi uredniku   Sačuvana

paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #11 poslato: 08 Април 2009, 21:59:30 »

Ako ti je "DocumentRoot" direktiva u apache conf fajlu podesen da ti bude "/home/zchira/" onda mozes da mu pristupis kao http://192.168.1.120/httpd

znaci "192.168.1.120" menja ono sto ti je u "DocumentRoot" postaveno.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 664


« Odgovor #12 poslato: 08 Април 2009, 22:01:39 »

A ukoliko zelis da mu pristupis kao "http://cake.neki_domain.com/ onda koliko ja znam to je stvar DNS-a.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
na12
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 396



« Odgovor #13 poslato: 08 Април 2009, 22:02:55 »

imas li ti uopste index.html u tom cake-u?
Prijavi uredniku   Sačuvana

Vladimir Bukinac
Newbie
*
Van mreže Van mreže

Poruke: 9


« Odgovor #14 poslato: 08 Април 2009, 22:19:42 »

Koliko znam postoji dva nacina za konfigurisnje virtualnih hostova, name based i IP based. Ukoliko radis IP based moras imati odvojene IP adrese za svaki virtualni host. Za name based mozes imati veci broj virtualnih hostova na jednoj IP adresi. Konfiguracija treba da ti bude otprilike ovakva

    NameVirtualHost *

    <VirtualHost *>
    ServerName xxx123.yy
    DocumentRoot /www/xxx123
    </VirtualHost>

    <VirtualHost *>
    ServerName zzz456.qq
    DocumentRoot /www/zzz456
    </VirtualHost>

Kod IP based umesto * se stavlja IP adresa. Pored ovoga, posto si naveo dyndns znaci radis sa dinamickom IP adresom i to prakticno znaci da nemas veci broj statickih IP adresa. Znaci na ruteru namestis Port forwarding sa porta 80 na IP adresu 192.168.1.120, na taj nacin sve sto spolja dodje na port 80 bice preusmereno na tu IP adresu a po nazivu bi trebao biti prepoznat  virtualni host.
Prijavi uredniku   Sačuvana
Stranice: [1] 2   Idi gore
  Štampaj  
 
Prebaci se na: