Thứ ba, 11/09/2012 | 00:00 GMT+7

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:

domain1.com

Miền 2:

domain2.com

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.

Bởi Etel Sverdlov

Tags:

Các tin liên quan

Cách tạo trang 404 tùy chỉnh trong Apache
2012-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