Cách thiết lập server ảo Apache trên Arch Linux
Giới thiệu về Server ảo
Server ảo được sử dụng để chạy nhiều hơn một domain trên một địa chỉ IP. Điều này đặc biệt hữu ích cho những người cần chạy một số trang web trên một server . Các trang web hiển thị thông tin khác nhau cho khách truy cập, tùy thuộc vào việc user truy cập trang web. Không giới hạn số lượng server ảo có thể được thêm vào server .
Cài đặt
Các bước trong hướng dẫn này yêu cầu user phải có quyền root. Bạn có thể xem cách cài đặt điều đó tại đây trong bước 3 và 4.
Ngoài ra, bạn cần phải cài đặt sẵn apache và chạy trên server của bạn . Nếu không đúng như vậy, bạn có thể download bằng lệnh sau:
sudo pacman -S apache
Bước một— Tạo một folder mới
Bước đầu tiên trong việc tạo một server ảo là tạo một folder nơi ta sẽ lưu giữ thông tin của trang web mới.
Vị trí này sẽ là Gốc tài liệu của bạn trong file cấu hình server ảo Apache sau này.
sudo mkdir /srv/http/domain1.com
sudo mkdir /srv/http/domain2.com
Bạn cần chỉ định một domain thực tế được phê duyệt DNS hoặc một địa chỉ IP để kiểm tra xem server ảo có đang hoạt động hay không. Trong hướng dẫn này, ta sẽ sử dụng domain1.com và domain2.com làm trình giữ chỗ cho các domain chính xác.
Tuy nhiên, nếu bạn muốn sử dụng domain chưa được phê duyệt để kiểm tra quá trình, bạn sẽ tìm thấy thông tin về cách làm cho nó hoạt động trên máy tính local của bạn ở Bước thứ bảy.
Bước hai— Tạo trang
Trong folder của server lưu trữ mới của ta , ta nên tạo một trang mẫu sẽ hiển thị khi ta truy cập trang web.
sudo nano /srv/http/domain1.com/index.html
Ta có thể thêm một số văn bản vào file để ta sẽ có một cái gì đó để xem xét.
<html> <head> <title>domain1.com</title> </head> <body> <h1>Success: You Have Set Up a Virtual Host</h1> </body> </html>
Lưu và thoát
Lặp lại các bước tương tự để tạo trang cho domain thứ 2, thay thế bằng domain 2 nếu thích hợp.
sudo nano /srv/http/domain2.com/index.html
Bước ba — Cấu hình server ảo
Trước khi đi sâu vào cấu hình server ảo, ta phải đảm bảo server ảo đã được bật trên server của ta . Mở cấu hình apache:
sudo nano /etc/httpd/conf/httpd.conf
Đảm bảo rằng dòng này không có chú thích (nó nằm ở cuối file ):
# Virtual hosts Include conf/extra/httpd-vhosts.conf
Bạn có thể truy cập file server ảo của bạn trong folder apache:
sudo nano /etc/httpd/conf/extra/httpd-vhosts.conf
Cấu hình của bạn sẽ trông giống như sau ( cài đặt linux vòm mặc định):
<VirtualHost *:80> ServerAdmin webmaster@domain1.com DocumentRoot "/srv/http/domain1.com" ServerName domain1.com ServerAlias www.domain1.com ErrorLog "/var/log/httpd/domain1.com-error_log" CustomLog "/var/log/httpd/domain1.com-access_log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@domain2.com DocumentRoot "/srv/http/domain2.com" ServerName domain2.com ErrorLog "/var/log/httpd/domain2.com-error_log" CustomLog "/var/log/httpd/domain2.com-access_log" common </VirtualHost>
Ta sẽ cài đặt các server ảo trong file này.
Bằng cách tùy chỉnh thông tin trong các phần này của file server ảo, bạn có thể hiển thị hai trang web riêng biệt bắt nguồn từ một địa chỉ IP.
Các phần quan trọng nhất cần giải quyết là Document Root, ServerName.
- Document Root đề cập đến folder chứa các file server . Trong trường hợp của hướng dẫn này, nó chỉ định đường dẫn đến file mà ta đã tạo ở bước một. Server ảo sẽ không hoạt động nếu không có tài liệu root .
- Tên server là domain của trang web. Tại đây, bạn có thể chỉ định trang web nào sẽ được cung cấp bởi root tài liệu của bạn. Nếu bạn muốn bao gồm www trước tên server của bạn , bạn có thể đưa nó vào dòng “ServerAlias” trong ServerName.
Sau khi bạn đã tùy chỉnh server ảo của bạn , hãy lưu và thoát ra khỏi file . Sau đó, bạn có thể kiểm tra cấu hình server ảo của bạn :
apachectl configtest
Bước ba — Khởi động lại Apache
Ta đã thực hiện rất nhiều thay đổi đối với cấu hình và các server ảo đã được cài đặt . Tuy nhiên, không có thay đổi nào mà ta đã thực hiện sẽ có hiệu lực cho đến khi Apache được khởi động lại.
Trước khi khởi động lại apache, ta cần đặt domain vào file server . Nếu bạn đang sử dụng các domain đủ điều kiện, hãy đặt domain sau địa chỉ IP.
sudo nano /etc/hosts
127.0.0.1 domain1.com 127.0.0.1 domain2.com
Nếu bạn không sử dụng domain hoàn toàn đủ điều kiện, hãy đặt tên được tìm thấy trong file / etc / hostname ở cuối dòng chính xác. Apache sẽ không khởi động lại nếu không có phần bổ sung này:
127.0.0.1 localhost.localdomain localhost server1
Sau khi lưu file đó, hãy khởi động lại apache:
sudo rc.d restart httpd
Bước 4 Tùy chọn — Cài đặt Server Cục bộ
Nếu bạn đang sử dụng domain đã đăng ký cho server ảo hoặc địa chỉ IP của server , bạn có thể bỏ qua bước này — bạn không cần cài đặt server local . Server ảo của bạn sẽ hoạt động. Tuy nhiên, nếu muốn dùng thử các server ảo mới của bạn mà không cần phải kết nối với domain thực, bạn có thể cài đặt server local trên máy tính của bạn .
Đối với bước này, hãy đảm bảo bạn đang sử dụng chính máy tính, không phải server của bạn.
Để tiến hành bước này, bạn cần biết password quản trị của máy tính, nếu không, bạn sẽ phải sử dụng domain thực để kiểm tra các server ảo.
Nếu bạn đang sử dụng Mac hoặc Linux, hãy truy cập user root (su) trên máy tính và mở file server của bạn:
sudo nano /etc/hosts
Nếu bạn đang sử dụng Máy tính Windows, bạn có thể tìm thấy hướng dẫn để thay đổi file server lưu trữ trên Trang web của Microsoft .
Bạn có thể thêm chi tiết server local vào file này, như được thấy trong ví dụ bên dưới. Miễn là dòng đó ở đó, hướng trình duyệt của bạn đến, chẳng hạn như example.com sẽ cung cấp cho bạn tất cả các chi tiết server ảo mà bạn đã cài đặt trên server của bạn .
# Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost #Virtual Hosts 12.34.56.789 domain1.com 12.33.44.555 domain2.com
Tuy nhiên, bạn nên xóa các địa chỉ đã tạo này ra khỏi folder server local khi bạn hoàn tất để tránh bất kỳ sự nhầm lẫn nào trong tương lai.
Bước năm — KẾT QUẢ: Xem Server ảo của bạn đang hoạt động
Sau khi cài đặt xong server ảo, bạn có thể xem giao diện trực tuyến của nó. Nhập tên server của bạn vào trình duyệt (ví dụ: domain1.com)
Nó trông hơi giống với ảnh chụp màn hình tiện dụng của tôi:
Miền 1:
Miền 2:
Tạo thêm server ảo
Để thêm nhiều server ảo hơn, hãy lặp lại quy trình trên, cẩn thận cài đặt root tài liệu mới với domain thích hợp mỗi lần.
Các tin liên quan
Cách tạo trang 404 tùy chỉnh trong Apache2012-07-10
Cách tạo chứng chỉ SSL trên Apache cho CentOS 6
2012-06-06
Cách thiết lập server ảo Apache trên CentOS 6
2012-06-03
Cách cài đặt Rails, Apache và MySQL trên Ubuntu với Passenger
2012-06-01