Cách public website

Trong bài này mình sẽ hướng dẫn các bạn 2 cách theo thứ tự từ khó đến dễ (chỉ vậy cho mọi người đọc hết bài blog :P) để thiết lập cho bên ngoài (mạng khác) truy cập vào trang web local (localhost) của chúng ta: tạo thủ công hoặc tạo localtunnel.

Cách public website

Giả sử là bạn đã có sẵn một trang web đã host trên IIS với port 80 dành cho http và port 443 dành cho https

Cách public website

Cách 1: Tạo Thủ Công

Với bước này chúng ta sẽ public IP của máy tính hiện tại của chúng ta ra bên ngoài

Bước 1: Xem IP hiện tại của máy

Vào cmdipconfig, lúc này chúng ta sẽ thấy tại dòng IPv4 Address là địa chỉ IP hiện tại của máy mình

Bước 2: Truy cập vào trang quản lý router

Thông thường chúng ta sẽ vào bằng địa chỉ 192.168.1.1 hoặc 192.168.0.1 rồi nhập thông tin tài khoản admin vào

Bước 3: Tuỳ chỉnh Port Forwarding

Sau khi đăng nhập thành công, chúng ta chọn đến mục nào có chữ Port Forwarding. Rồi lần lượt điền thông tin vào tương tự như hình bên dưới.

Tại ô nào có chữ Start Port/End Port thì bạn điền số port mà bạn đã thiết lập trên IIS trước đó. Chẳng hạn như ở đây mình muốn public trang https mà mình đã host với port 443 ra thì trong các ô này mình sẽ điền 443.

Ở ô LAN Host IP Address thì bạn bỏ cái địa chỉ ip hiện tại của máy mình đã lấy được ở bước 1 vào

Cách public website

Rồi save lại là xong. Nếu trường hợp máy bạn bị thay đổi ip thì cứ vào đây mà chỉnh lại là được.

Bước 4: Xem địa chỉ IP hiện tại của router

Trong trang quản trị router đâu đó bạn sẽ tìm thấy địa chỉ IP hiện tại của router, nếu ko biết bạn có thể vào trang https://whatismyipaddress.com/ hoặc là lên google tìm đại 1 trang what is my ip address nào đó rồi vào xem sẽ thấy được địa chỉ IPv4 hiện tại của router

Bước 5: Truy cập vào trang localhost

Lúc này, bạn đã có thể chia sẻ hoặc truy cập vào trang localhost của mình bằng một mạng khác hoặc một thiết bị khác rồi đó. Khi đó địa chỉ chúng ta cần gõ vào sẽ là địa chỉ IPv4 đã lấy ở bước 4.

Để đảm bảo chắc chắn là bên ngoài có thể truy cập vào, bạn có thể test bằng cách dùng 3G trên điện thoại để truy cập vào trang web.

Bạn lưu ý là với cách này, nếu địa chỉ IP hiện tại của máy thay đổi thì chúng ta phải truy cập vào trang quản lý router để thay đổi lại địa chỉ IP đó nhé! Hoặc chúng ta cũng có thể set IP tĩnh cho máy tính hiện tại của chúng ta luôn cũng được.

Cách 2: Tạo Localtunnel

Ví dụ trường hợp bạn quên hoặc ko biết mật khẩu router thì có thể dùng tạm bằng cách này.

Đây là một cách có tên gọi là Localtunnel.

Localtunnel là một “loại công cụ” cung cấp đường hầm (tunnel) liên kết localhost của bạn và mạng internet để bạn có thể truy cập vào localhost giống như một server bình thường.

Bước 1: Đăng ký tài khoản

Chúng ta truy cập vào trang https://ngrok.com/ để đăng ký tài khoản

Bước 2: Tải ngrok

Truy cập vào trang https://dashboard.ngrok.com/get-started để tải ngrok

Bước 3: Giải nén

Giải nén thư mục đã tạo bằng cách thủ công hoặc dùng lệnh unzip /path/to/ngrok.zip để giải nén

Bước 4: Kết nối tài khoản

Sau khi giải nén thành công, chúng ta dùng cmd rồi gõ lệnh ./ngrok authtoken 

Để lấy được đoạn mã token đó, tại trang Setup & Installation ở bước 2 ở trên, trong đó có phần Connect your account. Bạn cứ copy dòng lệnh đó rồi dán vào cmd là được

Cách public website

Bước 5: Khởi tạo tunnel

Sau khi liên kết xác thực tài khoản xong chúng ta dùng lệnh ./ngrok http để tạo tunnel cho trang web

Cách public website

Lúc này ngrok sẽ sinh ra cho chúng ta 1 địa chỉ có dạng là .ngrok.io, chúng ta copy đường link đó và truy cập vào là được

Ngoài Ngrok ra thì chúng ta sẽ còn 1 số công cụ phổ biến khác để hỗ trợ tạo localtunnel này là Serveo hoặc localtunnel. Đối với Serveo thì bạn không cần phải tải hay đăng ký tài khoản gì luôn

.NET | Javascript | Typescript | Azure Xem tất cả bài viết bởi Thao Tran


Mình có một web như thế này, có thể tạo bằng Microsoft Word hay tự viết bằng html:

Cách public website

Cách public website

Việc tiếp theo là cần một host để đưa các file web lên và một domain (tên miền) để làm địa chỉ cho web site của mình. Sẽ có bạn thắc mắc host và domain là gì, mình xin giải thích luôn, host đơn giản là một chỗ lưu trữ trên mạng để bạn tải các file web lên, domain chính là cái địa chỉ web site của bạn.

Hiện nay trên mạng có rất nhiều domain, host tính phí và miễn phí và có nhiều giá, rẻ hay mắc tùy theo dung lượng lưu trữ host, lưu lượng truy cập và loại domain. Tiện đây mình cũng giải thích luôn:

 - Dung lượng lưu trữ là dung lượng tối đa cho web của mình, 5GB, 10GB, ... Ví dụ web tin tức hay web cá nhân thì lưu trữ ít, web nhạc, phim thì dung lượng lưu trữ nhiều.

 - Lưu lượng truy cập (băng thông) là tổng dung lượng thông tin mà trang web của bạn lưu thông mỗi tháng. Ví dụ có một người vào trang web của bạn load xuống 1MB, 10 người vào web là 10MB, mỗi ngày có 10 người vào xem web của bạn thì một tháng tiêu tốn băng thông 300MB (300 lượt truy cập/tháng). Băng thông càng lớn thì sẽ cho phép nhiều người truy cập hơn.

 - Domain (tên miền) là địa chỉ web của bạn, ví dụ abc.com, xyz.net, tên miền .com .net là mắc nhất vì nó phổ biến và thân thiện, .biz, .org, .info... thì rẻ hơn.

 - Ngoài ra còn có nhiều dịch vụ như email, ssl (thiết lập kết nối an toàn) ... nhiều dịch vụ thì mắc hơn.

Giải thích vậy chắc các bạn cũng cơ bản hiểu được rồi phải không, trở lại với hướng dẫn của mình, ở đây mình chỉ demo thôi nên không cần quan tâm đến các dịch vụ nói trên vì mình làm miễn phí mà :)

Hiện có nhiều hosting miễn phí, ở đây mình sử dụng Hostinger.vn. Cái này của Hostinger Group ở nước ngoài, trang web chính thức của nó là Hostinger.com do nó hỗ trợ nhiều quốc gia nên ở Việt Nam mình là Hostinger.vn, mình không phải pr cho nó đâu, tại bản thân mình thấy nó tốt, hỗ trợ nhiều dịch vụ.

Đầu tiên bạn vào trang Hostinger.vn đăng kí một tài khoản hoặc có thể sử dụng facebook hay google để đăng ký, sau đó vào email để nhận email kích hoạt tài khoản:

Cách public website

Cách public website

Sau khi kích hoạt xong nó sẽ tự động mở trang chọn gói hosting, mình chọn free nhé !

Cách public website

Sau đó bạn chọn loại domain, ở đây có 2 loại subdomain và domain, chọn subdomain thì miễn phí, còn chọn domain sẽ tính phí và yêu cầu bạn chọn lại gói hosting Premium hoặc Business. Có nhiều subdomain cho bạn chọn:

Cách public website

Hoàn tất:

Cách public website

Vào thử trang web của mình,  nó báo "Website demo170115.16mb.com đã được cài đặt thành công trên server! Hãy xóa file default.php từ thư mục public_html rồi upload website của bạn lên bằng FTP hoặc trình Quản lý file"

Có nghĩa là domain của bạn đã được tạo, việc tiếp theo là xóa file default.php mạc định trên host rồi upload web site của mình lên, chúng ta có thể dùng công cụ FTP (File Transfer Protocol - giao thức truyền tải tập tin) như FileZilla Client, SmartFTP... hay sử dụng công cụ quản lý file của Hostinger, ở đây mình sử dụng FileZilla Client vì nó thân thiện, thao tác giống như windows explorer quen thuộc. Các bạn lên Google tìm và cài đặt nhé !

Cách public website

Bạn vào phần thông tin trong trình quản lý website để lấy thông tin FTP:

Cách public website

Cách public website

Mở FileZilla Client lên và điền thông tin FTP vào và kết nối:

Cách public website

Sau khi nết nối xong, bạn sẽ thấy các file trên host (bên phải), xóa các file trong thư mục public_html rồi kéo thả các file web bạn cần upload qua:

Cách public website

Sau khi quá trình upload file lên host thành công (Báo dòng "Directory listing successful" dưới những dòng xanh lá tương tự như hình bên trên) các bạn có thể tắt FileZilla và vào trang web của mình xem kết quả. Chúc các bạn thành công !

Lưu ý quan trọng: Một trang web buộc phải có 1 file index ví dụ như index.html hay index.php, đây xem như là file chạy trang web, giống như file exe để chạy một phần mềm vậy, nếu không sẽ báo lỗi.

Kết quả:

Cách public website

Vậy là các bạn đã biết cách đưa một trang web lên mạng là như thế nào rồi phải không, ngoài Hostinger, các bạn cũng có thể tự tìm hiểu các nhà cung cấp hosting khác tương tự, bài viết trên mình đã giải thích các khái niệm cơ bản nhất về web, hosting, domain, hi vọng các bạn có thể tự mình đưa một trang web đơn giản lên mạng.

Ở bài viết sau mình cũng sẽ hướng dẫn các bạn cách đưa một trang web lên mạng nhưng có cơ sở dữ liệu và đầy đủ tính năng như tất cả các website hiện nay, mong các bạn tiếp tục ủng hộ nhé !

:::HỌC MẠNG CƠ BẢN - CHIA SẺ KIẾN THỨC, VỮNG BƯỚC THÀNH CÔNG:::