80 numaralı bağlantı noktasında VirtualHost çakışması


10

Aşağıdaki gibi apache2 conf dosyama 2 sanal ana bilgisayar ekledim:

<VirtualHost *:80>
    DocumentRoot /var/www/html/site1
    ServerName www.site1.com
    ServerAlias site1.com
</VirtualHost>


<VirtualHost *:80>
    DocumentRoot /var/www/html/site2
    ServerName www.site2.com
    ServerAlias site2.com
</VirtualHost>

Sonra ben olsun apache yeniden başlattıktan sonra hata var:

[uyar] bağlantı noktası 80'de varsayılan VirtualHost çakışması, ilki önceliğe sahiptir

Google'da arama yaptılar ve aşağıdaki satırı açacaklarını söylediler, bu yüzden yaptım:

NameVirtualHost *:80

Yeniden başlatın ve şimdi hatayı almıyorum, ancak her iki site de ilk siteye gidiyor.

çalışan Centos5. Bu sorunu nasıl düzeltirim?

Yanıtlar:


13

Kesinlikle NameVirtualHost uncommented istiyorum. Bu, sunucunuza, kendisine ulaşmak için kullanılan Doman Adlarına göre farklı sanal ana bilgisayarları sunucuya bildirmesini söyler. Bu nedenle, kaldırıldığında tüm isteklerin ilk siteye gittiğini görürsünüz.


1
Evet, bunu yaptım ve hala çalışmıyor.
David

Site2.com bile onunla düzgün bir şekilde sunulmuyor mu? Uyarınızın sadece ilk VirtualHost'unuzun eşsiz adlar için varsayılan site olduğunu belirttiği anlaşılıyor. Bu aslında Sanal Hosts nasıl çalışır.
Christopher Karel

1
Bu satırı uncommented sonra, bir uyarı alamadım ve her iki site hala site1 gidin
David

Tarayıcınızın site1'in site2'nin etki alanı altındaki içeriğini önbelleğe alması mümkün mü? Önbelleğinizi temizlemeyi veya uygun bir yenileme yapmayı deneyin. (ctrl + F5)
Christopher Karel

1

Bu sorunu zaten CWP ile düzelttim

/usr/local/apache/conf/sharedip.conf adresine gitmeniz yeterlidir

ip sunucunuzda bu put * işaretleyin

NameVirtualHost *:80
<VirtualHost *:80>
    ServerName yourdomainserver.ltd
    DocumentRoot /usr/local/apache/htdocs
    ServerAdmin root@youremail.com
    <IfModule mod_suphp.c>
        suPHP_UserGroup nobody nobody
    </IfModule>
</VirtualHost>
<Directory "/">
        AllowOverride All
        Allow from all
        Order Deny,Allow
</Directory>

sonra /usr/local/apache/conf.d/vhost.conf adresine gidin ve her sanal ana makinenin böyle göründüğünden emin olun

# vhost_start chango.com.ve
<VirtualHost *:80>
ServerName yourdomain.ltd
ServerAlias www.yourdomain.ltd
ServerAdmin youremail@yourdomain.ltd
DocumentRoot "/home/yourdomain/public_html"
ScriptAlias /cgi-bin/ "/home/yourdomain/public_html/cgi-bin/
# 
# Custom settings are loaded below this line (if any exist)
# Include "/usr/local/apache/conf/userdata/yourdomain/yourdomain.ltd/*.conf    
</VirtualHost>^M
# vhost_end yourdomain.ltd

bu benim için çalışıyor!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.