DANH MỤC TÀI LIỆU
Hướng dẫn tạo host ảo với Apache trong Ubuntu
Hướng dẫn tạo host ảo với Apache trong Ubuntu
Đối với nhưng người quản trị hệ thống thì Apache quả thực là 1 trong những công
cụ hỗ trợ hiệu quả nhất hiện nay, với tính linh hoạt và độ ổn định cao, dễ dàng thiết
lập, cấu hình, hỗ trợ việc quản lý nhiều domain cho dù hệ thống web server chỉ có
1 địa chỉ IP.Bên cạnh đó, chúng ta cũng có thể sử dụng để lưu trữ nhiều site khác
nhau, hoặc đơn giản chỉ thiết lập 1 hệ thống sandbox dành cho việc phát triển ứng
dụng. Trong bài viết dưới đây, chúng tôi sẽ trình bày một số thao tác cơ bản để tạo
host ảo – virtual host bằng Apache.
Về mặt bản chất, quá trình thiết lập host là 1 “thử thách” không hề đơn giản nhưng
trên thực tế thì lại không phải như vậy. Người sử dụng hoàn toàn có thể thiết lập
được 1 hệ thống virtual host chỉ với vài thao tác đơn giản như thay đổi tùy chỉnh
trong Apache. Cụ thể trong bài thử nghiệm này, chúng tôi sử dụng hệ điều hành
Ubuntu server và phiên bản Apache tương ứng.
Tạo cấu trúc thư mục:
Trước khi bắt tay vào quá trình cấu hình thì các bạn phải hoàn tất bước cấu trúc thư
mục dành cho các site ảo. Tại đây chúng ta sẽ làm việc với Apache được cài đặt
trên hệ thống Ubuntu server, do vậy phần tài liệu root của Apache sẽ xuất hiện
tại /var/www. Về bản chất, cấu trúc thư mục dành cho website mới có thể được tạo
tại bất kỳ đâu, có thể trong thư mục (~/), hoặc /usr/local/apache… Để đơn giản
hóa tối đa bài thử nghiệm này, chúng tôi sẽ thiết lập virtual host trong phần tài liệu
root của Apache (trong Ubuntu sẽ là thư mục /var/www), với bước làm này, chúng
ta sẽ không cần thiết phải thay đổi mức ownership của những thư mục được tạo
sau này hoặc thư mục gốc có chứa virtual host.
Cụ thể, trong bài thử nghiệm này chúng tôi sẽ thiết lập host ảo test_site, và gõ lệnh
sau để tạo thư mục chứa virtual host:
sudo mkdir /var/www/test_site
sudo chmod -R 755 /var/www/test_site
Khi đó, thư mục gốc của virtual host đã được tạo thành công, và đây cũng là thời
điểm thiết lập Apache để bắt đầu quá trình tạo website mới. Sau khi hoàn tất bước
cấu hình Apache này, toàn bộ website sẽ được xây dựng bên
trong /var/www/test_site.
Cấu hình Apache:
Bước đầu tiên trong quá trình thiết lập Apache để đảm bảo rằng Apache “biết”
rằng virtual host đã được kích hoạt. Cụ thể, trong phần cấu hình của Ubuntu, các
bạn hãy tìm đến đoạn sau trong file /var/www/test_site:
Include sites-enabled/
Hãy chắc chắn rằng dòng mã này vẫn đang ở trạng thái hoạt động (không bắt đầu
bằng ký tự #). Cấu trúc lệnh sites-enabled sẽ được trỏ tới /etc/apache/sites-
enabled. Khi tìm kiếm trong thư mục đó, chúng ta sẽ thấy có file 000-default – có
chứa nhiều thông tin về tất cả các thư mục cần thiết cho site ảo sẽ được tạo sau
này. Và để tạo mới virtual host, chúng ta cần tạo 1 file mới bên trong thư mục có
sẵn, đó là /etc/apache/sites-available/test_site. Cụ thể, nội dung của file đó sẽ
trông tương tự như sau:
<VirtualHost test.domain.com>
ServerAdmin webmaster@localhost
#We want to be able to access the web site using www.test.domain.com or
test.domain.com
ServerAlias www.test.domain.com
DocumentRoot /var/www/test_site
#log file for this server
CustomLog /var/log/apache2/www.test.domain.com-access.log combined
</VirtualHost>
Đoạn mã trên được dùng trong trường hợp giả sử rằng domain.com sẽ là domain
được dùng (thay thế giá trị này với tên miền bạn sử dụng). Và bên cạnh đó, chúng
ta cần thực hiện thêm 2 bước đơn giản dưới đây trước khi khởi động lại Apache.
Trước tiên là việc khởi tạo đường dẫn kết nối trong /etc/apache/sites-enabled tới
file vừa được tạo:
- Truy cập thư mục /etc/apache/sites-enabled với lệnh cd /etc/apache/sites-
enabled
- Tạo đường dẫn kết nối bằng lệnh sudo ln -s /etc/apache/sites-available test_site
Bên cạnh đó, chúng ta cũng có thể tạo được đường dẫn kết nối tự động bằng
lệnh sudo a2ensite test_site, và sau đó tạm thời tắt bỏ hoạt động của virtual site,
xóa bỏ kết nối với lệnh sudo a2dissite test_site.
Và bước cuối cùng để đảm bảo rằng server “biết” về sự tồn tại của virtual site chứ
không phải là qua Internet. Cụ thể, chúng ta cần làm như sau:
- Mở file /etc/hosts bằng chương trình soạn thảo text bất kỳ với quyền
Administrator
- Thêm dòng mã 127.0.0.1 localhost.localdomain localhost test.domain.com
www.test.domain.com
- Lưu và đóng file đó lại.
Khởi động lại Apache với lệnh sudo /etc/init.d/apache2 restart và kiểm tra virtual
host bằng cách gõ địa chỉ vào trình duyệt.
Với những hệ thống server non – debian:
Nếu hệ thống server lưu trữ virtual site không phải là distributor dựa trên Debian
thì một số bước thiết lập sẽ khác biệt 1 chút. Cụ thể như sau:
- Tạo thư mục chứa virtual site trong file /etc/httpd/conf/httpd.conf – tương tự
như với hệ thống sử dụng Debian.
-Đảm bảo rằng file cấu hình Apache “nhận biết” được sự tồn tại của virtual host
bằng cách giữ nguyên chức năng hoạt động của dòng mã Include conf.d/*.conf
- Tạo file virtual host mới (thường gọi là vhosts.conf) trong thư
mục /etc/httpd/conf.d/
- Gán thêm virtual site vào file /etc/hosts
- Khởi động lại Apache bằng lệnh /etc/rc.d/init.d/httpd restart
Thư mục lưu trữ của chúng ta (đối với hệ thống non – Debian) sẽ trông tương tự
như dưới đây:
<VirtualHost *:80>
ServerName test.domain.com
DocumentRoot /var/www/html/test_site
</VirtualHost>
Còn file virtual host được đề cập tới tại phần trên sẽ trông như sau:
<VirtualHost 127.0.0.1>
DocumentRoot /var/http/www/test_site
ServerName www.test.domain.com
</VirtualHost>
<VirtualHost 127.0.0.1>
DocumentRoot /var/http/www/test_site
ServerName test.domain.com
</VirtualHost>
Đây cũng là thời điểm virtual host đã được thiết lập và hoạt động ổn định, và việc
tiếp theo là xây dựng website bên trong thư mục /var/www/test_site. Chúng ta có
thể thực hiện việc này với nhiều hệ thống virtual host theo ý muốn, hoặc bằng
những công cụ như Drupal, Xoops hoặc Joomla. Chúc các bạn thành công!
thông tin tài liệu
Đối với nhưng người quản trị hệ thống thì Apache quả thực là 1 trong những công cụ hỗ trợ hiệu quả nhất hiện nay, với tính linh hoạt và độ ổn định cao đặc biệt trong việc tạo host ảo
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×