Điểm:1

Sử dụng tệp htaccess cho 410 (trang đã qua) ngăn việc sử dụng hình ảnh

lá cờ it

Tôi đang đóng cửa một trang web. Tôi đã xóa trang wordpress và trang duy nhất còn lại trong miền là trang thông báo đóng cửa trang web vĩnh viễn. URL của trang tắt máy là...

http://mydomain.co.uk/index.htm

ngoài ra còn có một thư mục chứa 4 ảnh (3x *.jpg; 1x *.gif). Những hình ảnh này là một phần của trang tắt máy. Như vậy...

http://mydomain.co.uk/images/

Khi tôi nhập URL: mydomain.co.uk - trang 'mydomain.co.uk/index.htm' hiển thị đúng với hình ảnh trong trang được hiển thị chính xác. Các hình ảnh trong trang sử dụng loại liên kết này...

<img alt="Shutdown graphic" src="images/exampleimage.jpg" border="0" height="200" width="300" />

mà hoạt động một cách chính xác.

Tuy nhiên, tôi đang cố gắng thực hiện tất cả lệnh gọi đến 'mydomain.co.uk' để chuyển hướng đến thư mục gốc và để hiển thị 'index.htm'. Vì vậy, tất cả các URL sau đây sẽ hiển thị 'index.htm'...

mydomain.co.uk
mydomain.com
mydomain.co.uk/anyfolder/
mydomain.co.uk/anyfolder/*.*

Để đạt được điều này, tôi đã thử tệp .htaccess này...

ErrorDocument 410 /index.htm
# Kích hoạt 410 Gone cho tất cả các yêu cầu của người dùng
RewriteCond %{ENV:REDIRECT_STATUS} ^$
Quy tắc viết lại ^ - [G]

Tệp .htaccess này hoạt động bình thường đối với tất cả các loại URL. Tuy nhiên, không thể hiển thị hình ảnh từ thư mục hình ảnh trong trang tắt máy.

Làm cách nào tôi có thể sửa đổi tệp .htaccess để nó cho phép hiển thị hình ảnh?

Tôi đã thử thay đổi liên kết trong thẻ để hình ảnh nằm trong thư mục gốc và cũng đặt hình ảnh vào thư mục gốc. Thật không may, tệp .htaccess vẫn ngăn việc sử dụng hình ảnh.

Có vẻ như tệp .htaccess đang ngăn việc sử dụng hình ảnh trong tệp index.htm. Nếu tôi xóa tệp .htaccess thì trang sẽ hoạt động bình thường trở lại (có hình ảnh) đối với mydomain.co.uk, nhưng không hoạt động đối với các URL khác.

Bất kỳ ý tưởng xin vui lòng?

Điểm:0
lá cờ kz

Có một vài thay đổi bạn cần thực hiện...

  1. Bạn cần cho phép truy cập không hạn chế vào hình ảnh của mình. Vì vậy, trong trường hợp của quy tắc trên, bạn cần tạo một ngoại lệ cho /hình ảnh thư mục (hay đúng hơn là bất kỳ yêu cầu nào đối với một tệp trong /hình ảnh danh mục). Hoặc tốt nhất là chỉ dành cho bốn hình ảnh mà bạn đang liên kết đến.

    • Bạn cũng có thể gửi một X-Robots-Tag: noindex Tiêu đề phản hồi HTTP để đảm bảo các công cụ tìm kiếm không cố gắng lập chỉ mục những hình ảnh này. Hoặc có thể chặn /hình ảnh thư mục trong robot.txt (trừ khi những hình ảnh này đã được lập chỉ mục trước đó và cần phải được gỡ bỏ).

    Ví dụ, ngay sau khi viết lại công cụ chỉ thị (trước quy tắc hiện tại của bạn):

    # Ngăn các hình ảnh sau bị chặn
    # (và đặt NOINDEX env var)
    RewriteCond %{REQUEST_URI} /exampleimage1\.jpg$ [OR]
    RewriteCond %{REQUEST_URI} /exampleimage2\.jpg$ [OR]
    RewriteCond %{REQUEST_URI} /exampleimage3\.jpg$ [OR]
    RewriteCond %{REQUEST_URI} /example\.gif$
    RewriteRule ^hình ảnh/. - [E=NOINDEX:1,L]
    
    # Gửi tiêu đề phản hồi HTTP "X-Robots-Tag" cho những hình ảnh này
    Bộ tiêu đề X-Robots-Tag "noindex" env=NOINDEX
    

    Ngoài ra, bạn có thể kiểm tra HTTP người giới thiệu tiêu đề khi những hình ảnh này được yêu cầu và cho phép chúng bị chặn khi người giới thiệu không phải là trang web của bạn (ví dụ: yêu cầu trực tiếp từ công cụ tìm kiếm). Tuy nhiên, điều này kém tin cậy hơn vì người giới thiệu tiêu đề không đáng tin cậy. Bạn có thể khiến những người dùng không nhìn thấy hình ảnh của bạn.

    Ví dụ: thay vì cách trên, bạn sẽ sử dụng cách sau (ví dụ.com là tên miền của bạn):

    # Cho phép truy cập vào hình ảnh khi "Người giới thiệu" là trang web hiện tại
    RewriteCond %{HTTP_REFERER} ^https?://(www\.)?example\.com(/|$) [NC]
    RewriteRule ^hình ảnh/. - [L]
    
  2. Khi bạn liên kết tới những hình ảnh này trong nguồn HTML của tài liệu lỗi, bạn cần sử dụng URL tương đối gốc (bắt đầu bằng dấu gạch chéo) hoặc URL tuyệt đối (với lược đồ + tên máy chủ), chứ không phải URL tương đối như bạn hiện đang làm. Mặt khác, khi một yêu cầu được thực hiện cho một hình ảnh ở độ sâu đường dẫn khác, vd. /foo/thanh, trình duyệt sẽ cố gắng tải hình ảnh /foo/images/exampleimage.jpg - mà không tồn tại.

    Ví dụ: sử dụng URL liên quan đến gốc:

    <img alt="Đồ họa tắt máy" src="/images/exampleimage.jpg"
    

Thay thế - Sử dụng URI dữ liệu (không có hình ảnh bên ngoài)

Ngoài ra, hãy sử dụng URI dữ liệu thay thế và nhúng hình ảnh trực tiếp vào nguồn HTML (không có hình ảnh bên ngoài). Thẩm quyền giải quyết: https://css-tricks.com/data-uris/

Photokonnexion avatar
lá cờ it
Xuất sắc! Giải pháp đầy đủ sau đây được điều chỉnh trực tiếp từ bài đăng của bạn đã hoạt động với ... 'mã số' ErrorDocument 410 /index.htm Viết LạiEngine Trên # Cho phép truy cập vào hình ảnh khi "Người giới thiệu" là trang web hiện tại RewriteCond %{HTTP_REFERER} ^https?://(www\.)?mydomain\.co.uk(/|$) [NC] RewriteRule ^hình ảnh/. - [L] # Kích hoạt 410 Gone cho tất cả các yêu cầu của người dùng RewriteCond %{ENV:REDIRECT_STATUS} ^$ Quy tắc viết lại ^ - [G] 'mã số' Tuy nhiên, nó chỉ hoạt động sau khi tôi sửa lỗi 'thư mục hình ảnh' html tân binh của mình. Tât nhiên! Cảm ơn bạn rất nhiều vì sự giúp đỡ! Lời chúc tốt nhất.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.