Hướng dẫn cài đặt web server trên centos

The Apache web server là một trong những ứng dụng phổ biến nhất chuyên về nội dung web trên Internet . Nó phục vụ tới hơn một nửa các Website đang hoạt động trên Internet để ta thấy được nó hoạt động rất mạnh và linh hoạt.

Apache chia các chức năng và thành phần của nó thành nhiều đơn vị riêng lẻ để nó có thể dễ dàng tùy chỉnh cũng như định cấu hình một cách độc lập, không liên quan tới nhau. Đơn vị cơ bản mô tả một website hoặc tên miền được gọi là một virtual host. Virtual hosts cho phép máy chủ có thể quản lý nhiều tên miền cũng như giao diện đa năng bằng các hệ thống tương thích để bất kỳ ai cũng có thể quản lý nhiều site trên một Cloud Server tại ViCloud.

Mỗi miền định cấu hình sẽ điều hướng người truy cập tới một danh mục mà chưa thông tin của site đó và một máy chủ có thể quản lý nhiều site khác nhau mà không bị giới hạn phần mềm miễn là máy chủ có thể xử lý được luồng dữ liệu trên các site đó.

Trong phần này chúng tôi sẽ hướng dẫn cài đặt Apache virtual host trên CentOS 7 để bạn biết cách cung cấp nội dung tới nhiều người truy cập tùy vào tên miền mà họ yêu cầu.

Yêu cầu căn bản

Một máy chủ Cloud Server CentOS 7 đã mua tại ViCloud;

Tiến hành đăng nhập với tư cách người dùng giả định sudo.

Cần cài Apache để định cấu hình virtual host cho nó. Nếu chưa cài thì sử dụng

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

5 để cài thông qua kho lưu trữ phần mềm mặc định của CentOS 7:

sudo yum -y install httpd

Tiếp đến là cài Apache như là một chương trình mặc định của CentOS để nó tự động khởi động sau khi reboot:

sudo systemctl enable httpd.service

Sau đó đăng nhập với tư cách người dùng giả định thông qua SSl và tiếp tục các bước tiếp theo.

Note: Trong phần này ta sẽ tạo các virtual host cho

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

6 và

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

7. Tuy nhiên đó chỉ là các ví dụ tham khảo thôi nên bạn có thể tự động thay chúng bằng tên miền bạn muốn trong quá trình cài đặt.

Nếu bạn không có tên miền thực thì chúng tôi sẽ hướng dẫn bạn kiểm tra cấu hình virtual host với giá trị dummy ở phần cuối.

Bước 1 - Tạo cấu trúc danh mục

Đầu tiên cần tạo cấu trúc danh mục để chứa dữ liệu phục vụ người truy cập.

Một document root sẽ được cài trong danh mục

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

8 . Và chúng ta sẽ tạo các virtual host ở đây.

Trong mỗi danh mục đó ta sẽ tạo một danh mục

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

9 chứa các file thực để tạo sự linh hoạt trong quá trình quản lý.

Ta có thể tạo các file đó sử dụng lệnh

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

0 với cờ

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

1 fđể tạo thêm một folder lồng nhau trong đó:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

Lưu ý phần chữ đỏ là tên miền bạn muốn đặt.

Bước 2 - Lấy chứng nhận

Giờ thì bạn có các danh mục file được sở hữu bởi người dùng gốc

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

2 Nếu muốn người dùng bình thường cũng có thể chỉnh sửa danh mục đó thì bạn cần thay đổi quyền sở hữu sử dụng lệnh

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

3:

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

Biến

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

4 sẽ sử dụng tên người dùng hiện tại mà bạn đăng nhập . Chính vì thế, lúc này một người dùng bình thường cũng sở hữu danh mục con

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

9 để lưu nội dung.

Ta nên chỉnh sửa giấy phép một chút để cho phép ta có thể đọc các dữ liệu trên danh mục Web thường và các file trong đó để phục vụ một cách chính xác.

sudo chmod -R 755 /var/www

Web server của bạn giờ đã có giâý phép để phục vụ nội dung và người dùng lúc này có thể tạo nội dung trong các folder phù hợp.

Bước 3 - Tạo trang Demo cho mỗi Virtual Host

Vì đây chỉ là bản Demo và kiểm nghiệm nên trang mà ta tạo sẽ rất đơn giản. Chúng ta chỉ việc tạo một trang

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

6 trên mỗi site để nhận diện miền đó.

Bắt đầu với

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

6. Ta mở file

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

6 bằng cách nhập:

nano /var/www/example.com/public_html/index.html

Trong file này ta tạo một đoạn code HTLM đơn giản để trang đó kết nối với site mà ta muốn:

 Success! The example.com virtual host is working!

Lưu và đóng file khi hoàn thành.

Ta có thể copy file này để sử dụng làm template cho

sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example2.com/public_html

6 của file thứ hai::

cp /var/www/example.com/public_html/index.html /var/www/example2.com/public_html/index.html

Giờ thì mở và chỉnh sửa những thông tin phù hợp:

nano /var/www/example2.com/public_html/index.html

sudo chmod -R 755 /var/www

0

Lưu và đóng, giờ thì bạn đã có trang cần thiết để kiểm nghiệm cấu hình virtual host.

Bước 4 - Tạo các file Virtual Host mới

File virtual host là công cụ định cấu hình cho nhiều site khác nhau và điều khiển Apache để phản hồi lại các miền truy cập.

Đầu tiên ta cần cài danh mục lưu trữ virtual host cũng như danh mục thông báo cho Apache rằng virtual host đã sẵn sàng phục vụ truy cập. Danh mục

sudo chmod -R 755 /var/www

1 sẽ chứa các file virtual host, trong khi danh mục

sudo chmod -R 755 /var/www

2 sẽ chứ các link tới virtual host mà chúng ta muốn đưa ra. Ta có thể tạo cả hai danh mục này bằng cách:

sudo systemctl enable httpd.service

0

Note: Bố cục danh mục này được tạo ta bởi Debian và chúng ta thêm vào để tạo tính linh hoạt tiện cho việc quản lý các virtual host.

Tiếp theo là lệnh cho Apache tìm virtual host trong danh mục

sudo chmod -R 755 /var/www

2. Để làm được thì ta cần điều chỉnh cấu hình Apache và thêm đôi ba dòng lệnh để gọi mục đó ra cũng như thêm file vào:

sudo systemctl enable httpd.service

1

Và thêm dòng này vào cuối file:

sudo systemctl enable httpd.service

2

Lưu và đóng file sau khi hoàn thành. Giờ thì ta sẽ tạo file virtual host mới.

Tạo file Virtual Host đầu tiên

Mở file mới với đặc quyền root:

sudo systemctl enable httpd.service

3

Note: Tất cả các file virtual host đều phải kết thúc bằng

sudo chmod -R 755 /var/www

4.

Tạo một cặp tag thiết kế nội dung ( virtual host được mặc định hoạt động trên cổng số 80):

sudo systemctl enable httpd.service

4

Sau đó tạo tên máy chủ www.example.com. và một máy chủ ảo trỏ tới example.com, vậy nên khi truy cập www.example.com và example.com đều cho ra cùng nội dung:

sudo systemctl enable httpd.service

5

Note: Để bản

sudo chmod -R 755 /var/www

5 hoạt động chính xác thì cấu hình DNS của miền đó cần một record hoặc một CNAME để trỏ

sudo chmod -R 755 /var/www

5 tới IP của máy chủ. Ký tự (

sudo chmod -R 755 /var/www

  1. lúc này sẽ hoạt động.

Cuối cùng kết thúc bằng việc trỏ tới danh mục root tài liệu web của chúng ta mà cho phép truy cập công khai, ta cũng sẽ lệnh cho Apache vị trí lưu lỗi và yêu cầu đăng nhập vào site định sẵn:

sudo systemctl enable httpd.service

6

Lưu và đóng sau khi hoàn thành.

Copy Virtual Host đầu tiên và tùy chỉnh cho miền được thêm vào

Giờ thì ta sẽ tạo file virtual host thứ hai bằng cách copy file đầu tiên vào và chỉnh sủa những thông tin cần thiết.

Copy với lệnh

sudo chmod -R 755 /var/www

8:

sudo systemctl enable httpd.service

7

Mở file với đặc quyền root trong công cụ chỉnh sửa:

sudo systemctl enable httpd.service

8

Sau khi chỉnh sửa những thông tin cần thiết thì kết quả sẽ trông như thế này:

sudo systemctl enable httpd.service

9

Sau khi thay đổi xong thì lưu lại và đóng file.

Bước 5 - Hữu hiệu hóa cho các file Virtual Host mới

Giờ thì ta cần hữu hiệu hóa chúng để Apache phục vụ chúng cho người truy cập. Chúng ta có thể tạo một link tượng trưng cho mỗi các virtual host đó trong mục

sudo chmod -R 755 /var/www

2:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

0

Sau khi xong thì khởi tạo lại Apache để lưu thay đổi:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

1

Bước 6 - Cài đặt file host cục bộ( không bắt buộc)

Nếu bạn vẫn đang sử dụng tên miền ví dụ thay vì tên miền thực để kiểm tra thì bạn vẫn có thể kiểm tra chức năng của chúng bằng việc thay đổi tạm thời file hosts trên máy tính cục bộ. Việc này sẽ ngăn chặn khả năng truy cập tới miền yêu cầu mà bạn đã định cấu hình và trỏ chúng tới máy chủ VPS vì hệ thống DNS sẽ hoạt động khi bạn có tên miền đã được đăng ký.

Note: Bạn phải thao tác trên máy tính cục bộ chứ không phải máy chủ VPS và tuy cập tới nhãn quyền quản trị.

Nếu dùng hệ điều hành Mac hay Linux thì chỉnh sửa file

nano /var/www/example.com/public_html/index.html

0với đặc quyền quản trị :

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

2

Bạn cần thêm địa chỉ IP công khai của VPS ứng với tên miền mà bạn sử dụng để truy cập VPS đó.

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

3

Việc này giúp nó xác định

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

6 và

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

7 rồi gửi chúng tới máy chủ ở địa chỉ

nano /var/www/example.com/public_html/index.html

3.

Bước 7 - Kiểm tra

Bạn có thể kiểm tra cài đặt bằng cách truy cập miền mà bạn đã định cấu hình trong trình duyệt:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

4

Bạn sẽ thấy dòng thông báo thế này hiện ra:

Hướng dẫn cài đặt web server trên centos

Tương tự như thế với các miền khác .

Nếu tất cả các miền bạn truy cập đều hoạt động đúng thì xin chúc mừng, bạn đã cài đặt thành công Apache virtual host trên CentOS 7.

Nếu bạn đã sửa file

nano /var/www/example.com/public_html/index.html

4 trên máy tính thì bạn nên xóa những dòng mà bạn vừa thêm vào để tránh việc file host chứa qúa nhiều thông tin không cần thiết.

Kết luận

Lúc này bạn đã có một máy chủ CentOS 7 xử lý nhiều site cùng lúc với nhiều miền khác nhau. Bạn có thể mở rộng thêm bằng cách lặp lại các bước như trên nếu muốn tạo thêm nhiều virtual host mới. Vì không giới hạn phần mềm cho tên miền thế nên bạn không cần phải lo lắng về khả năng xử lý của máy chủ.