Cấu hình server / hosting với .htaccess

Nếu bạn làm web server bằng Apache thì chắc bạn cung biết đến ".htaccess". Đây là file cấu hình cho server Apache, bạn có thể đặt cho mỗi thư mục một file ".htaccess" riêng để cấu hình cho mỗi thư mục.

Hôm nay, tôi sẽ hướng dẫn cách Redirect một địa chỉ web sang một địa chỉ web khác trên Unix server (server dùng hệ điều hành Unix như CentOS chẳng hạn).

Cách Redirect (Chuyển hướng) thông thường

Khi bạn đăng ký tên miền (domain name), bạn sẽ được cung cấp trang web quản lý tên miền cùng account đăng nhập. Để chuyển hướng (redirect) tên miền hay tên miền phụ bạn chỉ cần add bản ghi URL Redirect là được.
Tuy nhiên, trong một số trường hợp, trang quản lý tên miền không cho bạn làm như vậy. Tên miền này trỏ tới địa chỉ hosting cố định, ví dụ địa chỉ có IP là 123.45.67.89. Làm sao bạn có thể Redirect tên miền của bạn tới địa chỉ khác?

Redirect tên miền với ".htaccess" trên Unix server

Để kiểm tra xem hosting server của bạn có phải là Unix không thì rất đơn giản: Do Unix phân biệt chữ hoa, chữ thường nên bạn chỉ cần tạo file TestPage.html và tải lên thư mục web (thường là thư mục "/www/" trong đó "/" là thư mục gốc). Sau đó bạn vào http://TÊNMIỀNCỦABẠN/testpage.html, nếu không được thì có nghĩa là hosting server của bạn phân biệt chữ hoa chữ thường và nó là Unix.

Giả sử tên miền của bạn là ABC.com và bạn muốn chuyển hướng sang XYZ.com.
  • Bạn tạo file "htaccess" (không có dấu chấm, vì trên Windows sẽ không tạo được file ".htaccess"). Nội dung như sau:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.ABC\.com
RewriteRule (.*) http:/XYZ.com/$1 [R=301,L]
  • Dùng phần mềm FTP (bạn phải tạo tài khoản FPT) để đưa file lên server. Ví dụ phần mềm FileZilla hay WinSCP.
  • Trên server đổi tên file thành ".htaccess"

Ghi nhớ về .htaccess

  • .htaccess dùng để cấu hình cho server Apache/Unix
  • Có thể đặt .htaccess vào mỗi thư mục để cấu hình cho thư mục đó


Comments