Issue: 

- Clone website wordpress và giữ nguyên chứng chỉ SSL đã cài ở production site. Khi clone web chính sang 1 web khác để test (giữ nguyên domain), clone web này sẽ không thể xin cấp 1 SSL cert khác được. Vì vậy, chúng ta cần copy toàn bộ SSL cert & domain.conf từ site gốc sang để tiếp tục sử dụng https. Nếu không copy => bắt buộc phải chuyển từ https => http trong database thì web mới chạy được. (Chú ý: 2 site chạy trên 2 server/vps & bạn có quyền root của cả 2).

– Chuyển website sang một domain mới không sử dụng SSL certificate (từ https => http)

Steps: 

1. Copy SSL cert từ server chính (đối với clone site sang test server để develop các functions – move domain không cần thực hiện bước này):

Copy SSl certificate từ server chính sang server test: vị trí file cert (privkey.pem & fullchain.pem & dhparam.pem) xem trong file domain.com.conf (file này nằm trong /etc/nginx/conf.d by default với Nginx)

SSL LetsEncrypt location

2. Cài wordpress: 

Cài như bình thường trên test site (nên sử dụng các bash scripts cho nhanh)

3. Sửa file hosts của PC: 

Sửa file hosts PC để truy cập được test site (mà không ảnh hưởng đến khách vào productions site) => chỉ có 1 mình bạn vào được test site.

Sửa file hosts

4. Upload restore files lên test site:

Nên sử dụng plugin như duplicator/updraft plus… cho tiện): khi backup bằng updraft plus, file backup sẽ được split ra thành các file nhỏ, rất tiện khi upload lên server mới. 

Restore wordpress với updraft plus

5. Restore site: 

Lúc này sẽ không truy cập được test site nữa do database của test site là https (nếu muốn sửa database thành http, chúng ta có thể dùng tool “search replace database” để sửa database: wordpressChangeDomainDatabase – link dự phòng: download). Sau khi upload file zip lên server, bạn cần giải nén => truy cập vào domain/tenthumuc để sử dụng.

Change WordPress site address

Chú ý: upload lên host và lưu đường dẫn để sử dụng => sau khi dùng cần xóa tool này đi hoặc đổi tên để tránh bị sử dụng trái phép

– Sau khi restore và replace domain, nếu site có cài plugin SSL như Really simple SSL thì cần xóa plugin hoặc đổi tên folder để site không bị redirrect về https

6. Sửa file domain.conf ở server chứa test site:

copy file domain.conf ở server chính sang server test site => done => Restart server test site. 

Chú ý:

+ Nếu server gốc đang chạy các service như cache… thì server test cũng phải triển khai giống như vậy. Nếu không cần uncomment các dòng có liên quan trong file domain.conf thì web mới chạy được. 

+ 6.1 – install pagespeed module:

C1: Tham khảo từ bash script từ Linode:automated bash script to install – chú ý đoc note trong site gốc trước khi bắt đầu => cách tốt nhất là sử dụng các script tự động hóa cài module google pagespeed như vpssim hoặc tino script (hay lỗi).

bash <(curl -f -L -sS https://ngxpagespeed.com/install) \
--nginx-version latest

Source: https://www.linode.com/docs/guides/build-nginx-with-pagespeed-from-source/

+ Nếu sau bước 6 mà web không chạy thì cần kiểm tra từng phần để tìm lỗi:

        . Check web server => sau khi web server chạy ok thì kiểm tra connection giữa browser và webserver.

        . Check connection giữa browser & webserver bằng developer tool (F12) – tab: network để kiểm tra connection giữa trình duyệt đến web server. Nếu browser sau khi kết nối, nhận được kết quả “no response” => Cần kiểm tra lại cấu hình file domain.conf.

Leave a Reply

Your email address will not be published. Required fields are marked *