में पुनरारंभ नहीं होता है, मैं सरल ब्लॉग सिस्टम बनाने के लिए उल्का का उपयोग कर रहा हूं। साइटमैप फ़ाइलों के लिए मैं this पैकेज का उपयोग कर रहा हूं।साइटमैप तब तक नहीं बनाया गया जब तक सर्वर उल्का
मैं कुछ सर्वर स्टार्टअप समारोह (कुछ पोस्ट बनाने) में डेटा को प्रारंभ और (प्रथम श्रेणी और आदि के लिए जैसे sitemap1.xml) सर्वर में कोड (सर्वर/sitemaps.js) नीचे का इस्तेमाल किया प्रत्येक श्रेणी के लिए साइटमैप बनाने के लिए जोड़ा :
function sitemapOutput(categoryName){
var out = [], posts = Posts.find({ category: categoryName }).fetch();
_.each(posts, function(post) {
out.push({
page: post.url(),
lastmod: post.insertDate,
changefreq: 'weekly'
});
});
return out;
}
Categories.find().forEach(function(Category, index) {
sitemaps.add('/sitemap' + (index+1) +'.xml',
function(){ return sitemapOutput(Category.name); });
});
और मैं इस तरह प्रारंभ करेंगे तो है: (सर्वर/startup.js)
Meteor.startup(function() {
// some post and category created here
});
लेकिन साइटमैप सर्वर को पुनः आरंभ जब तक अस्तित्व में नहीं था मेरी robots.t (xt फ़ाइलें भी खाली) लेकिन जब सर्वर ने मेरे लिए बनाई गई साइटमैप और robots.txt सामग्री को पुनरारंभ किया।
मुझे लगता है कि sitemaps.js के बाद पोस्ट डाले गए हैं लेकिन समस्या क्या है और इसे कैसे ठीक किया जाए?
नई कोशिश:
मैं नीचे की तरह नए समाधान की कोशिश लेकिन इस कोड को भी काम नहीं किया। (मैं अलग साइटमैप फ़ाइल बनाने के लिए प्रत्येक 10000 वर्ग बड़ा साइटमैप और गूगल साइटमैप त्रुटि को रोकने के लिए के लिए चाहते हैं):
for (var i=0;i<=Math.round(Categories.find().count()/10000);i++) {
sitemaps.add('/sitemap' + i +'.xml', function(){
var out = [];
Categories.find({}, {sort: {insertDate: 1} ,limit: 10000, skip: i * 10000}).forEach(function(Category) {
out.push({
page: "/category/" + Category.title + "/" + Category._id,
lastmod: Category.insertDate,
changefreq: 'weekly'
});
});
return out;
});
}
robots.txt शो साइटमैप फ़ाइलों को सही ढंग लेकिन सभी साइटमैप इस तरह खाली है:
<urlset> </urlset>
sitemaps.add() कब चलाता है? मुझे लगता है कि यह सर्वर पुनरारंभ पर करता है लेकिन नया प्रयास मुझे निराश करता था और मुझे लगता है कि मेरा अनुमान गलत है और यदि sitemaps.add() चलाया गया था तो यह खाली क्यों है।
आपकी फ़ोल्डर संरचना कैसी है? – forallepsilon
मैंने प्रश्न में वर्णित किया। मेरे पास सर्वर फ़ोल्डर – b24