Mọi điện thoại đều nên có thể chạy một website cá nhân
(rohanrd.xyz)- Việc chạy website cá nhân tự lưu trữ trên điện thoại từng khả thi trên điện thoại Nokia năm 2009 nay đã trở thành một tính năng biến mất, và vẫn chưa được tái hiện ngay cả trên smartphone hiện đại có hiệu năng vượt trội hơn nhiều
- Nguyên nhân cốt lõi khiến tính năng này không được triển khai là thiếu động lực từ các tập đoàn lớn và ý định duy trì hệ sinh thái khép kín (walled garden)
- Android không thể chạy web server trên cổng 80, và điều này không được cho phép với lý do bảo mật
- Nhiều thuê bao mới đang ở trong môi trường CG-NAT, trong khi IPv6 chưa được phổ biến đầy đủ, tạo nên cấu trúc khiến việc tự hosting trở nên khó khăn
- Đặc quyền tự hosting mà người dùng Internet thời kỳ đầu từng hưởng không được trao cho người dùng mới, đồng thời nêu khả năng rằng một tỷ website tiếp theo có thể đến từ những người dùng điện thoại bình thường
Khoảng cách giữa thời Nokia trước đây và hiện tại
- Vào năm 2009, chỉ cần có Nokia là bất kỳ ai cũng có thể sở hữu website cá nhân chạy trực tiếp từ điện thoại của mình
- Công nghệ này đã biến mất mà chưa kịp được phổ biến rộng rãi
- Điện thoại ngày nay mạnh hơn Nokia thời đó rất nhiều cả về hiệu năng lẫn thời lượng pin
- Dù vậy, rất khó tìm thấy trường hợp chạy server trên điện thoại
Vì sao chưa được triển khai
- Thiếu động lực từ các tập đoàn lớn được chỉ ra là nguyên nhân gốc rễ
- Đây thậm chí có thể là thứ họ chủ động né tránh để các hệ sinh thái khép kín (walled garden) tiếp tục phát triển
- Điện thoại Android không thể chạy web server trên cổng 80
- Vấn đề này từng được nêu với Google trước đây, nhưng không được cho phép với lý do bảo mật
- Chưa rõ liệu điều này có khả thi trên iPhone hay không
- Nhiều thuê bao mới đang nằm trong môi trường CG-NAT, và IPv6 chưa được triển khai rộng rãi
Nhu cầu và triển vọng
- Điện thoại hiện nay hoàn toàn đủ khả năng xử lý website cá nhân quy mô nhỏ ở mức tương tự web server Nokia thời kỳ đầu
- Lý do cần tính năng này là vì một bộ phận đáng kể người dùng Internet không đủ khả năng chi trả chi phí hosting website cá nhân
- Đặc quyền tự hosting mà người dùng Internet thời kỳ đầu từng có không được trao cho người dùng mới
- Người dùng mới gia nhập Internet khi thiết bị của họ vốn đã nằm sau CG-NAT
- Nếu doanh nghiệp và cơ quan chính phủ hợp tác, một tỷ website tiếp theo có thể xuất phát từ những người dùng điện thoại bình thường
- Điều cần thiết là kết nối IPv6 khả dụng ở mọi nơi và hệ điều hành điện thoại được tối ưu cho việc chạy web server
1 bình luận
Ý kiến trên Hacker News
Xin đừng như vậy. Điện thoại đi vào đường hầm, hết pin, trong nhà thường tín hiệu yếu hoặc hoàn toàn không có, nên rất không ổn định nếu dùng làm máy chủ
Hơn nữa còn làm hao pin nhanh hơn nhiều. Nếu bạn định cắm sẵn một chiếc điện thoại dư trong tủ, kết nối Wi-Fi/Ethernet và cải tạo nó thành web server thì được, nhưng chạy web server trên thiết bị di động thực sự mang theo bên mình là một ý tưởng tệ
Nếu không jailbreak hoặc mở khóa bootloader rồi root thì ngay cả web server trong tủ cũng không thể chạy trên cổng 80; tôi không nghĩ ra lý do thuyết phục nào cho việc đó. Android và iOS cũng đâu cung cấp sẵn một HTTP(S) server quan trọng theo mặc định, vậy tại sao lại không cho ứng dụng dùng cổng 80/443?
Nếu downtime của mọi người không tương quan với nhau, chỉ cần 2 peer cũng không ổn định như nhau hoạt động như máy chủ cache tạm thời là có thể nâng uptime cảm nhận được từ 95% lên 99,99%
Tuy vậy, khi nghĩ đến self-hosting bằng điện thoại, tôi vẫn cho rằng mô hình điện thoại + USB drive để trong tủ là hợp lý hơn
Khiến người ta mong có một kỳ lân nào đó làm ra thứ như WordPress cho iOS/Android
Rõ ràng có ít nhất một lý do tốt để việc này phải khả thi: tái sử dụng điện thoại cũ. Khác với PC cũ, chúng được thiết kế với hiệu quả năng lượng trong đầu, và dùng làm web server có vẻ tốt hơn là bị vứt đi thành rác thải điện tử hoặc bị quên trong ngăn kéo
Có lẽ vì tôi dùng LineageOS và CyanogenMod trước đây nên cũng không biết Android có vấn đề khi chạy web server. Gần đây khi chán trên tàu, tôi đã gửi file cho một người bạn dùng iPhone bằng ứng dụng F-Droid Lightweight Web Server (LWS); trong tình huống upload WhatsApp chậm hơn và còn giới hạn kích thước file, không có cách nào dễ hơn. Tôi chuyển file vào một thư mục, chuẩn bị một chút file HTML, rồi khi bạn tôi bật hotspot Wi-Fi thì tôi kết nối, nhập địa chỉ IP hoặc quét mã QR, và mọi thứ chạy tốt. Lạ là nếu tôi tạo hotspot thì không được, phải kết nối về phía bạn tôi; tôi cũng tò mò không biết vì sao
Dù không phải chức năng dùng thường xuyên, tôi khó chấp nhận một chiếc điện thoại không làm được việc đơn giản đến mức này. Tôi mong nhà sản xuất đừng tùy ý giới hạn những gì phần cứng có thể làm. Tôi sẽ không khuyên chạy website kinh doanh bằng điện thoại. Bảo mật cũng đáng ngờ, hiệu năng hạn chế, và DDoS cũng có thể là vấn đề. Nhưng tôi nhất định muốn có quyền tự do làm những thử nghiệm vô bổ với thiết bị mình đã mua
Nếu tôi nhớ không nhầm, một dạng mạng mesh bằng điện thoại cũng từng hữu ích với người biểu tình ở Hồng Kông
Trong ý tưởng tự host website cá nhân mà không dùng công ty hosting, tôi không hiểu vì sao nhất thiết phải là cổng 80. Cổng 80 là thứ dùng trong hosting thương mại, còn đề xuất này về bản chất khác với hosting thương mại. Tôi không hiểu rõ vì sao dùng một cổng cao đã được thống nhất lại không thể là một phương án thay thế chấp nhận được
Việc Android chưa root chặn dùng cổng 80 chỉ là một triệu chứng của vấn đề lớn hơn: không trao quyền root cho chủ sở hữu máy tính. Thay vào đó, có thể xem như các công ty quảng cáo lại nắm quyền đó
Có thể không liên quan, nhưng trên Android vẫn có thể chuyển tiếp cổng 80. Ví dụ, bằng một ứng dụng như NetGuard, có thể forward tcp/80 sang một máy tính đang chạy NetBSD. Nếu bạn là người ám ảnh với TLS thì cũng đáng thử một lần để quan sát xem có bao nhiêu lưu lượng bên ngoài không được mã hóa
Hãy làm một thí nghiệm tư duy. Nếu bạn đang kiếm lương hoặc lợi ích kinh tế nhờ kiến thức trong lĩnh vực chủ đề X, và có ai đó đề xuất dạy cho nhiều người hơn cách X hoạt động, khả năng bạn phản ứng kiểu “chẳng ai muốn biết X hoạt động như thế nào” sẽ là bao nhiêu? Vì bất cân xứng thông tin giữa người hiểu X và người không hiểu X cần được duy trì thì bạn mới tiếp tục kiếm tiền được, nên bạn sẽ muốn giữ nguyên hiện trạng
https://www.iana.org/assignments/service-names-port-numbers/...
Nghĩ thì khó chịu, nhưng website cá nhân hiện đại chính là trang hồ sơ TikTok của ai đó. Điều đó khả thi vì ai cũng có điện thoại và TikTok thì cứ thế chạy được. Có cơ hội để học từ mô hình này, nhưng tôi không rõ bài học là gì
Trong một thế giới nơi mọi người dùng đều có quyền root và gần như không có rào cản nào để “kiểm soát” thiết bị của mình, ngay cả lựa chọn “mua iPhone để tiêu thụ nội dung và mạng xã hội mà không phải lo malware” cũng trở nên khó khăn, và sẽ có nhiều người bị hại hơn. Người bình thường không biết mình cần các cơ chế an toàn do nhà sản xuất áp đặt cho đến khi một ngày làm điều ngu ngốc và bị hack
Cách sửa để tiến gần đến lý tưởng là giáo dục. Cần có các lớp học được chuẩn hóa về khả năng nhận diện lừa đảo, cách các dịch vụ thông thường vận hành, và suy luận động cơ của các tác nhân. Nhưng trong bối cảnh ngay cả Mỹ dường như cũng không quan tâm đến việc này, việc bảo đảm trên toàn cầu là cực kỳ khó
Website là một máy tính đang chạy httpd. Nó không phải “nền tảng”, cũng không phải phương tiện để gom khán giả. Những thứ đó chỉ là một số cách dùng cụ thể của việc chạy httpd, và tình cờ cũng là những cách dùng làm giàu cho các trung gian được gọi là công ty “công nghệ”; chúng không phải cách dùng duy nhất
httpd là chương trình phản hồi các yêu cầu HTTP. Có rất nhiều việc có thể làm bằng HTTP. HTTP không bị giới hạn trong các cách dùng mà các công ty được gọi là “công nghệ” đã chọn, như thu hút lượng khán giả lớn, thu thập dữ liệu hàng loạt, bán và phân phối quảng cáo theo chương trình. Ví dụ, chỉ với HTTP cũng có thể trực tiếp trao đổi file, tin nhắn, âm thanh, video và các luồng byte tùy ý với gia đình, bạn bè, đồng nghiệp mà không cần công ty trung gian
Một người ở Nhật đã cho thấy điều này: https://news.ycombinator.com/item?id=37044318
Tất nhiên những người hưởng lợi từ các công ty như vậy không muốn các cách dùng khác của HTTP được bàn đến. Nếu đó là những cách dùng không dẫn đến quảng cáo hay cách kiếm tiền của một số người nhất định, họ sẽ hạ thấp nó. Tôi đã thấy quá nhiều lập luận yếu như “chẳng ai muốn”, “tôi không muốn nên người khác cũng không muốn”, “vì thế này thế kia nên không được”, “chúng tôi đã thử rồi và thất bại”. Càng thấy phản ứng tiêu cực mạnh trên HN đối với các cách dùng web phi thương mại và không liên quan đến quảng cáo, tôi càng tin rằng những cách dùng đó không chỉ khả thi mà còn rất có cơ sở. Thời gian sẽ cho thấy bên nào khôn ngoan hơn, và hiện vẫn còn sớm
Tôi đồng cảm nhưng không đồng ý với lý do rằng “nhiều người dùng Internet không kham nổi việc host website cá nhân”. Có nhiều lựa chọn miễn phí tuyệt vời để host website. Cá nhân tôi dùng GitHub Pages, nhưng Netlify, Vercel, Glitch cũng cung cấp tier miễn phí rất tốt. Nếu chỉ muốn đăng vài bài viết lên web, WordPress.com cũng cung cấp hosting blog miễn phí
Tất cả các lựa chọn này đều là dùng dịch vụ của người khác và có thể biến mất không báo trước. Tôi hiểu có người không thích điều đó. Nhưng với tôi, pin điện thoại và độ khả dụng của site quan trọng hơn việc sở hữu toàn bộ stack
Cứ dump lưu lượng ra và xem tất cả ứng dụng đã cài đang xử lý hàng nghìn request vì dữ liệu cá nhân như thế nào là được
Việc năm 2009 nếu có Nokia thì bạn có thể chạy website cá nhân trên điện thoại của mình nhưng nó không được áp dụng rộng rãi không phải là chuyện đáng buồn, mà đơn giản là hợp lý. Ngay cả năm 2009, việc host website trên điện thoại cũng không có lý; nếu không muốn dùng dịch vụ hosting thì một chiếc desktop hoặc laptop cũ vẫn hợp lý hơn smartphone
Smartphone với vai trò máy chủ có thể hữu ích trong các tình huống gặp mặt trực tiếp khi không thể hoặc không muốn truy cập Internet. Ví dụ như mạng liên lạc khu phố khẩn cấp hoặc mua sắm P2P ở chợ trời
Tuy nhiên những trường hợp sử dụng này hiếm gặp, hoặc giá trị thực tế thường hạn chế. Sự cố Internet toàn diện thường được khắc phục nhanh, còn ở chợ trời thì chỉ cần đi quanh và xem hàng là được. Vì vậy không có nhiều tài nguyên được đổ vào việc phát triển những giải pháp như vậy
Có người nói “nhiều người dùng Internet không đủ khả năng chi trả cho hosting website cá nhân”, nhưng NearlyFreeSpeech.NET nói rằng họ “cho phép tạo website với mức tối thiểu 0,25 USD bởi những bậc thầy hosting trả theo mức dùng từ năm 2002”
Ý là một người có thể mua smartphone lại không kham nổi static hosting đơn giản sao
https://www.nearlyfreespeech.net/
Có thể có việc dịch vụ đóng cửa, tăng giá, chấm dứt tài khoản/instance, lạm dụng dữ liệu, và gần như chắc chắn một ngày nào đó về cơ bản bạn sẽ bị giữ làm con tin. Nếu muốn phản đối khả năng hosting trên thiết bị mà mọi người sở hữu, cần một lập luận tốt hơn, chỉ ra cụ thể vì sao quyền tự do đó mang tính phá hoại và có hại
Về câu “nhiều người dùng Internet không đủ khả năng chi trả cho hosting website cá nhân”, tôi không biết trên hành tinh này có dù chỉ một người muốn host website nhưng chưa làm được, và sẽ bắt đầu nếu điện thoại hỗ trợ hay không. Tôi nghĩ là không
99,99999% mọi người không muốn host thứ gì cả, và rất có thể cũng không biết web hosting là gì. Ngay cả với người muốn làm, việc mua VPS 5 USD hoặc Raspberry Pi sẽ tiết kiệm chi phí, ổn định và hiệu năng tốt hơn nhiều so với dựa vào một thiết bị và kết nối mạng không được tạo ra cho mục đích web hosting. Điện thoại có thời lượng pin hạn chế, mạng di động không ổn định, và vì mọi người chủ yếu dùng thiết bị theo cách đó nên phần lớn băng thông được phân bổ cho tải xuống
Vì vậy lý do hệ sinh thái không hỗ trợ chạy website trên thiết bị di động là: 1) đó là một ý tưởng tệ hại, 2) không có nhu cầu, và 3) có hàng trăm lựa chọn tốt hơn
Có thể thuê web server trên nhiều nền tảng với giá khoảng 5–7 USD/tháng. Có lẽ còn tốt hơn điện thoại, và chắc chắn ổn định hơn. Tôi nghĩ thứ ngăn cản mọi người không phải là tiền, mà là hầu hết mọi người không có use case để host website
Trong giấc mơ về không tưởng techno-hippie thập niên 90, ai cũng được cho là sẽ có một website cá nhân khổng lồ và độc đáo về những thứ họ tự hàn tự chế, nhưng điều đó đã không xảy ra. Hóa ra hầu hết mọi người muốn xem video người khác làm gì đó, và những thứ như vậy được host tập trung là hiệu quả nhất
Điều đó, theo tôi, giải thích gọn gàng vì sao không tưởng “mỗi con người một website cá nhân” đã không thành hiện thực. Tất nhiên vẫn có người tạo ra nội dung xuất sắc chỉ vì niềm vui thuần túy và không quan tâm liệu có ai tiêu thụ hay không, nhưng đó gần như là ngoại lệ chứ không phải cách vận hành mặc định của mọi người
Về hosting 5–7 USD/tháng thì cũng hoàn toàn đúng. Trước đây tôi từng chạy server tại nhà, nhưng rồi nhận ra tiền điện còn cao hơn chi phí thuê một VPS nhỏ. Tập trung hóa có lợi thế kinh tế nhờ quy mô rất lớn
Hosting PHP/MySQL rẻ nhất ở nước tôi là 18 USD/năm
Bài viết này không hợp lý. Về mặt kỹ thuật thì có thể làm được bằng nhiều hệ thống DNS động. Địa chỉ IPv6 không cố định vào thiết bị như địa chỉ MAC
Ngay cả nếu có thể làm được thì đó cũng sẽ là cơn ác mộng bảo mật, và nếu không muốn đặt gánh nặng điên rồ lên việc khám phá P2P liên tục trên Internet, cuối cùng vẫn sẽ phải dựa vào một hệ thống tập trung
Nếu muốn có website cá nhân thì dùng dịch vụ như neocities là được mà. Miễn phí và có thể đăng nội dung tĩnh tùy ý. Nếu không muốn tự viết trang HTML bằng tay thì có thể tạo TiddlyWiki rồi upload lên
Cách dùng Resilio Sync và TiddlyWiki dạng một file trên điện thoại cũng khá thực tế. Tôi nghĩ đa số sẽ ngạc nhiên trước những gì TiddlyWiki có thể làm. Cũng có thể dùng ratox hoặc toxic, hay một trình theo dõi file gắn với IPFS, nhưng hiệu năng hoặc mức độ sẵn dùng ngay sẽ kém hơn. Có thể tự động push theo điều kiện tùy chỉnh hoặc gửi thủ công cho người đăng ký, và cần chuyển một phần gánh nặng ra khỏi điện thoại. Sẽ còn tốt hơn nếu có seeder thường trực trong một swarm torrent có thể thay đổi. Cách này có thể khá phù hợp với rất nhiều người trên Trái Đất. Trên điện thoại thì ẩn danh khó hơn, nhưng vẫn có thể
Làm cả hai cũng hợp lý
Nếu thêm một USB phù hợp có thể boot, thì đôi khi cũng đủ dễ để đi tới một máy bất kỳ và làm việc với TiddlyWiki hoặc hạ tầng khác khi cần nhiều hơn điện thoại. Việc cố tìm cách để gần như bất kỳ ai cũng có thể tham gia “cuộc đối thoại khổng lồ” với điều kiện vật chất tối thiểu là một vấn đề đáng tôn trọng và quan trọng
Khó thực hiện vì gói dữ liệu giới hạn và vấn đề kết nối, và tất nhiên còn có vấn đề bảo mật khi mở các cổng nhận kết nối đến
Nhưng thay vì host file index.html bằng HTTP(S), nếu mọi người đều host bằng BitTorrent thì sao?
Website có thể là một tập hợp file được trỏ tới bởi một file hash DHT. Khi đó mọi người truy cập website sẽ tạm thời host và hỗ trợ site đó. Ngay cả khi một site tự host gặp hiệu ứng Slashdot/HN, việc host cũng không thất bại vì các khách truy cập mới sẽ tạm thời trở thành seeder cho file BitTorrent
https://en.wikipedia.org/wiki/Chord_%28peer-to-peer%29?wprov...