_default_ Virtualhost trùng lặp trên cổng 80


10

Tôi đã thêm 2 máy chủ ảo vào tập tin apache2 của mình như sau:

<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>

Sau đó tôi đã nhận được lỗi sau khi khởi động lại apache tôi nhận được:

[cảnh báo] Virtualhost mặc định trùng lặp trên cổng 80, lần đầu tiên được ưu tiên

Tìm kiếm trên google và họ nói không ghi chú dòng bên dưới, vì vậy tôi đã làm:

NameVirtualHost *:80

Khởi động lại và bây giờ tôi không gặp lỗi, nhưng cả hai trang đều chuyển đến trang đầu tiên.

chạy Centos5. Làm sao để sửa lỗi này?

Câu trả lời:


13

Bạn chắc chắn muốn NameVirtualhost không bị lỗi. Điều đó báo cho máy chủ của bạn đến máy chủ các máy chủ ảo khác nhau dựa trên Tên Doman được sử dụng để tiếp cận nó. Đó là lý do tại sao bạn thấy tất cả các yêu cầu đến trang web đầu tiên khi bị xóa.


1
Phải, tôi đã làm điều đó và nó vẫn không hoạt động.
David

Nó không phục vụ đúng cách lên trang web2.com ngay cả với nó? Có vẻ như cảnh báo của bạn chỉ nói rằng Virtualhost đầu tiên của bạn là trang mặc định cho các tên chưa từng có. Mà về cơ bản chỉ là cách các máy chủ ảo hoạt động.
Christopher Karel

1
Sau khi bỏ dòng đó, tôi không nhận được cảnh báo và cả hai trang vẫn truy cập trang 1
David

Có thể trình duyệt của bạn vừa lưu trữ nội dung từ site1 dưới tên miền của site2 không? Hãy thử xóa bộ nhớ cache của bạn hoặc làm mới thích hợp. (ctrl + F5)
Christopher Karel

1

Tôi đã sửa lỗi này với CWP

chỉ cần truy cập /usr/local/apache/conf/ Sharedip.conf

kiểm tra cái này đặt * trong máy chủ ip của bạn

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>

sau đó truy cập /usr/local/apache/conf.d/vhost.conf và chắc chắn rằng mỗi virtualhost trông như thế này

# 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

cái này hiệu quả với tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.