Những cách xuất bản trang web của bạn

Bạn có những tùy chọn nào?

Xuất bản một trang web không phải là một điều đơn giản, chủ yếu bởi vì có quá nhiều cách để thực hiện nó. Trong bài viết này, chúng tôi không hướng tới việc nêu ra hết tất cả các phương thức hiện có. Thay vào đó, chúng tối sẽ bàn luận về điểm mạnh và điểm yếu của của 3 phương thức phổ biến nhất từ góc nhìn của một người mới bắt đầu viết web, và hướng bạn đến với phương thức phù hợp nhất hiện tại với bạn.

Mua một dịch vụ hosting và tên miền

Nếu bạn muốn toàn quyền điều khiển trang web mà bạn muốn xuất bản, thì bạn có thể cần phải trả tiền để mua những thứ sau:

  • Hosting — một không gian lưu trử bạn thuê trên máy chủ của một công ty nào đó . Bạn đặt những file của mình trên đó, và máy chủ sẽ phục vụ những người dùng mạng yêu cầu những file đó – ở đây là trang web của bạn.
  • Một tên miền — một địa chỉ độc nhất nơi người ta có thể tìm đến trang web của bạn, như http://www.mozilla.org, hoặc http://www.bbc.co.uk. Bạn có thuể thuê tên miền trong vài năm từ một Nhà đăng ký tên miền.

Rất nhiều trang web chuyên nghiệp đã được đưa lên mạng qua phương pháp đó.

Thêm vào đó, bạn sẽ cẩn một phần mềm truyền tập tin FTP (xem How much does it cost: software để biết chi tiết) để thật sự truyền những file của trang web đến máy chủ. Những phần mềm FPT rất khác biệt nhau, nhưng nói chung bạn phải đăng nhập vào máy chủ của bạn bằng những thông tin được công ty hosting cung cấp (VD: username, password, host name). Sau đó phần mềm sẽ hiển thị những file cục bộ trên máy tính của bạn và những file trên máy chủ trong hua cửa sổ riêng biệt để bạn có thể trao đổi file qua lại giữa chúng:

Mẹo để tìm dịch vụ hosting và tên miền

  • Chúng tôi sẽ không đề cử công ty thương mại nào ở đây. Để tìm công ty hosting và nhà đăng ký tên miền, cứ google “web hosting” và “domain names” để tìm họ. Tất cả công ty đó sẽ có những tính năng cho phép bạn tìm tên miền mà bạn muốn.
  • Công ty cung cấp mạng cho nhà hoặc văn phòng của bạn có thể cung cấp cho bạn một số dịch vụ hosting giới hạn cho một website nhỏ. Chúng sẽ thiếu rất nhiều tính năng, nhưng lại có thể là dịch vụ hoàn hảo cho những thí nghiệm đầu tay của bạn — hãy cứ liên hệ với họ và hỏi!
  • Có một số dịch vụ miễn phí như Neocities, Blogspot, và WordPress. Nhắc lại lần nữa, bạn chỉ lấy được lại những gì bạn đã cho đi, nhưng chúng rất là lý tưởng cho những thí nghiệm ban đầu của bạn. Những dịch vụ miễn phí hầu hết không yêu cầu một phần mềm FPT để upload dữ liệu — bạn có thể chỉ cần kéo thả một cách đơn giản trên trang web là được.
  • Một số công ty cung cấp cả hosting và tên miền trong một gói dịch vụ.

Sử dụng một số công cụ trực tuyến như GitHub và Dropbox

Một số công cụ cho phép bạn xuất bản trang web trực tuyến:

  • GitHub là một trang “mạng xã hội lập trình”. Nó cho phép bạn tải kho mã nguồn lên để lưu trữ trên hệ thống kiểm soát phiên bản Git. Sau đó bạn có thể làm việc trên dự án của mình, và hệ thống mặc định là mã nguồn mở, nghĩa là bất cứ ai trên thế giới có thể tìm thấy GitHub của bạn, sử dụng nó, học từ nó và cải thiện nó. Bạn cũng có thể làm điều đó với mã nguồn của người khác! Đây là một cộng đồng rất quan trọng và hữu dụng để tham gia vào, và Git/GitHub là một hệ thống kiểm soát phiên bản rất phổ biến— Hầu hết các công ty công nghệ sử dụng nó trong quy trình làm việc của họ. GitHub có một tính năng rất hữu dụng gọi là GitHub pages, cho phép bạn có một trang web trực tuyến trên mạng.
  • Dropbox là một hệ thống lưu trữ cho phép bạn lưu dữ liệu trên mạng và truy cập chúng từ bất cứ đâu. Bất kỳ ai có kết nối Internet có thể truy cập thư mục Dropbox công cộng của bạn. Nếu thư mục đó chứa trang web, nó sẽ được hiển thị dưới dạng trang web một cách tự động. Xem Host websites With Dropbox để biết thêm thông tin.

Không như hầu hết các dịch vụ hosting, những công cụ này hoàn toàn miễn phí, nhưng bạn sẽ chỉ có được một số giới hạn những tính năng.

Sử dụng một web-based IDE như Thimble

Có một số ứng dụng web có thể giả lập một môi trường phát triển web, cho phép bạn nhập vào HTML, CSS và JavaScript sau đó hiển thị kết quả của những dòng code thành một trang web — tất cả trong một tab của trình duyệt! Nói chung những công cụ này đều dễ dùng, rất tốt cho việc học, và hoàn toàn miễn phí (cho những tính năng cơ bản), và họ có thể host trang web của bạn ở một địa chỉ độc nhất. Tuy nhiên, các tính năng cơ bản rất là giới hạn, và chúng thường không cung cấp hosting cho assets (như ảnh,…).

Hãy thử những công cụ sau đây, và chọn thứ phù hợp với mình nhất:

Xuất bản qua GitHub

Bây giờ chúng tôi sẽ hướng dẫn bạn cách xuất bản trang web qua GitHub. Chúng tôi không cho rằng đây là cách duy nhất hay tốt nhất để xuất bản trang web của bạn, nhưng nó hoàn toàn miễn phí, khá đơn giản, và cho bạn một số kỹ năng hữu dụng cho tương lai.

Thiết lập cơ bản

  1. Đầu tiên, cài Git lên máy tính của bạn. Đây là phần mềm quản lý phiên bản mà GitHub dựa trên để hoạt động.
  2. Tiếp theo, đăng ký một tài khoản GitHub. Nó rất đơn giản  và dễ dàng.
  3. Sau khi đăng ký được tài khoản, đăng nhập vào github.com.
  4. Tiếp theo, bạn cần tạo một repo mới cho những file của mình. Click dấu cộng (+) trên góc trên bên phải của trang chủ GitHub, rồi chọn New Repository.
  5. Trên trang này, trong hộp thoại Repository name, gõ username.github.io, với username là tên đăng nhập của bạn. Lấy ví dụ, bobsmith sẽ nhập bobsmith.github.io.
  6. Click Create repository; this should bring you to the following page:

Tải file lên GitHub

Đây là nơi chúng ta sẽ dùng cửa sổ dòng lệnh để đưa repo của chúng ta lên GitHub. Một cửa sổ dòng lệnh là một cửa sổ để chúng ta gõ vào những dòng lệnh để làm những việc như tạo file và chạy phần mềm, chứ không phải nhấn vào những nút trên một phần mềm bình thường. Nó sẽ giống như thế này:

Ghi chú: Bạn cũng có thể dùng Giao diện đồ họa cho người dùng của Git để làm việc nếu bạn thấy không thoải mái với những dòng lệnh.

Bất cứ hệ điều hành nào đều đi kèm với một công cụ dòng lệnh:

  • Windows: Command Prompt có thể truy cập bằng cách nhấn phím Windows, và gõ vào Command Prompt, và chọn nó từ danh sách phần mềm hiện ra. Chú ý rằng những dòng lệnh của Windows rất khác so với Mac và Linux nên những dòng lệnh bên dưới có thể khác biệt với thiết bị của bạn
  • OS X: Terminal có thể tìm trong Applications > Utilities.
  • Linux: thường thì bạn có thể bật terminal với tổ hợp phím Ctrl + Alt + T. Nếu cách đó không được bạn có thể tìm nó trong menu phần mềm.

Những thứ này có thể hù bạn một chút, nhưng đừng lo — bạn sẽ sớm nắm được căn bản thôi. Bạn yêu cầu máy tính làm gì đó trong terminal bằng cách gõ một dòng lệnh và nhấn Enter.

  1. Hướng con trỏ dòng lệnh đến thư mục test-site của bạn (hay bất cứ cái tên nào khác mà bạn thích cho thư mục chứa trang web của bạn). Để làm điều này, sử dụng lệnh cd (i.e. “change directory”). Đây là những gì bạn sẽ phả gõ nếu bạn đặt trang web của mình trong một thư mục gọi test-site:
    cd Desktop/test-site
  2. Khi đã xong việc trên, gõ tiếp những dòng sau, chúng sẽ yêu cầu git biến thư mục này thành một git repo:
    git init
  3. Tiếp theo, quay trở lại trang GitHub. Trên trang đó hãy chú ý tới tùy chọn …or push an existing repository from the command line. Bạn sẽ thấy hai dòng lệnh ở trong đó. Copy dòng thứ nhất, dán nó vào cửa sổ dòng lệnh và nhấn Enter. Dòng lệnh đó nên trông tương tự như thế này:
    git remote add origin https://github.com/bobsmith/bobsmith.github.io.git
  4. Tiếp theo gõ 2 dòng lệnh này vào, và nhớ nhấn Enter sau mỗi dòng. Đây là đễ chuẩn bị cho việc tải file lên GitHub, và yêu cầu Git quản lý nhũng file đó.
    git add --all
    git commit -m 'adding my files to my repository'
  5. Cuối cùng, đẩy mã nguồn lên GitHub bằng cách truy cập GitHub hồi nãy và nhập vào terminal dòn lệnh thứ 2 bạn đã thấy trong Buớc 3:
    git push -u origin master
  6. Bây giờ khi bạn truy cập vào trang GitHub của mình trong trình duyệt (username.github.io), bạn nên nhìn thấy trang web của mình trực tuyến! Hãy chia sẽ chúng với bạn bè của mình nào!

Ghi chú: Nếu bạn mắc kẹt, trang chủ của GitHub Pages có thể sẽ giúp bạn giải quyết rắc rối.

Thêm một số kiến thức về GitHub

Nếu bạn muốn thay đổi thêm trang thử nghiệm của bạn và tải lên GitHub, bạn chỉ cần đơn giản thay đổi những file mà bạn đã tải lên trước đây. Sau đó, nhập vào những dòng lệnh sau để đẩy những thay đổi đó lên GitHub:

git add --all
git commit -m 'another commit'
git push

Bạn có thể thay another commit bằng một tin nhắn phù hợp hơn để diễn tả thay đổi mà bạn vừa thực hiện.

Chúng ta chỉ mới lướt qua phần bề mặt của Git. Để tìm hiểu thêm, hãy truy cập trang GitHub Help site.

Tìm hiểu thêm

Được dịch từ nguồn: Mozilla Developer Network

Mạng toàn cầu hoạt động như thế nào? – How the Web works

How the Web works cung cấp cho bạn một cái nhìn đơn giản về những gì xảy ra khi bạn mở một trang web trên điện thoại hay trên máy tính.

Những lý thuyết này không thật sự thiết yếu cho việc lập trình web trong tầm ngắn hạn, nhưng việc hiểu được những gì thật sự diễn ra đằng sau sẽ mang lại rất nhiều những lợi ích dài hạn cho bạn trong tương lai không xa.

Máy khách (Clients) và Máy chủ (Servers)

Máy tính kết nối với mạng toàn cầu được gọi là Máy kháchMáy chủ. Đây là một giản đồ đơn giản về cách chúng có thể tương tác với nhau:

  • Máy khách là những thiết bị kết nối mạng của những người dùng Internet (Ví dụ: máy tính hay điện thoại của bạn) và những phần mềm kết nối mạng trên những thiết bị đó(thường là một trình duyệt như firefox hay chrome).
  • Máy chủ là những máy tính lưu trữ trang web hay những ứng dụng. Khi một thiết bị khách muốn truy cập một trang web, một bản sao của trang web được tải từ máy chủ về máy khách để hiển thị trên trình duyệt của người dùng.

Những phần khác của câu chuyện

Máy chủ và máy khách không phải là toàn bộ câu chuyện đằng sau một trang web. Còn có rất nhiều bộ phận liên quan nữa sẽ được mô tả ngay sau đây :).

Tạm thời, hãy cứ tưởng tượng Mạng toàn cầu giống như một con đường vậy. Ở một đầu của con đường là Máy khách,  nó giống như là ngôi nhà của bạn vậy. Còn ở phía cuối con đường là Máy chủ  – một cửa hàng mà bạn đến để mua một món đồ chẳng hạn.

Ngoại trừ máy chủ và máy khách, còn có những thứ cần thiết sau:

  • Mạng Internet: Cho phép bạn nhận và gửi dữ liệu qua nó.
  • Transmission Control Protocol and Internet Protocol – TCP/IP : Bộ giao thức liên kết mạng là một bộ giao thức xác định cách thức dữ liệu được truyền tải qua mạng Internet.
  • Domain Name System Servers – DNS: Hệ thống tên miền giống như một cuốn sổ địa chỉ dành riêng cho Mạng Internet vậy. Khi bạn nhập một địa chỉ web vào trình duyệt, trình duyệt sẽ nhìn vào cuốn sổ địa chỉ đó để tìm địa chỉ của trang web. Trình duyệt cần tìm ra được máy chủ của trang web, để có thể gửi những tin HTTP tới đúng chổ (xem bên dưới).
  • Hypertext Transfer Protocol – HTTP: Giao thức truyền tải siêu văn bản  là một giao thức ứng dụng xác định ngôn ngữ giao tiếp giữa các máy chủ và máy khách.
  • Những file thành phần: Một trang web được lập nên từ rất nhiều file thành phần. Những file này được chia làm hai loại:
    • Code file: Một trang web thường được xây dựng chủ yếu bằng những file HTML, CSS và JavaScript.
    • Assets: Assets chỉ tất cả những thứ khác hợp thành trang web, như ảnh, nhạc, video, v.v

Vậy chính xác chuyện gì đã xảy ra?

Khi bạn nhập một địa chỉ web vào trình duyệt:

  1. Trình duyệt tìm đến máy chủ DNS và tìm địa chỉ thật sự của máy chủ chứa trang web.
  2. Trình duyệt gửi một tin yêu cầu HTTP (HTTP request) tới máy chủ đó yêu cầu nó gửi về một bản copy của trang web tới máy của người dùng. Yêu cầu HTTP đó, và tất cả dữ liệu khác gửi qua lại giữa máy chủ và máy khách, được truyền tải qua mạng Internet sử dụng giao thức TCP/IP.
  3. Nếu máy chủ chấp nhận yêu cầu của máy khách, máy chủ sẽ gửi một tin nhắn “200 OK”, có nghĩa là “Tất nhiên là bạn có thể xem trang web này rồi! Nhận lấy này!”, và sau đó bắt đầu gửi những file của trang web tới trình duyệt dưới dạng những mảnh nhỏ dữ liệu được gọi là gói dữ liệu (data packets).
  4. Trình duyệt sẽ  ráp những mảnh nhỏ đó thành một trang web hoàn chỉnh và hiển thị nó lên màn hình.

Giải thích DNS

Địa chỉ thật của một trang web không phải những chuổi ký tự dễ nhớ mà bạn vẫn hay gõ vào hàng ngày đâu. Chúng thật ra là một chuỗi những con số, Ví dụ: 63.245.217.105.

Nó được gọi là địa chỉ IP, và nó đại diện cho một vị trí độc nhất trên mạng toàn cầu. Tuy nhiên, làm sao bạn có thể nhớ nổi các con số vô nghĩa đó? Đó chính là lý do người ta phát minh ra DNS. Chúng là những máy chủ biến những địa chỉ phù hợp (như “mozilla.org”) thành những địa chỉ thật sự ( địa chỉ IP).

Bạn hoàn toàn có thể truy cập một trang web qua địa chỉ IP của nó. Hãy thử truy cập trang chủ của Mozilla qua địa chỉ IP sau 63.245.217.105.

A domain name is just another form of an IP address

Giải thích về Packets

Trước đó chúng tôi đã dùng thuật ngữ “packets” để diễn tả hình thức mà dữ liệu được gửi từ máy chủ tới máy khách. Vậy nó mang ý nghĩa như thế nào? Về cơ bản, khi dữ liệu được gửi qua mạng Internet, nó được gửi dưới dạng hàng nghìn mảnh nhỏ, để giúp cho nhiều người dùng có thể tải trang web cùng một lúc. Nếu trang web được gửi dưới dạng một miếng lớn, thì chỉ duy nhất một người dùng có thể tải trang web một lúc, điều tất nhiên sẽ làm cho trang web kém hiệu quả và khó chịu cho người dùng.

Xem thêm

Credit

Street photo: Street composing, by Kevin D.

Được dịch từ nguồn: Mozilla Developer Network

Hello world!

Post đầu tiên không có gì để nói nên chắc khỏi nói :v … Chém tí thôi chứ mình làm blog này để dịch thuật lung tung những gì mà mình cảm thấy thích thú. Phần nhiều để thử wordpress, phần nữa là cải thiện khả năng tiếng anh của bản thân. Blog lung tung nên không có chủ đề chính nhưng nội dung chủ yếu vẫn là về công nghệ thông tin vì mình học ngành này 🙂 Chúc các bạn một ngày tốt lành