ฉันจะไม่อนุญาตไดเรกทอรีทั้งหมดด้วย robots.txt ได้อย่างไร


19

ฉันมีสองไซต์ที่ฉันกำลังทำงานอยู่ซึ่งเป็นตะกร้าสินค้าและนักช้อปอีกคน ทั้งสองอยู่ภายใต้ชื่อโดเมนเดียวกันดังนั้นตัวอย่าง

http://example.com/first_url 
http://example.com/second_url 

URL ทั้งสองนี้มีจำนวนหน้าต่ำกว่า

http://example.com/first_url/product1
http://example.com/first_url/product2 
http://example.com/first_url/product3

http://example.com/second_url/product1
http://example.com/second_url/product2 
http://example.com/second_url/product3

ฉันจะไม่อนุญาต URL หลัก/first_urlและ/second_urlหน้าย่อยและไดเรกทอรีย่อยทั้งหมดได้อย่างไร ฉันกำลังคิดแบบนี้ แต่ฉันไม่รู้ว่ามันใช้งานได้หรือไม่และมันเป็นไวยากรณ์ที่ถูกต้องหรือไม่

Disallow: /first_url/*/
Disallow: /second_url/*/

1
ฉันคิดว่าไวยากรณ์ของคุณถูกต้อง แต่ไม่แน่ใจเกี่ยวกับส่วนเสริม /

คำตอบ:


26

คุณไม่จำเป็นต้องใช้เครื่องหมายทับเพื่อป้องกันไดเรกทอรีเหล่านั้น สิ่งนี้จะได้ผล:

Disallow: /first_url/*
Disallow: /second_url/*

นี้หน้าความช่วยเหลือของ Googleครอบคลุมนี้ค่อนข้างดี


7
คุณสามารถทำ "ไม่อนุญาต: / first_url" อักขระตัวแทนต่อท้ายจะถูกละเว้น ตามdevelopers.google.com/webmasters/control-crawl-index/docs/…
Evgenii

คุณต้องไม่อนุญาต: / url / * เพื่อจับคู่สิ่งต่าง ๆ เช่นexample.com/url/test?test=1
Gareth Daine

-1

คุณสามารถใช้สิ่งนี้เป็นค่าเริ่มต้นของคุณrobots.txt:

User-agent: *
Disallow: first_url/*
Disallow: second_url/*

ดาวจะทำให้ทุกอย่างภายใต้หมวดหมู่นั้นไม่ได้รับอนุญาต คุณสามารถไม่อนุญาตสิ่งใดสิ่งหนึ่งภายใต้หมวดหมู่นั้นโดยพิมพ์ URL เฉพาะนั้น


4
นี่ไม่แตกต่างจากคำตอบที่ยอมรับอื่นที่ไม่ใช่สแลชเริ่มต้น ไม่อนุญาตกฎใน robots.txt ทุกคนควรเริ่มต้นด้วยเครื่องหมายทับ นั่นคือตัวอย่างทั้งหมดที่อยู่ในเอกสารประกอบ
Stephen Ostermiller
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.