Thiết kế website Wordpress trên localhost sẽ giúp bạn đẩy nhanh tiến độ phát triển và dễ dàng chỉnh sửa file cũng như hình ảnh. Nếu bạn đã xác định trước tên miền cho website thì bạn nên tạo một virtual host trong Apache để sau này khi upload lên hosting bạn không cần phải thay đổi lại tên miền còn nếu chưa xác định trước tên miền tức bạn dùng tên miền localhost việc upload lên server sẽ có phần phức tạp hơn đôi chút. Trong bài viết này tôi sẽ hướng dẫn các bạn cách upload một website Wordpress từ localhost lên webhosting.

Các bước chuẩn bị:

Để đưa một website từ localhost lên hosting bạn cần phải chuẩn bị:

  • Một webhosting, bạn có thể đăng ký một Wordpress hosting tại StableHost, Godaddy, HostGator.
  • Một tên miền, bạn có thể đăng ký tại Namesilo để được miễn phí Whois Privacy
  • Phần mềm FTP Client, bạn có thể download phần mềm File Zilla tại đây

Bây giờ chúng ta sẽ bắt đầu di chuyển website lên hosting nhé.

Bước 1: Xuất CSDL sang file .sql. Bạn truy cập vào http://localhost/phpmyadmin, sau khi chọn CSDL bạn bấm vào menu export, sau đó bấm GO để xuất CSDL ra file .sql. Trong trường hợp CSDL quá lớn bạn nên nén lại dưới dạng .gzip để có thể upload lên hosting. Nếu CSDL của bạn lên đến vài GB bạn có thể gửi cho nhà cung cấp dịch vụ hosting họ sẽ import giúp bạn.

upload wordpress len hosting 1

Bước 2: Import CSDL vào hosting. Bạn truy cập vào Cpanel của webhosting và bấm vào mục MySQL Databases để tạo CSDL và user quản lý CSDL.

upload wordpress len hosting 2

Bạn đặt tên cho CSDL

upload wordpress len hosting 3

Sau đó bạn kéo xuống để tạo user quản lý CSDL, lúc này user vẫn chưa có quyền hạn thao tác với CSDL, bạn sẽ phải cấp quyền hạn cho user sau đó.

upload wordpress len hosting 4

Bạn kéo xuống dưới cùng và chọn user và CSDL mình vừa tạo sau đó cấp quyền thao tác trên CSDL cho user vừa tạo. Bạn nên chọn tất cả các quyền.

upload wordpress len hosting 6

Bạn quay trở lại trang chủ của cpanel và chọn vào PHP MyAdmin để import CSDL vào như hình bên dưới. Trong phpMyAdmin bạn bấm vào tab Import. Trong trường hợp CSDL quá lớn bạn có thể upload CSDL dưới các định dạng  gzip, bzip2 hoặc zip.

upload wordpress len hosting 7

Bước 3: Cập nhật site URL. Trong PHP MyAdmin bạn tìm đến bảng wp_options. Nếu bạn đã thay đổi prefix cho bảng thì bạn sẽ tìm đến bảng tenprefix_options. Sau đó ở cột options_name bạn cần tìm đến 2 giá trị là siteurl home, click vào edit và tiến hành đổi tên sang tên miền của bạn (ví dụ http://localhost/wordpres bạn đổi sang http://hoclaptrinhweb.org). Bấm vào nút Go để lưu lại. 

upload wordpress len hosting 11

upload wordpress len hosting 12

Bước 4: Upload mã nguồn website Wordpress lên hosting. Bạn mở FileZilla lên và nhập các thông số tài khoản FTP sau đó bấm Quickconnect để kết nối vào FTP server. 

upload wordpress len hosting 8

Ở bên trái bạn bấm CTR+A để chọn hết tất cả file ở localhost sau đó click phải và bấm vào upload để di chuyển file lên hosting. Trong trường hợp file trên website của bạn quá nhiều bạn có thể nén lại dưới dạng .zip để upload lên cho nhanh. Sau đó bạn vào trình quản lý file trong Cpanel để giải nén.

upload wordpress len hosting 9

Bước 5: Thay đổi thông tin cấu hình kết nối đến CSDL. Trên FileZilla ở panel bên phải bạn tìm đến file wp-config.php và thay đổi các thông số theo thông tin tài khoản CSDL mà bạn đã tạo.

define('DB_NAME', 'hoclaptrinhweb_org');

/** MySQL database username */
define('DB_USER', 'ecode');

/** MySQL database password */
define('DB_PASSWORD', '123456');

/** MySQL hostname */
define('DB_HOST', 'localhost');

 Ở đây bạn cần thay đổi lại tên CSDL, user truy cập CSDL, mật khẩu của user quản lý CSDL. DB_HOST bạn để là localhost, thông số này có thể thay đổi tùy theo các nhà cung cấp dịch vụ khác nhau. Ở đây tôi đang sử dụng StableHost.

Bước 7: Thay đổi lại đường dẫn trong file .htaccess. Đây là một bước mà đôi lúc chúng ta dễ bỏ qua. Nếu bạn cài đặt Wordpress trong một thư mục bên trong htdocs thì file .htaccess của bạn sẽ có nội dung như sau:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /ten_folder_cai_wordpres/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>

# END WordPress

 Sau khi upload lên hosting bạn sẽ cần phải thay đổi lại RewriteBase /wordpress sang RewriteBase /. Nếu bạn bỏ qua bước này bạn sẽ gặp phải lỗi 500 internal server khi chạy wordpress.

Bước 7: Cập nhật Permalink. Bạn truy cập vào trong Wordpress Admin và bấm vào Settings » General và click save options để đảm bảo các url được cập nhật lại. Sau đó bạn vào Settings » Permalink và click save để đảm bảo tất cả link của bài post sẽ được cập nhật lại.

Bước 8: Trong trường hợp các link hình ảnh và link trong bài viết vẫn là localhost bạn cần vào lại PHP MyAdmin và chạy câu lệnh SQL sau để câp nhật lại tên miền cho các bài viết của Wordpress.

UPDATE wp_posts SET post_content = REPLACE(post_content, 'localhost/wordpress/', 'www.tenmiencuaban.com/');

Bạn bấm vào tab SQL và paste câu lệnh SQL trên đây vào (nhớ thay đổi cho phù hợp website của bạn nhé). Sau đó click GO và kiểm tra lại website của bạn. 

upload wordpress len hosting 10

Chúc các bạn di chuyển website của mình thành công. Nếu gặp vấn đề gì khi di chuyển site bạn vui lòng để lại comment bên dưới nhé.