Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-01-28 04:40:15

  harlequin - Użytkownik

harlequin
Użytkownik
Skąd: dolnośląskie
Zarejestrowany: 2006-03-06

apache2 vhosty

Ogrom możliwych konfiguracji (te samo opcje w kilku różnych plikach, różne sposoby ustawień do tego jeszcze wszystko zależna od danego systemu) i rozbieżność tutoriali rozłożyły mnie na łopatki.

Zrobiłem to: http://wiki.debian.org/LaMp

Mam:
/home/adam/www/jeden/index.php
/home/adam/www/dwa/index.php

Chcę na tym komputerze móc odwoływać się do stron poprzez ich nazwy czyli: jeden i dwa.

Nie mam kupionych domen. Tutaj http://quadric.goblix.pl/tutoriale/tworzenie-vhostaa-w-apache/   jest napisane, zeby dodać wpisy do /etc/hosts . Czyli mój /etc/hosts wyglądałby:

Kod:

127.0.0.1    localhost
127.0.1.1    debian.localdomain    debian

127.0.0.1  jeden
127.0.0.1  dwa

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

I dalej już nic nie rozumiem. Co tutek, to innna wersja. Jedni każą w pliku httpd.conf zmieniać inni w /etc/apache2/sites-enabled/ , jeszcze inni /etc/apache2/sites-available/, czy w pliku vhosts. Chyba można na różne sposoby, ale ja się w tym gubię. Może ktoś wie gdzie i co najszybciej wpisać, zeby te vhosty działały?

Ostatnio edytowany przez harlequin (2010-01-28 04:40:51)


[/url]

Offline

 

#2  2010-01-28 08:51:34

  Contravene - Użytkownik

Contravene
Użytkownik
Zarejestrowany: 2006-08-07

Re: apache2 vhosty

Jaką masz wersję apache? Rozbieżności między tutorialami pochodzą właśnie z różnic pomiędzy wersjami. W skrócie wszystko co masz zrobić, to właśnie dodać odpowiednie wpisy w /etc/hosts (twoje takie są) oraz dodać vhosty do apache (ich położenie zależy od wersji).

Offline

 

#3  2010-01-28 09:19:53

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: apache2 vhosty

Pokaż konfigurację swoich vhostów. Sposobem na mase tutoriali jest czytanie dokumentacji serwera apache lub dokumentacji używanej dystrybucji z opisem konfiguracji apache. Chociaż te, które wkleiłeś wydają się ok.

Jedni każą w pliku httpd.conf zmieniać inni w /etc/apache2/sites-enabled/ , jeszcze inni /etc/apache2/sites-available/, czy w pliku vhosts

No i wszyscy mają rację, jakbyś się trzymał jednego tutoriala to pewnie by zadziałało. /etc/apache2/sites-enabled/ jest inkludowany w httpd.conf przez co wszystko jedno gdzie to wpiszesz.

Offline

 

#4  2010-01-28 15:46:29

  harlequin - Użytkownik

harlequin
Użytkownik
Skąd: dolnośląskie
Zarejestrowany: 2006-03-06

Re: apache2 vhosty

Chyba koło dwóch tygodni próbuje to zrobić. Zaczynam z jednym tutorialem, nie wychodzi mi, kombinuje radami z drugiego i w końcu juz sam nie iem co gdzie wpisywałem, więc biorę czysty system i instaluję wszystko od nowa. I tak mniej więcej codziennie.  Najwyraźniej poza daleko posuniętą tępotą charakteryzuje się skrajnym niefartem, bo przy tylu próbach chociaż przypadkiem powinienem trafić w odpowiednia konfigurację.

Piszecie o /etc/apache2/sites-enabled/

Tam jest jeden plik 000-default. Skopiowałem go dwa razy, nadałem nazwy "jeden" i "dwa".  W środku zmieniłem ścieżki na prowadzące do plików ze stronami.
I nadal nic.


[/url]

Offline

 

#5  2010-01-28 15:51:35

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: apache2 vhosty

harlequin napisał(-a):

Tam jest jeden plik 000-default. Skopiowałem go dwa razy, nadałem nazwy "jeden" i "dwa".  W środku zmieniłem ścieżki na prowadzące do plików ze stronami.
I nadal nic.

Lepiej wklej te pliki. Nikt nie będzie zgadywał jakie babole mogłeś tam zrobić.

Offline

 

#6  2010-01-28 15:56:15

  harlequin - Użytkownik

harlequin
Użytkownik
Skąd: dolnośląskie
Zarejestrowany: 2006-03-06

Re: apache2 vhosty

Kod:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /home/adam/www/jeden/
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/adam/www/jeden/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

Kod:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /home/adam/www/dwa/
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/adam/www/dwa/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

to są kopie 000-default, tylko zmieniłem ścieżki  DocumentRoot /var/www  i <Directory /var/www/>

Ostatnio edytowany przez harlequin (2010-01-28 15:58:06)


[/url]

Offline

 

#7  2010-01-28 17:37:37

  harlequin - Użytkownik

harlequin
Użytkownik
Skąd: dolnośląskie
Zarejestrowany: 2006-03-06

Re: apache2 vhosty

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

No to inaczej i od nowa:

mam debiana testinga.
mam lampa z apta z tego tutka: http://wiki.debian.org/LaMp

Mam:
/home/adam/www/jeden/index.php
/home/adam/www/dwa/index.php

Chcę na tym komputerze móc odwoływać się do stron poprzez ich nazwy czyli: jeden i dwa.

Nie mam kupionych domen. Tutaj http://quadric.goblix.pl/tutoriale/tworzenie-vhostaa-w-apache/   jest napisane, zeby dodać wpisy do /etc/hosts . Czyli mój /etc/hosts wygląda:

Kod:

127.0.0.1    localhost
127.0.1.1    debian.localdomain    debian

127.0.0.1  jeden
127.0.0.1  dwa

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

w pliku /etc/apache2/apache2.conf dodałem hasz do: Include /etc/apache2/sites-enabled/  i dopisałem Include /etc/apache2/httpd.conf

apache2.conf :

Kod:

#
# Based upon the NCSA server configuration files originally by Rob McCool.
#
# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.2/ for detailed information about
# the directives.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.  
#
# The configuration directives are grouped into three basic sections:
#  1. Directives that control the operation of the Apache server process as a
#     whole (the 'global environment').
#  2. Directives that define the parameters of the 'main' or 'default' server,
#     which responds to requests that aren't handled by a virtual host.
#     These directives also provide default values for the settings
#     of all virtual hosts.
#  3. Settings for virtual hosts, which allow Web requests to be sent to
#     different IP addresses or hostnames and have them handled by the
#     same Apache server process.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with "/" (or "drive:/" for Win32), the
# server will use that explicit path.  If the filenames do *not* begin
# with "/", the value of ServerRoot is prepended -- so "/var/log/apache2/foo.log"
# with ServerRoot set to "" will be interpreted by the
# server as "//var/log/apache2/foo.log".
#

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation (available
# at <URL:http://httpd.apache.org/docs-2.1/mod/mpm_common.html#lockfile>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
#<IfModule !mpm_winnt.c>
#<IfModule !mpm_netware.c>
LockFile /var/lock/apache2/accept.lock
#</IfModule>
#</IfModule>

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 15

##
## Server-Pool Size Regulation (MPM specific)
## 

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          2
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxClients          150
    MaxRequestsPerChild   0
</IfModule>

# event MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_event_module>
    StartServers          2
    MaxClients          150
    MinSpareThreads      25
    MaxSpareThreads      75 
    ThreadLimit          64
    ThreadsPerChild      25
    MaxRequestsPerChild   0
</IfModule>

# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being 
# viewed by Web clients. 
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

#
# DefaultType is the default MIME type the server will use for a document
# if it cannot otherwise determine one, such as from filename extensions.
# If your server contains mostly text or HTML documents, "text/plain" is
# a good value.  If most of your content is binary, such as applications
# or images, you may want to use "application/octet-stream" instead to
# keep browsers from trying to display binary files as though they are
# text.
#
DefaultType text/plain


#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog /var/log/apache2/error.log

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn

# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf

# Include all the user configurations:
Include /etc/apache2/httpd.conf

# Include ports listing
Include /etc/apache2/ports.conf

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# If you are behind a reverse proxy, you might want to change %h into %{X-Forwarded-For}i
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

#
# Define an access log for VirtualHosts that don't define their own logfile
CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined


# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
Include /etc/apache2/conf.d/

# Include the virtual host configurations:
# Include /etc/apache2/sites-enabled/
Include /etc/apache2/httpd.conf

/etc/apache2/httpd.conf :

Kod:

NameVirtualHost *:80


<VirtualHost *:80>
    ServerAdmin adres@email.pl
    DocumentRoot /home/adam/www/jeden/
    ServerName jeden
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin adres@email.pl
    DocumentRoot /home/adam/www/dwa/
    ServerName dwa
</VirtualHost>

i teraz wpis w przeglądarkę localhost prowadzi do /home/adam/www/jeden/ . Wywołanie "jeden" i "dwa" nie są obsługiwane. Serwer zwraca błąd:

Kod:

[Thu Jan 28 17:20:19 2010] [warn] NameVirtualHost *:80 has no VirtualHosts
 ... waiting [Thu Jan 28 17:20:21 2010] [warn] NameVirtualHost *:80 has no VirtualHosts
[Thu Jan 28 17:20:21 2010] [warn] NameVirtualHost *:80 has no VirtualHosts

dlaczego ?

Ostatnio edytowany przez harlequin (2010-01-28 17:41:36)


[/url]

Offline

 

#8  2010-01-28 20:31:17

  harlequin - Użytkownik

harlequin
Użytkownik
Skąd: dolnośląskie
Zarejestrowany: 2006-03-06

Re: apache2 vhosty

No i coś ugrałem w końcu  na tym chybił-trafił. Nie mam pojęcia dlaczego tak, a nie inaczej, ale trudno. Chyba nie było takich info żadnym tutku.

1. Wywaliłem 000-default z  /etc/apache2/sites-available/ i /etc/apache2/sites-enabled/
2. W /etc/apache2/sites-available/ zrobiłem plik default z zawartością:

Kod:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName localhost    
DocumentRoot /var/www/
</VirtualHost>

<VirtualHost *:80>
ServerName jeden    
DocumentRoot /home/adam/www/jeden/
</VirtualHost>

<VirtualHost *:80>
ServerName dwa
DocumentRoot /home/adam/www/dwa/
</VirtualHost>

4. Zrobiłem linka:  ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/default

5. Zahaszowałem w /etc/apache2/ports.conf  linijkę: NameVirtualHost *:80

6. Działa: strona It works! z Apacha (pod wywołaniem localhost), działa phpmyadmin, działają strony wywoływane przez "jeden" i "dwa" - czyli działa wszystko.

Tylko martwię się czy taka losowa konfiguracja nie uprzykrzy mi potem życia.

Ostatnio edytowany przez harlequin (2010-01-28 20:33:12)


[/url]

Offline

 

#9  2010-01-29 10:54:46

  gson - Użytkownik

gson
Użytkownik
Skąd: Kraków
Zarejestrowany: 2007-07-17

Re: apache2 vhosty

Przejrzalem pobierznie watek i nie rozumiem gdzie masz problem, na jednym serwerze stawiasz 2 strony, wiec apache musi wiedziec ktora chcesz wywolac.
Tu masz 2 opcje:
- rpzpoznawanie po ip (czyli wpisujesz 1.1.1.1 i masz strone x 2.2.2.2 i masz strone y)
- rozpoznwanie po nazwie - masz to zrobione

Wiec w czym masz problem?

Offline

 

#10  2011-01-06 17:41:32

  GreGo - Nowy użytkownik

GreGo
Nowy użytkownik
Zarejestrowany: 2011-01-06

Re: apache2 vhosty

Właśnie zainstalowałem debiana i mam dokładnie taki sam problem. Nie mogę ustawić wirtualnych hostów. Wg tutoriali to nie działa, wg ostatniego wpisu użytkownika harlequin jeszcze nie próbowałem. A co do wpisu gson, to widocznie user nie zrozumiał, że tutoriale nic nie dają, bo w debianie coś musi być namieszane, skoro trzeba robić jakieś dziwne operacje.
Pozdrawiam,
Grzegorz

Offline

 

#11  2011-01-06 22:17:20

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: apache2 vhosty

Albo tutorial jest rzeczywiście zły albo czytanie ze zrozumieniem siada. Zawsze można zajrzeć do źródła, czyli dokumentacja, tutoriale ze strony apache. A niektórzy znów wolą metodą prób i błędów, a potem nie wiedzą dlaczego zadziałało. W debianie nic nie jest namieszane, trzeba się trochę orientować w ogólnej konfiguracji apache i debian nie ma tu wiele do rzeczy.

Offline

 

#12  2011-01-06 22:35:25

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: apache2 vhosty

To nie ma prawa działać:

Kod:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName localhost    
DocumentRoot /var/www/
</VirtualHost>

<VirtualHost *:80>
ServerName jeden    
DocumentRoot /home/adam/www/jeden/
</VirtualHost>

<VirtualHost *:80>
ServerName dwa
DocumentRoot /home/adam/www/dwa/
</VirtualHost>

Dwa virtualhosty nie mogą mieć jednej i tej samej nazwy domenowej.

Ten przepis:
http://forum.ubuntu.pl/showthread.php?t=53124
działa ze wszystkimi wersjami Apacha, jakie widziałem.
poza tym Apache sprawdza, czy nazwa domeny (ServerName) jest widoczna w dns (lub /etc/hosts).

Spróbuj dopisać hosty jeden i dwa do /etc/hosts - w ten sposób można oszukać apacha.

To by było na tyle
;-)

Ostatnio edytowany przez Jacekalex (2011-01-06 22:36:14)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#13  2011-01-06 22:57:35

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: apache2 vhosty

Jacekalex napisał(-a):

Spróbuj dopisać hosty jeden i dwa do /etc/hosts - w ten sposób można oszukać apacha.

To by było na tyle
;-)

Jakbyś poczytał dokładnie wyżej to byś zobaczył, że kolega tak właśnie zrobił ;]

Offline

 

#14  2011-01-07 00:02:49

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: apache2 vhosty

Więc walnięta jest konfiguracja Apacha?  sznurek sprawdzony wielokrotnie - działa.

Poza tym przyda sie test konfiguracji apacha:
wynik:

Kod:

apache2 -t

Pozdrawiam
;-)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)