View Page Source Là Gì

Share:

Không một tệp tin JS, ko điện thoại tư vấn API, mình thắc mắc: cố văn bản nó render trường đoản cú đâu nhưng mà ra, đầy đủ nội dung mình thấy, hình hình họa mình xem từ bỏ đâu render mà lại có, vẫn liên hệ kia, KHÔNG CÓ 1 thiết bị gì quanh đó vài loại HTML "vớ vẩn"

Thử copy khu vực HTML tê về rồi chạy test thì thấy trang reload thường xuyên. Xong, không hiểu biết tại vì sao

*

Đại loại là: vì chưng code js được lưu vào bộ lưu trữ trình để ý đề xuất Twitter xoá sạch sẽ thẻ script đi mất rồi

*

Điều này minh chứng, Khi họ truy vấn vào Twitter thì nó được tmê mệt chiếu vị bao gồm nó hay nói bí quyết khác: chính là là can dự website được truy cập ngay lập tức trước trang bây giờ là twitter.com, tức là chúng ta đã sống trang twitter.com tự trước kia, tiếp đến ta lại redirect mang lại twitter.com

WTFFF, có nghĩa là bản thân truy cập gấp đôi vào twitter.com à? Nhưng mình đâu tất cả thấy điều phối gì đâu nhỉ?????

Thử chú ý sâu hơn 1 chút ít nữa Khi msinh hoạt Twitter (ko buộc phải clear cache tốt cookie gì nhé):

Xem ảnh

Nếu xem xét kĩ, ngay lập tức trên thời điểm họ truy vấn vào Twitter.com trường đoản cú tab new, trường hợp lưu ý kĩ, ta đã thấy trình chuyên chú đang load gấp đôi (không cần thiết phải cho slow motion

Ở đây hầu hết thẻ nhỏng meta xuất xắc đoạn css không đặc biệt, nghĩ về thế nên mình ko tập trung vào, còn sót lại phần lớn vị trí sau:

Thẻ noscript: thẻ này đang chạy lúc Javascript không được bật hoặc không cung ứng bên trên trình phê chuẩn, khi đó Twitter đã bảo người dùng tự bấm chuột mẫu links trong thẻ a để trường đoản cú load lại trang (từ redirect bằng tay), nhằm mục tiêu lấy refererXuống thẻ script bên dưới gồm ngôi trường nonce, xem xét thấy lúc load lại trang source này thì trường nonce thay đổi liên tục, không hiểu biết nó để triển khai gì, với đồ vật gi vẫn có tác dụng thay đổi được nó trong những lúc trang không còn tất cả tí JS nàoTiếp theo là mang lại câu lệnh chế tạo ra cookie: cookie này tên là app_shell_visited, ứng cùng với route / với có thời hạn sống là 5 giây. Thực sự đến hiện nay bản thân vẫn không hiểu nhiều được là ngôi trường này dùng để làm gì, Khi load lại check trong khoảng 5 giây cũng chẳng thấy nó đâuCâu lệnh sau cuối location.replace(location.href.split("#")<0>);, code JS chạy mang đến phía trên sẽ reload lại trình coi xét của bọn họ dựa vào liên hệ website hiện nay. Tức là trường hợp mình đang sinh hoạt twitter.com thì nó đang redirect mang lại cùng địa chỉ twitter.com. Mà như thế là redirect xong ta sẽ sở hữu được referer -> Chìa khoá trên đây rồi Demo

Chuẩn bị

Để chuẩn bị chạy thử ta chế tạo một số tệp tin dễ dàng như sau:

Các chúng ta xem code sống repository này nhé

Giải thích:

ở đây ta có 1 file login.html file này nhằm login, cùng redirect người dùng về homepage địa điểm đựng nội dung chínhindex.html với folder static: ở đây mình chạy thử luôn luôn 1 project bởi VueJS nỗ lực bởi HTML thuần đến các tín đồ. Vì hoàn toàn có thể bao gồm các bạn vướng mắc trường hợp HTML thuần thì cần cù gọi nghỉ ngơi cửa sổ Inspect là được (chả rất cần phải giấu)default.html: file này là file lúc người dùng chưa tồn tại referer đã bắt gặp, là file Khi nhưng mà user lựa chọn View Page Source vẫn thấy. Nội dung thì mình copy hệt như của Twitter luôn luôn. Mình đang xoá đi chiếc code phối cookie bằng JS vì chưng thấy nó không đề nghị thiếtServer mình làm là Nginx trên VPS Ubuntu 16.04 nhé.

Bạn đang đọc: View page source là gì

Phần thiết yếu chính là file config của Nginx. Các bạn có thể thấy mình thực hiện maps để kiểm tra quý hiếm của trở thành và gán cực hiếm cho việc đó. Mình ko dùng if do if trong Nginx được khuyên ổn tránh việc dùng, vị nó hoạt động rất có thể ko đúng chuẩn trên các trường vừa lòng. Và thiệt sự mình mất nguyên ổn một ngày cuối tuần do mắc kẹt trong vòng quanh quẩn của if . Magiống hệt vào cuối tuần được nghỉ 2 ngày cần vẫn đùa được .

Tại trong tệp tin config mình đã nỗ lực comment cụ thể nhất hoàn toàn có thể nhằm các bạn có thể hiểu, file config này cũng chưa tinh vi lắm, những bạn cũng có thể ốp vào sử dụng được ngay lập tức.

Xem thêm: Đánh Bại Thủ Lĩnh Làng Tre Dochun Sẽ Nhận Được Huy Hiệu Gì? Huy Hiệu Vệ Binh

Vì lý giải định nghĩa hầu như thiết bị vào config thì tương đối ngùng ngoằng, phần nhiều vị trí mình sử dụng trong số đó search google hoặc hiểu docs trên trang chủ Nginx đều sở hữu hết nhé . Mình nói ngắn gọn gàng bí quyết hoạt động vui chơi của nó cố này:

Ban đầu Khi user truy cập trang -> không có cookie tên là auth_token -> trả về client trang login.htmlkhi bnóng clichồng login thì có 1 đoạn code JS nghỉ ngơi tệp tin login.html các chúng ta cũng có thể coi. Mình phối cookie với reload lại trang.Hiện nay Nginx thấy sẽ bao gồm cookie cần thiết, nhưng cũng đều có referer luôn (vị vừa reload/redirect mà). phải trả về cho trang homepageNếu ta test bnóng View Page Source thì sẽ thấy trang default.html vì thời điểm kia có cookie mà lại không có referernếu như ta thử xoá cookie với load lại thì sẽ lại về login vì dịp kia ta bao gồm referer dẫu vậy không hề cookie nữa (coi nlỗi không auth)Vì vào file config ta sẽ bắt ngôi trường đúng theo user truy cập thẳng vào file .html, mặt khác Vue-router mình cũng bắt trường vừa lòng đó nữa, đề xuất ví như chúng ta chũm truy vấn vào file.html thì cũng chỉ thấy được ngôn từ trang tuỳ đóng vai trò hiện giờ (auth tốt không, có referer hay không)

Kết quả

Các bạn cũng có thể xem hiệu quả tôi đã hiện thực hoá ở chỗ này nhé, chạy thử này vẫn tồn tại ở mức lởm lởm lắm ae xem thấy tất cả gì không đúng bình luận cho bạn nhé

Website

Thử singin cùng với email bất cứ cũng được nhé , tiếp nối View page source demo coi. Sau kia tiếp lại thử clear cookie đi cùng f5 lại coi nhé.

lưu ý lúc cài đặt demo

Nếu chúng ta xem tệp tin config Nginx của bản thân mình thấy khó phát âm khi dùng bản đồ và ý muốn cụ vào đó sử dụng if thông thường cùng kết hợp với rewrite (vì chưng try_files ko dùng được bên phía trong if) thì các bạn nên cẩn trọng. Rất rất có thể sẽ xảy ra ngôi trường hợp sản phẩm công nghệ load lại vô hạn đó nhé

Đọc bài viết này từ bỏ Home Nginx để gọi hơn sao không nên sử dụng if nhé: if is evil

Kết luận

Sau 2 ngày khổng lồ không còn đầu vì chưng tính năng này thì sau cùng cũng có được 1 dòng gì đấy nhằm tiếp tục share với đa số fan.Qua phía trên mình thấy Việc bảo mật code làm sao để cho càng làm cho khó những developer thì càng ngày càng rất được ưa chuộng, cho dù sao thì che giâú càng nhiều càng giỏi cần ko . Mặc mặc dù làm thế này dẫu vậy trường hợp user đăng nhập vào twitter, lấy cookie đó tiếp nối gửi bởi postman kèm referer (dùng postman thì gửi referer theo được) thì vẫn đang thấy source. Nên mình nghĩ về cũng rất cực nhọc để ngăn ngừa được không còn các hành động của user trên trình để mắt .

Đồng thời chúng ta cũng đọc thêm được một cách tiếp cận new mà ông Khủng Twitter thực hiện (bản thân không dám chắn chắn phần đằng sau - VPS làm như thể được như họ). Chúng ta cũng thấy rằng trái đất ngoài tởm thật , suy nghĩ ra đủ thử bắt đầu cho khách hàng luôn luôn nên học tập theo .

Thôi thì cđọng đành đi bòn góp kỹ năng, tích luỹ từ từ để tăng kĩ năng của phiên bản thân nhé chúng ta đọc của mình, hứa gặp mặt lại các bạn vào các bài sau

*

Bài viết liên quan