Hướng dẫn bạn cách xây dựng một trang web cá nhân phi tập trung
胖虎
2022-11-29 07:15
本文约3714字,阅读全文需要约15分钟
Hướng dẫn đầy đủ "Triển khai khái niệm cho IPFS".

Đối với những người đam mê Web3 có thói quen đưa ra ý kiến ​​của mình, nội dung "lưu trữ" trên phương tiện truyền thông xã hội Web2 như Twitter dường như không đủ "khả năng chống kiểm duyệt" và nó cũng thiếu cảm giác độc quyền và độc lập; đối với các nhóm giao thức Web3 hoặc các bên dự án Nói cách khác, việc phân cấp toàn bộ quy trình từ dịch vụ sản phẩm đến trình bày mặt trước cũng hấp dẫn hơn về mặt tường thuật. Bất kể động cơ là gì, việc biến trang web chính thức của một cá nhân hoặc dự án thành một trang web phi tập trung đều có những lợi thế nhất định về chi phí, tính ẩn danh và bảo vệ quyền riêng tư.

Do đó, bài viết này sẽ hướng dẫn bạn từng bước triển khai trang web cá nhân của mình (lấy trang web do Notion tạo làm ví dụ) trên IPFS và xây dựng một trang web phi tập trung thực sự (Dweb) chỉ thuộc về bạn.

Bài viết được chia thành ba phần: mở đầu, hoạt động thực tế và gợi ý. Đầu tiên tôi sẽ giới thiệu khái niệm và đại diện của mạng phi tập trung Dweb, sau đó hướng dẫn cách triển khai trang web danh thiếp cá nhân lên Dweb, cuối cùng tôi sẽ tóm tắt những ưu điểm và nhược điểm của giải pháp hiện tại.

tiêu đề cấp đầu tiên

Trang web phi tập trung là gì?

Một trang web phi tập trung (Dweb) theo nghĩa đen là một trang web được triển khai trên một mạng phi tập trung.

Từ góc độ của các thành phần, Dweb tương tự như các trang web Internet truyền thống và cả hai đều cần có lối vào—tên miền và thực thể lưu trữ—máy chủ lưu trữ. Trong thế giới Web3, các dự án tiêu biểu ứng với hai “chức năng” này là ENS, IPFS và Arweave (bài viết này tập trung vào giải pháp thứ nhất, cũng là giải pháp được nhiều dự án sử dụng).

ENS (Dịch vụ tên Ethereum) là một hệ thống đặt tên mở, có thể mở rộng và phân tán dựa trên Ethereum; theo thuật ngữ phổ thông, đó là hệ thống tên miền chuỗi khối.

Ý tưởng của IPFS là phân phối và lưu trữ dữ liệu trên các nút có thể được điều hành bởi bất kỳ ai trên khắp thế giới; về cơ bản, nó là một dịch vụ lưu trữ dữ liệu ngang hàng, chống đánh giá. Ngoài ra, vì IPFS phân phối dữ liệu trên các nút và trỏ đến dữ liệu cụ thể nên nó có thể đảm bảo rằng tài nguyên đến từ các nguồn được cập nhật gần đây và trải nghiệm thực tế sẽ nhanh hơn và đáng tin cậy hơn.

Để hiểu rõ hơn về ENS và IPFS, độc giả quan tâm có thể đọc "Tìm hiểu về ENS, ứng dụng Ethereum phi tài chính thành công nhất cho đến nay》《Phân tích chuyên sâu về IPFS: một thế hệ giao thức nền tảng Internet mới》。

tiêu đề cấp đầu tiên

Trang web đại diện dựa trên ENS+IPFS

Mặc dù không rõ ràng ở mức độ nhận thức, nhưng nếu người dùng chú ý đến một số ứng dụng Web 3 chính thống, họ có thể tìm thấy từ các tài liệu chính thức của họ rằng các giao thức Web 3 hàng đầu như Uniswap và 1inch đã đồng bộ hóa trang web của họ với IPFS.

Địa chỉ liên kết ENS của nó lần lượt là 1inch.eth và uniswapexchange.eth. Đối với các trình duyệt Web3 gốc, bạn có thể nhập trực tiếp các địa chỉ trên để truy cập. Đối với các trình duyệt không phải gốc, bạn có thể sử dụng các địa chỉ tương thích để truy cập:

1inch:https://1inch.eth.link/

uniswap:https://uniswapexchange.eth.link

Để biết thêm các website triển khai công nghệ ENS+IPFS, Almonit đã tổ chức website Dweb, các đường dẫn như sau:https://almonit.eth.link/#/discover/tiêu đề cấp đầu tiên

chữ

Trong bài viết này chúng tôi chủ yếu sử dụng giải pháp do công cụ Fleek cung cấp, ưu điểm của giải pháp này là dễ triển khai, hỗ trợ nhiều web framework, ngoài hỗ trợ trang Html còn hỗ trợ web framework đa ngôn ngữ. chẳng hạn như Next.js, Hugo.js và Wordpress.

Bài viết này tập trung vào một trong nhiều chức năng đơn giản nhất được Fleek hỗ trợ - lược đồ triển khai khung trang Html và giải thích từng bước một. Tôi hy vọng Xiaobai có thể bắt đầu nhanh chóng sau khi đọc nó; đối với các chuyên gia, nó cũng có thể đóng một vai trò trong thu hút ngọc bích. .

Tôi vừa đề cập rằng cần phải chuẩn bị một trang web Html, vì vậy khái niệm sẽ được sử dụng để tạo tệp trang web Html này, lý do chính là khái niệm này dễ vận hành và có chức năng xuất html riêng, có thể được sử dụng như một trình tạo trang web Html trực quan.

Vì Fleek, công cụ được sử dụng, tự động đồng bộ hóa Github nên cũng cần chuẩn bị tài khoản Github và Repo (thư viện) tương ứng.

Bản thân việc triển khai vào mạng IPFS không yêu cầu tên miền. Tải lên mạng sẽ tạo ra một hàm băm, tương tự như địa chỉ IP trong Web2. Do đó, cũng cần chuẩn bị một ENS để ánh xạ hàm băm IPFS này.

Tóm lại, chuẩn bị trước ba điều:

  1. tài khoản github;

  2. Một tên miền ENS, ví tương ứng và một lượng nhỏ ETH dưới dạng gas;

  3. Một tài khoản ý tưởng và tạo một trang hồ sơ cá nhân.

1. Xuất Html từ Notion

1.1 Thiết kế profile theo concept, Demo như hình bên dưới.

1.2 Xuất các trang đã chuẩn bị của chúng tôi từ chức năng xuất khái niệm. Do khả năng hạn chế của IPFS trong việc hỗ trợ các trang web tĩnh, chúng tôi chỉ có thể chọn xuất một trang trong thời điểm hiện tại. (Người chơi nâng cao cũng có thể thực hiện các trang đa cấp - trang con).

1.3 Sau khi có được tệp nén đã xuất, nó sẽ tự động được tải xuống cục bộ. Sau khi giải nén cục bộ, bạn sẽ nhận được một thư mục và tệp Html như trong hình bên dưới. Đổi tên tệp kết thúc bằng "xxx.html" thành "index.html".

2. Tải lên Github

2.1 Truy cập vàoGitHubTại trang chủ, đăng nhập (nếu chưa có tài khoản thì cần đăng ký tài khoản) để vào trang sau, nhấn “New” để tạo Repo mới.

2.2 Đối với Repo mới này, nên áp dụng phương thức thư viện Riêng tư (riêng tư). Bởi vì điều này ngăn không cho bất kỳ ai khác ngoài công cụ Fleek và người tạo truy cập vào tệp gốc.



2.3 Tiếp theo, bạn cần sử dụngứng dụng khách Github(Nếu bạn không có ứng dụng khách Github trên máy tính của mình, bạn cần tải xuống và cài đặt ứng dụng này). Sau khi đăng nhập vào ứng dụng khách Github, hãy quay lại trang web Github vừa tạo và nhấp vào "Thiết lập trong máy tính để bàn" trong hộp màu xanh (mở ứng dụng khách trên máy tính để bàn).

2.4 Sau khi cài đặt máy khách để bàn, lời nhắc sau sẽ xuất hiện.

2.5 Đến với máy khách để bàn, làm theo lời nhắc để đặt thư mục cục bộ và ghi lại đường dẫn của thư mục cục bộ này. Sao chép tệp chúng tôi đã tải xuống ở bước đầu tiên "Xuất dữ liệu từ Notion" vào thư mục cục bộ này.

2.5 Sau khi sao chép xong, khi quay lại máy khách sẽ xuất hiện lời nhắc sau. Điền vào một số mô tả và nhấn cam kết.

2.6 Nhấp vào push origin để đẩy tài liệu lên Github Repo.

3. Sử dụng Fleek để tạo project mới

"Fleek là một bộ công cụ bao gồm mọi thứ cần thiết để xây dựng liền mạch các trang web và ứng dụng hiện đại trên web mở và các giao thức của nó."

Nói một cách đơn giản, Fleek là một công cụ có thể dễ dàng triển khai các trang web cá nhân lên các mạng phi tập trung.

3.1 Lần đầu tiên vào Fleek, bạn cần phải đăng ký, nên sử dụng Ví Ethereum Little Fox để đăng ký và đăng nhập trực tiếp chỉ bằng một cú nhấp chuột, sẽ thuận tiện hơn (bạn cũng có thể sử dụng Github hoặc Email để đăng ký).

3.2 Sau khi đăng ký và đăng nhập, bạn sẽ đến trang chủ của dự án, sau đó bạn cần tạo một dự án trang web.

3.3 Chúng ta chọn Github Repo đã tạo ở bước thứ hai vừa rồi và chuyển sang bước tiếp theo.

3.4 Chúng tôi chọn IPFS trong tùy chọn Dịch vụ lưu trữ và chọn Cointinue để chuyển sang bước tiếp theo.

3.5 Chọn trang web vừa tạo để vào trang cấu hình chi tiết.

3.6 Bây giờ trang web đã được triển khai trên IPFS, công cụ Fleek đã liên kết mật thiết với một tên miền được ánh xạ, như thể hiện trong hình.

3.7 Tiếp theo, liên kết tên miền ENS, chọn "Cài đặt" và tìm "ENS".

3.8 Kéo xuống "Thêm ENS".

3.9 Nhập tên miền ENS.

3.10 Nhập giao diện sau và nhấp lại vào địa chỉ ENS vừa nhập. Và chọn "Đặt hàm băm nội dung" và cuối cùng trả phí gas để hoàn thành ràng buộc.

3.11 Tại thời điểm này, chúng ta có thể thấy rằng tên miền ENS màu xám đã chuyển sang màu xanh lam và liên kết thành công.

3.12 Đối với các trình duyệt hỗ trợ tên miền phi tập trung, chẳng hạn như ứng dụng di động Brave, Fox Wallet, v.v., hãy truy cập trực tiếp ENS, chẳng hạn như yyzfish.eth mà tôi đặt ở đây, để truy cập trực tiếp vào Dweb đã triển khai. Đối với các trình duyệt Web2, ENS cũng có một giải pháp tương thích, bạn có thể truy cập trực tiếphttps://yyzfish.eth.link/

chữ

Sau khi trải qua quá trình này, tôi nhận ra một số ưu điểm và nhược điểm của các trang web phi tập trung so với các trang web truyền thống.

Lợi thế

Chi phí thấp và ổn định

Các trang web Web2 truyền thống cần được triển khai trên máy chủ, điều này không chỉ đòi hỏi bảo trì mà còn tăng theo số lượng người dùng, tuy nhiên, qua quá trình triển khai lên Web3 trong bài viết này, không khó để nhận thấy rằng chi phí của triển khai lên IFPS cực kỳ rẻ (hiện đang miễn phí) Và bất kể quy mô của người dùng, chi phí sẽ không thay đổi.

Một tường thuật Web3 đầy đủ hơn

Trong những ngày đầu, do gas trên chuỗi cao, rất khó để triển khai toàn bộ dự án (giao diện người dùng + hợp đồng thông minh) trên mạng Ethereum cùng một lúc. Giờ đây, với sự cải tiến của giao thức mạng IPFS, các trang tương tác mặt trước khổng lồ cũng có mạng phi tập trung độc quyền của riêng họ. Điều này được tường thuật là phù hợp với ý tưởng thực sự của "sự phi tập trung hóa". Hiện tại, các giao thức DeFi hàng đầu như Uniswap và 1inch đã lần lượt được triển khai trên mạng phi tập trung. Trong tương lai, việc triển khai hoàn chỉnh cho mạng phi tập trung có thể trở thành cấu hình tiêu chuẩn của dự án Web3.

mát mẻ cho một người

Tên miền ENS rất phổ biến trên phương tiện truyền thông xã hội (chẳng hạn như Twitter) và nhiều KOL có biệt danh là xxx.eth, và trên cơ sở đó, họ đã đạt được một phần mở rộng hơn nữa - triển khai blog của riêng họ vào mạng IPFS và sử dụng ENS tên miền làm lối vào , sẽ là một điều thú vị đối với những người đam mê tiền điện tử.

Ẩn danh và bảo vệ quyền riêng tư

Vì Dweb đã xem xét đầy đủ sự kết hợp giữa "phân quyền" và "quyền riêng tư" trong giai đoạn thiết kế ban đầu, nên nó thực sự hơi giống với mạng Tor, cả hai đều có các đặc điểm là không thể theo dõi và ẩn danh.

không đủ

Khả năng tương thích cho Web 2 vẫn cần được cải thiện

Mặc dù công cụ này đã hỗ trợ nhiều framework chính thống nhưng không phải tất cả chúng đều được hỗ trợ, các framework web động như PHP vẫn chưa được hỗ trợ. Khả năng tương thích tổng thể cần phải được cải thiện.

Không thân thiện với người dùng trong nước

Vì số lượng nút IPFS hiện tại còn lâu mới đạt được số lượng (lộ trình) được lên kế hoạch trong sách trắng, nên có một số trở ngại nhất định đối với việc truy cập Dweb ở Trung Quốc.

Tôi hy vọng sẽ thấy nhiều giải pháp hoàn hảo hơn và lặp lại công nghệ trong tương lai.

胖虎
作者文库