« 1 2 »
Autor Zpráva
Miloš
Profil
Marně hledám na internetu, nemůžu se dopídit.
Potřeboval bych na locale (Apache… jako VertrigoServ , Windows XP) zprovoznit subdomény, a to tak, aby se "http://localhost/www/" dalo zapsat jako "http://www/localhost/".

Našel jsem řešení v zápisu do httpd.conf, ale tohle:
Name Virtual Host 127.0.0.1
<VirtualHost 127.0.0.1>
	DocumentRoot C:/WWW/www/
	ServerName www.localhost
</VirtualHost>
mi nefunguje

a tohle:
Name Virtual Host *:80
<VirtualHost *:80>
	DocumentRoot C:/WWW/www/
	ServerName www.localhost
</VirtualHost>
dokonce zneprovozní localhost.

Mohl by, prosím, někdo poradit?
Aesir
Profil
Miloš:

Na Widlích je ještě potřeba upravit soubor hosts v \WINDOWS\system32\drivers\etc dle dokumentace v něm, takže ve vašem případě na

127.0.0.1   localhost
127.0.0.1   www.localhost[/pre]
    
habendorf
Profil
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=17&topic=85774
Miloš
Profil
Nefunguje, nerozumím.
Když to hostu napíšu toto:
127.0.0.1   www.localhost
, tak mi adresa "www.localhost" pouze ukáže totéž co "http://localhost/".
Zkoušel jsem i podle odkazu – nefungovalo nic.
Když jsem "C:/WWW/www/" nastavil jako "http://www.cz/", nefungovalo to a dostal jsem se na stránky http://www.skynet.cz/.

Takže ještě jednou a prosím jako pro blbého (připadám si tak):
Když chci, aby se adresa "http://localhost/www/" chovala jako subdoména "http://www/localhost/",
1) co musím napsat do "C:\windows\system32\drivers\etc\hosts"?
2) co musím napsat do "httpd.conf"? (root je ve skutečnosti "C:\Program Files\VertrigoServ\www\" a "C:\WWW\" je k němu junction)
3) musím ještě něco někam napsat?

Dík za trpělivost.
Jan Tvrdík
Profil
Miloš
Moc jsem to nestudoval, ale zkus to takto (NameVirtualHost bez mezer):

NameVirtualHost *:80
<VirtualHost *:80>
    DocumentRoot C:/WWW/www/
    ServerName www.localhost
</VirtualHost>
Miloš
Profil
Jan Tvrdík
Když udělám jen toto, nedostanu se pak už ani na localhost.
"http://localhost/" vyhodí následující hlášku:
Forbidden
You don't have permission to access / on this server.
Apache/2.0.63 (Win32) PHP/5.2.6 Server at localhost Port 80


Firewall mi to neblokuje, protože softwarový nemám v tuto chvíli žádný (jen hw v routeru).
Timy
Profil
Miloš
Já s tím taky bojoval, nakonec jsem to udělal takto:

<VirtualHost 127.0.0.2:80>
    DocumentRoot "C:/web/mujweb"
    ServerName www.mujweb.cz
    ServerAlias mujweb.cz
</VirtualHost>


…a v hosts přesměruju mujweb.cz na 127.0.0.2. Server jen musí mít v Listen tuto IP.
Cifro
Profil
ale za toto všetko musíš dať aj:

<VirtualHost *:80>
    DocumentRoot "C:/WWW
    ServerName localhost
</VirtualHost>


aby ti fungoval aj http://localhost

a `*:80` zmeň na to čo ti ide
Miloš
Profil
Timy
Tak jsem do httpd.conf napsal:
<VirtualHost 127.0.0.1:80>
    DocumentRoot "C:/web/mujweb"
    ServerName www.mujweb.cz
    ServerAlias mujweb.cz
</VirtualHost>

a v hosts mám toto:
127.0.0.1       localhost
127.0.0.1       www.mujweb.cz[/pre]


Po restartu serveru opět totéž Forbidden.
Opravdu už nic nechápu.
Měsíček
Profil
Nastav ještě Listen.
Cifro
Profil
a hlaška:

Forbidden
You don't have permission to access / on this server.

znamena že nemaš v C:/WWW žiadny index.html alebo index.php súbor

a nemaš nastavené v httpd.conf (alebo v .htaccess) Options +Indexes či ako to presne je
Měsíček
Profil
<Directory *>
 	Options Indexes 
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Timy
Profil
Miloš
Tu .2 na konci IP tam nemám pro nic za nic, s .1 mi to taky házelo nesmysly.
Miloš
Profil
Měsíček
Co je Listen? Kde ho najdu?

Cifro
index.php tam mám
Timy
Profil
Miloš
Co je Listen? Kde ho najdu?
httpd.conf

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
#Listen 12.34.56.78:80
Listen 80

Jsou to IP adresy, kterým server „rozumí“ a na které reaguje. Pokud tam budeš mít jen 127.0.0.1:80, tak ti ten můj postup s IP 127.0.0.2 nebude fungovat.
Měsíček
Profil
Reaguji na Miloše:

„Co je Listen? Kde ho najdu? “

Jestli tě to tak zajímá.

Trefil jsem vedle. Listen je důležitý, ale ty ho máš na 100% již nastavený a to správně, důležitější bude povolit přístup k novým adresám a složkám a od toho slouží <directory /> a obsah, který jsem poslal výše.
Miloš
Profil
Když jsem listen – bylo tam Listen 80 přepsal na:
Listen 127.0.0.2:80
Listen 80
nenaběhl mi Apač.

Zkusil jsem tedy toto:
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
jsem přepsal na
<Directory *>
     Options Indexes 
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


na konci přidal
NameVirtualHost *:80
<VirtualHost 127.0.0.2:80>
    DocumentRoot "C:/WWW/mujweb"
    ServerName www.mujweb.cz
    ServerAlias mujweb.cz
</VirtualHost>


a v hosts mám
127.0.0.1       localhost
127.0.0.2       www.mujweb.cz



Ještě nějaký nápad?
Miloš
Profil
Doplňuji – výše uvedené mě sice pustí na "http://localhost/", ale adresa "www.mujweb.cz" je Forbidden
Timy
Profil
Miloš
A v C:/WWW/mujweb je nějaký index.html?
Miloš
Profil
Timy
index.php
nightfish
Profil
Miloš
index.php
a je nastaven index.php v DirectoryIndex?

btw ještě zkus přidat

<Directory "C:/web">
  Allow from all
  Options FollowSymLinks
</Directory>
Miloš
Profil
nightfish
Sláva nazdar filetu, konečně to funguje.

Takže jen pro úplnost
1) root-document je ve skutečnosti "C:\Program Files\VertrigoServ\www\"
2) Tento adresář mám propojen s "C:\WWW\", což je JunctionPoint (něco jako symlink)
3) V souboru "C:\WINDOWS\system32\drivers\etc\hosts" jsem k zápisu
127.0.0.1 localhost
přidal řádek
127.0.0.2 www.mujweb.cz

4) do httpd.conf jsem připsal následující:
<Directory "C:/WWW/">
  Allow from all
  Options FollowSymLinks
</Directory>

<Directory *>
     Options Indexes 
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

NameVirtualHost *:80
<VirtualHost 127.0.0.2:80>
    DocumentRoot "C:/WWW/mujweb"
    ServerName www.mujweb.cz
    ServerAlias mujweb.cz
</VirtualHost>

a vše běhá k mé spokojenosti.

Dědkuji pěně všem zúčastněným za pomoc. Moc.
Miloš
Profil
Po létech jsem zkusil zprovoznit výše uvedené (po opravě Windows ze zálohy) a najednou to neběží.

V c:\WINDOWS\system32\drivers\etc\hosts mám tohle:
127.0.0.1 localhost
127.0.0.2 br.cz

a na konci c:\Program Files\PHP Home Edition 2\Apache2\conf\httpd.conf mám tohle:
NameVirtualHost *:80
<VirtualHost 127.0.0.2:80>
    DocumentRoot "c:/WWW/branik"
    ServerName br
</VirtualHost>

Root localhostu C:\WWW\ s IP adresou 127.0.0.1 normálně naběhne – localhost (phpinfo).
Virtuální server mám v C:\WWW\branik\

Po adrese http://br.cz i po zadání adresy 127.0.0.2 naběhne následující error:
Chyba serveru!
Nastala vnitřní chyba a server nebyl schopen dokončit Váš požadavek. Buď je server přetížen, nebo došlo k chybě v CGI skriptu. 
Pokud si myslíte, že toto je chyba serveru, kontaktujte, prosím, webmastera. 
Error 500
br
09/26/13 00:01:00
Apache/2.0.50 (Win32) PHP/5.0.0

Přitom ping jak na http://br.cz, tak i na 127.0.0.2 proběhne dobře.

Co je špatně?
Rfilip
Profil
Co je v error.log?
Miloš
Profil
Jestli myslíš c:\Program Files\PHP Home Edition 2\Apache2\logs\error.log, tak tohle:
[Thu Sep 26 00:01:00 2013] [alert] [client 127.0.0.2] C:/WWW/branik/.htaccess: Redirect to non-URL
Rfilip
Profil
Co je v .htacessu uvedeneho v hlasce?
Miloš
Profil
Jestli myslíš c:\WWW\branik\.htaccess, tak tohle:
AddDefaultCharset utf-8
php_value default_charset "utf-8"
ErrorDocument 404 /404.php
deny from 50.57.49.111
deny from 58.254.143.204
deny from 61.135.204.69
deny from 63.246.154.86
deny from 69.164.205.111
deny from 69.164.218.194
deny from 77.246.181.218
deny from 94.23.235.92
deny from 140.113.86.230
deny from 161.139.147.191
deny from 173.203.96.51
deny from 184.105.65.228
deny from 193.242.108.63
deny from 195.113.80.161
deny from 204.232.206.111
deny from 210.245.87.197
deny from 211.106.236.86
Redirect permanent /aboutus.php /g_index.php
Redirect permanent /activities.php /g_index.php
Redirect permanent /angebot.php /d_index.php
Redirect permanent /angebot /d_index.php
Redirect permanent /dkontakt.php /d_index.php
Redirect permanent /akce.php http://branik.evangnet.cz/
Redirect permanent /braniborci.php http://branik.evangnet.cz/braniborci/
Redirect permanent /konfirmace.php http://branik.evangnet.cz/konfirmace/
tedy totéž co na „ostrém webu“.


Ještě bych doplnil – teď jsem si všiml, že když ten 127.0.0.2 pinguju, odpověď přijde ale od 127.0.0.1, jestli to hraje nějakou roli.
aDAm
Profil
a proč používáš ip 127.0.0.2?
Kajman
Profil
Miloš:
Navíc ve VirtualHostu použijte přesně chtěnou adresu
ServerName br.cz
Miloš
Profil
aDAm: „a proč používáš ip 127.0.0.2?
Jednak proto, že to tak fungovalo, jednak proto, že s 10.0.0.1 mi to dřív nešlo, viz též [#4] a [#13].

Kajman:
Navíc ve VirtualHostu použijte přesně chtěnou adresu
Dík za radu, vyzkouším (doma; teď jsem v práci).
« 1 2 »

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: