Robots Txt Eklentisi
Amaç
Derlemeler sırasında dist/ dizininde bir robots.txt dosyası oluşturur, web tarayıcısı erişim kurallarını yapılandırır ve site haritasına bağlanır.
Konum
- Paket:
@shevky/plugin-robots-txt - Ana:
plugin-robots-txt/main.js - Çalışma zamanı adı:
shevky-robots-txt
Keşif ve Kayıt
site.json -> plugins'de "@shevky/plugin-robots-txt" olarak listelenmiştir. PluginRegistry.load() tarafından yüklendi. load() başlatıcı yok.
Yaşam Döngüsü Kancaları
| Kanca | Uygulandı |
|---|---|
dist:clean | ✓ |
assets:copy | - |
content:load | - |
content:ready | - |
page:meta | - |
Nasıl Çalışır?
dist:clean sırasında işleyici:
ctx.config.identity.urlokur ve temel URL'nin sonundaki eğik çizgileri çıkarır.ctx.config.robots.allowvectx.config.robots.disallowdizilerini okur.User-agent: *,Allow:,Disallow:direktiflerini içeren bir metin dosyası oluşturur.Sitemap: {baseUrl}/sitemap.xmleklenir.ctx.file.write()aracılığıyladist/robots.txt'ye yazar.
Yapılandırma
site.json'den robots bölümünü kullanır:
"robots": {
"allow": ["/"],
"disallow": ["/draft/"]
}pluginConfigs'da eklentiye özel yapılandırma yok - doğrudan global robots yapılandırma bölümünden okunur.
Bağımlılıklar
- Yalnızca
@shevky/base. Dış bağımlılık yok.
Riskler ve Sınırlamalar
- Sabit kodlu site haritası yolu: Her zaman
sitemap.xml'ye başvurur. Site haritası eklentisi farklı bir dosya adı kullanıyorsa referans yanlış olacaktır. - Doğrulama yok: İzin verme/izin vermeme yollarının iyi biçimlendirilmiş olup olmadığını kontrol etmez.
- Tek Kullanıcı aracısı: Yalnızca
User-agent: *için kurallar oluşturur.