NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
19/05/2023
Lượt xem

Hướng dẫn cách di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04

19/05/2023
13 phút đọc
Lượt xem

Đánh giá

5/5 - (61 bình chọn)

Apache là một web server được sử dụng rất phổ biến trên hệ điều hành Ubuntu để triển khai và quản lý các website. Mặc định, Apache sử dụng một thư mục gốc (Web Root) để lưu trữ các file dữ liệu của website. Tuy nhiên, trong nhiều trường hợp, việc di chuyển Web Root đến một vị trí mới sẽ giúp bạn quản lý file dễ dàng hơn, tối ưu cấu trúc hệ thống và hỗ trợ mở rộng quy mô khi cần thiết. Trong bài viết này, mình sẽ hướng dẫn bạn cách di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04 chi tiết.

Những điểm chính 

  • Tìm hiểu về Document Root và lý do cần di chuyển như tăng khả năng quản lý dữ liệu hiệu quả, tối ưu hệ thống máy chủ, mở rộng quy mô trang web dễ dàng.
  • Nắm rõ những yêu cầu cần chuẩn bị về các công cụ và điều kiện cần thiết để đảm bảo quá trình di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04 di chuyển suôn sẻ.
  • Cung cấp hướng dẫn cụ thể từng bước để thực hiện quá trình di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04.
  • Giới thiệu dịch vụ VPS chất lượng cao của Vietnix để hỗ trợ vận hành dự án ổn định.

Giới thiệu về di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04

Trên hệ điều hành Ubuntu, máy chủ web Apache sẽ cung cấp các document được lưu trữ trong thư mục var/www/html theo mặc định. Thư mục này được gọi là document root. Khi quản trị viên hoặc người dùng gửi một request đến máy chủ, Apache sẽ phản hồi lại bằng các file thích hợp được lưu trong thư mục document root đó.

Hướng dẫn cách di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04
Hướng dẫn cách di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04

Thư mục này thường sẽ nằm trên hệ thống file gốc cùng với phần còn lại của hệ điều hành. Nhưng đôi khi sẽ thuận tiện hơn nếu bạn có thể di chuyển tài liệu gốc này đến một vị trí khác, chẳng hạn như trong một hệ thống file riêng biệt khác.

Ví dụ: Nếu bạn cần phục vụ nhiều trang web từ cùng một Apache server, việc đặt document root của mỗi trang web trên chính ổ đĩa dành riêng cho web đó sẽ giúp quy mô của trang web được mở rộng hơn, dễ dàng đáp ứng các nhu cầu cần thiết hơn trong tương lai.

Sau đây, mình sẽ hướng dẫn bạn cách di chuyển một document root của Apache từ vị trí mặc định là var/www/html sang một vị trí mới.

Yêu cầu tiên quyết để thực hiện

Để thực hiện di chuyển Web Root Apache đến vị trí mới trên Ubuntu 20.04, bạn sẽ cần:

  • Máy chủ Ubuntu 20.04 đã thiết lập có một tài khoản người dùng non-root được cấp đặc quyền sudo.
  • Apache được cài đặt trên máy chủ Ubuntu.
  • SSL được đã được cấu hình cho tên miền mà bạn đang sử dụng. Nếu website của bạn chưa có chứng chỉ SSL, bạn có thể liên hệ Vietnix để được tư vấn và đăng ký chứng chỉ SSL uy tín với chi phí phải chăng.
  • Chuẩn bị một vị trí mới cho thư mục tài liệu gốc mà bạn sẽ sử dụng cho việc di chuyển. Mặc dù, trong hướng dẫn này, thư mục /mnt/volume_nyc3_01 được sử dụng làm thư mục cho vị trí mới này. Nhưng bạn có thể sử dụng bất kỳ vị trí thư mục nào trên hệ thống của mình làm nơi để lưu trữ cho tài liệu gốc cho nội dung web của mình.

iconLưu ý

Vị trí mới của document root có thể được cấu hình dựa trên nhu cầu sử dụng. Nếu bạn đang di chuyển document root của mình sang một thiết bị lưu trữ khác, bạn cần chọn một vị trí bên dưới điểm gắn kết của thiết bị (device’s mount point).

Bước 1: Sao chép các file sang vị trí mới

Khi đáp ứng được yêu cầu tiên quyết, bạn đã có một document root tại /var/www/your_domain. Bạn cũng có thể có các document root bổ sung trong VirtualHost tương ứng. Đồng thời, thiết lập vị trí của document root hiện tại của mình trước khi tiến hành copy các file có liên quan sang vị trí mới.

Bạn có thể tìm kiếm vị trí document root bằng cách sử dụng lệnh grep để tìm kiếm trong thư mục /etc/apache2/sites-enabled. Điều này giúp giới hạn sự tập trung tìm kiếm lại vào các trang web hiện đang hoạt động. Flag -R đảm bảo rằng grep sẽ in cả DocumentRoot và tên file đầy đủ ở output:

grep -R "DocumentRoot" /etc/apache2/sites-enabled

Output sau đây sẽ cho biết vị trí của DocumentRoot hiện tại trên máy của bạn:

Output
/etc/apache2/sites-enabled/your_domain-le-ssl.conf:  DocumentRoot /var/www/your_domain
/etc/apache2/sites-enabled/your_domain.conf:         DocumentRoot /var/www/your_domain

Kết quả hiển thị ở đây sẽ tùy vào thiết lập trước đó trên máy của bạn. Tuy nhiên, bạn có thể sử dụng output từ grep để đảm bảo rằng bạn đang di chuyển các file mong muốn và cập nhật đúng các file cấu hình phù hợp tương ứng.

Như vậy, bạn đã xác nhận được vị trí của document root, tiếp theo hãy copy các file đó vào vị trí mới bằng lệnh rsync:

Khi sử dụng lệnh rsync, bạn hãy lưu ý hai điều sau.

  1. Có một dấu gạch chéo sau your_domain. Nếu bạn không đặt dấu gạch chéo ở đây, thì bạn đang sao chép thư mục này sang thư mục gốc của tài liệu mới dưới dạng của một thư mục con. Ví dụ, document root mới của bạn sẽ có cấu trúc sau: /var/www/mnt/volume_nyc3_01/your_domain. Điều này khiến việc cung cấp nội dung của file index.html từ document root mới gặp sự cố.
  2. Bạn không đặt dấu gạch chéo ở cuối thư mục gốc mới /mnt/volume_nyc3_01.
sudo rsync -av /var/www/your_domain/ /mnt/volume_nyc3_01

Flag -a giúp duy trì quyền và thuộc tính của các thư mục khác, flag -v cung cấp output chi tiết để bạn có thể thuận tiện theo dõi toàn bộ tiến trình đồng bộ hóa.

Output tương tự như sau:

Output
sending incremental file list
./
index.html

sent 265 bytes  received 38 bytes  606.00 bytes/sec
total size is 134  speedup is 0.44

Đến đây các file đã được di chuyển qua thư mục mới. Tiếp theo, bạn điều chỉnh cấu hình của Apache để cập nhật những thay đổi này.

Để đảm bảo Apache hoạt động ổn định, việc sử dụng VPS chất lượng cao là vô cùng quan trọng. Vietnix hiện cung cấp đa dạng các gói VPS tốc độ cao với cấu hình linh hoạt, đáp ứng mọi nhu cầu và ngân sách, bao gồm VPS Giá Rẻ, VPS SSD, VPS AMDVPS NVMe. Bạn hoàn toàn có thể nâng cấp hoặc tùy chỉnh cấu hình dễ dàng theo sự phát triển của dự án. Hãy liên hệ ngay để nhận được sự tư vấn chi tiết!

Bước 2: Cập nhật các file cấu hình

Mở /etc/apache2/sites-enabled/your_domain.conf bằng trình chỉnh sửa. Ở ví dụ này sử dụng nano:

sudo nano /etc/apache2/sites-enabled/your_domain.conf

Tìm dòng bắt đầu bằng DocumentRoot và thay thế bằng vị trí của document root mới. Trong ví dụ này, vị trí root mới là /mnt/volume_nyc3_01:

<VirtualHost *:80>
    ServerAdmin sammy@your_domain
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /mnt/volume_nyc3_01
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.your_domain [OR]
RewriteCond %{SERVER_NAME} =your_domain
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

Ở dưới chỉ thị </VirtualHost> trên, bạn hãy thêm các dòng sau vào để đảm bảo rằng máy chủ sẽ đi theo các đường liên kết tượng trưng (symbolic links) trong thư mục:

. . .
</VirtualHost>

<Directory /mnt/volume_nyc3_01>
    Options FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Dưới đây là bản đầy đủ của file, bạn có thể kiểm tra lại để đảm bảo rằng cấu hình của mình giống với bản cấu hình ở đây.

<VirtualHost *:80>
    ServerAdmin sammy@your_domain
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /mnt/volume_nyc3_01
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.your_domain [OR]
RewriteCond %{SERVER_NAME} =your_domain
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<Directory /mnt/volume_nyc3_01>
    Options FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Lưu và thoát khỏi trình chỉnh sửa sau khi hoàn tất. Nếu sử dụng nano, bạn có thể bạn có thể thực hiện bằng cách nhấn CTRL + X, rồi Y, rồi ENTER.

Tiếp theo, bạn có thể chuyển sang cấu hình cho SSL.

Mở file /etc/apache2/sites-enabled/your_domain-le-ssl.conf:

sudo nano /etc/apache2/sites-enabled/your_domain-le-ssl.conf

Giống file cấu hình trước đó, bạn cần sửa đổi DocumentRoot để cập nhật vị trí mới của document root:

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerAdmin sammy@your_domain
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /mnt/volume_nyc3_01
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
. . .
</VirtualHost>
</IfModule>

Lưu và đóng file này sau khi hoàn tất.

Bước 3: Khởi động lại Apache

Đầu tiên, bạn cần đảm bảo không có lỗi cú pháp xảy ra trong file cấu hình sau khi chỉnh sửa với lệnh configtest:

sudo apachectl configtest

Nếu không có lỗi cú pháp xảy ra, output sẽ được hiển thị tương tự như dưới đây:

Output
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Syntax OK

Nếu bạn muốn tắt đi dòng hiển thị ở phía trên cùng trong kết quả output này, hãy thêm chỉ thị ServerName vào file cấu hình chung của Apache tại vị trí /etc/apache2/apache2.conf. Tên máy chủ có thể là tên miền hoặc địa chỉ IP của máy chủ bạn đang sử dụng. Hãy mở file bằng trình chỉnh sửa bất kỳ:

sudo nano /etc/apache2/apache2.conf

Đặt chỉ thị ServerName ở cuối của file thành your_domain hoặc địa chỉ IP của máy chủ sử dụng:

# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
...

ServerName your_domain

Lưu và thoát khỏi trình chỉnh sửa sau khi hoàn tất. Tuy nhiên, đây chỉ là một thông báo và không ảnh hưởng đến chức năng của trang web của bạn. Chỉ cần output chứa Syntax OK là bạn có thể tiếp tục các bước tiếp theo.

Hãy sử dụng lệnh sau để khởi động lại Apache:

sudo systemctl reload apache2

Khi máy chủ đã khởi động lại, hãy truy cập vào các trang web bị ảnh hưởng bởi sự thay đổi đường dẫn thư mục gốc trên của bạn để đảm bảo rằng chúng vẫn đang hoạt động như mong đợi. Sau khi bạn đã đảm bảo mọi thứ đều hoạt động tốt, hãy xóa các file bên trong thư mục document root ban đầu:

sudo rm -Rf /var/www/your_domain

Như vậy, bạn đã di chuyển thành công thư mục document root của Apache đến một vị trí mới.

Vietnix: Nhà cung cấp hosting và VPS uy tín

Với hơn 12 năm kinh nghiệm, Vietnix tự hào là nhà cung cấp hosting và VPS tốc độ cao, uy tín, chất lượng hàng đầu tại Việt Nam. Được hơn 80.000 khách hàng trong và ngoài nước tin tưởng, bao gồm các thương hiệu lớn như iVIVU.com, VietnamWorks, GTV,… Vietnix luôn cam kết mang đến dịch vụ ổn định và hiệu quả.

Theo khảo sát, 97% khách hàng đánh giá cao chất lượng dịch vụ tại Vietnix và sẵn sàng giới thiệu cho người khác. Đặc biệt, 89% khách hàng vẫn duy trì sử dụng dịch vụ của Vietnix đến hôm nay – minh chứng rõ ràng cho chất lượng vượt trội và sự hài lòng của khách hàng.

Với đội ngũ tư vấn dày dặn kinh nghiệm và tận tâm, Vietnix luôn sẵn sàng hỗ trợ và cung cấp giải pháp phù hợp nhất cho mọi nhu cầu của bạn. Hãy liên hệ ngay với Vietnix để được tư vấn chi tiết!

Thông tin liên hệ:

  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Website: https://vietnix.vn/ 

Việc di chuyển Web Root của Apache đến vị trí mới trên Ubuntu 20.04 không chỉ giúp bạn tùy chỉnh cấu trúc hệ thống theo ý muốn mà còn hỗ trợ quản lý dữ liệu hiệu quả hơn. Qua bài viết này, hy vọng bạn đã nắm rõ các bước cần thiết để thực hiện quá trình này một cách an toàn và chính xác. Nếu bạn gặp bất kỳ khó khăn nào, hãy bình luận bên dưới để được hỗ trợ giải quyết vấn đề nhanh chóng.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Icon tab

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

Vector

PHẦN CỨNG MẠNH MẼ

Vector

HỖ TRỢ 24/7

Vector
ĐĂNG KÝ NGAYGroup icon
khuyến mãi cuối tháng 3
Nhanh tay, số lượng có hạn!
17/03/2025 - 31/03/2025
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG