Chặn các trang web có / etc / hosts [trùng lặp]


2

Câu hỏi này đã có câu trả lời ở đây:

Vì vậy, tôi đã cố gắng chặn một số trang web vì lý do rõ ràng nhưng tôi vẫn có thể tiếp tục truy cập các trang web này ngay cả khi tôi được cho là đã chặn chúng.

Tôi đã chỉnh sửa /etc/hoststệp để nó trông như thế này (ví dụ là Facebook)

0.0.0.0       https://www.facebook.com
0.0.0.0       facebook.com
0.0.0.0       www.facebook.com

Tuy nhiên tôi vẫn có thể truy cập Facebook. Tôi đang làm gì sai?

EDIT: Chỉ Chrome dường như chặn trang web, mặc dù tôi vẫn có thể truy cập vào máng Safari và Firefox.

Tôi đang chạy OS X Yosemite


@Steven Vẫn có thể truy cập trang web
RandomPerson

1
@Steven 0.0.0.0 không giống với 127.0.0.1, hãy đổi nó thành 127.0.0.1 và xem nó có hoạt động không
chơi

@Steven Vẫn có thể, tôi muốn sử dụng 0.0.0.0 vì vậy tôi không phải chờ thời gian chờ. Câu hỏi là hướng tới các hệ thống unix.
RandomPerson

0.0.0.0 là một tùy chọn tốt hơn so với 127.0.0.1.
qasdfdsaq

@Steven Tôi đã cập nhật OP. Không phải là bản sao vì nó nghe tệp, chỉ trong Chrome. Tôi cũng có các trang web khác trong đó mà tôi cần phải vô hiệu hóa để truy cập vào một số tệp nhất định khi không hoạt động và kích hoạt lại chúng tại nơi làm việc. Điều đó làm việc.
RandomPerson

Câu trả lời:


2

Sử dụng như sau thay thế:

127.0.0.1      facebook.com
127.0.0.1      www.facebook.com

Địa chỉ IP 127.0.0.1 là localhost , còn gọi là local loopback, địa chỉ cho hệ thống của bạn. Bằng cách sử dụng 127.0.0.1, bạn đang nói với hệ thống của mình rằng địa chỉ IP của facebook.com là địa chỉ của chính hệ thống của bạn, khiến FaceBook không thể truy cập được, vì hệ thống sẽ lấy địa chỉ IP cho trang web từ tệp máy chủ thay vì thực hiện DNS tra cứu. Mục nhập đầu tiên bạn đặt trong tệp, https://www.facebook.com , không thuộc về nơi đó. Tệp cung cấp một cơ chế tĩnh để dịch một tên miền đủ điều kiện (FQDN) sang địa chỉ IP, do đó, chỉ nên chứa FQDN hoặc tên máy chủ có địa chỉ IP được liên kết, không phải là tiền tố của giao thức, như HTTP, HTTPS, FTP, v.v. .


Tôi đã thử điều này trước đây nhưng nó chỉ hoạt động khi sử dụng Chrome. Nếu tôi cố truy cập trang web bằng Firefox hoặc Safari, tôi vẫn có thể truy cập trang web đó
RandomPerson

1
127.0.0.1 là vô nghĩa và kém hơn so với 0.0.0.0
qasdfdsaq

1
@RandomPerson, Firefox có bộ đệm DNS riêng . Xóa bộ nhớ cache của Firefox và thử lại. Safari cũng có thể đang sử dụng một mục DNS được lưu trữ. Khởi động lại có thể sẽ xóa bất kỳ mục lưu trữ.
moonpoint

1
@moonpoint Đã khởi động lại và xóa bộ nhớ cache. Cả hai vẫn có quyền truy cập vào trang web
RandomPerson

@RandomPerson, bạn thấy gì nếu bạn ping facebook.com từ trong cửa sổ Terminal? Bạn đã đề cập rằng bạn đang sử dụng Yosemite; khi tôi thêm một mục vào / etc / hosts trên hệ thống OS X 10.8.5 (Mountain Lion), quyền truy cập đã bị chặn. Nhưng có một báo cáo về một vấn đề tương tự trên trang Apple StackExchange bởi một người nào đó đang chạy Yosemite tại OS X 10.10.1 / etc / hosts & / private / etc / hosts đang bị bỏ qua và không giải quyết - hãy xem cách khắc phục của JB Smith để chặn Facebook ở đó
moonpoint
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.