.Htaccess পুনর্নির্দেশের মাধ্যমে রোবটস.টি.এস.টি. এবং সাইটম্যাপ.এক্সএমএল ফাইলগুলি গতিশীল হতে পারে?


13

আমার একটি বহু ভাষা এবং মাল্টিডোমাইন সাইট রয়েছে। এটি একটি অনন্য সিএমএস ইনস্টলেশন (দ্রুপাল) এর মাধ্যমে চলে তাই আমার একক রুট ডিরেক্টরি রয়েছে। সুতরাং আমার যদি একটি স্ট্যাটিক রোবট.টিএসটিএস্ট থাকে তবে আমি কেবল যতটা জানি সেখানে কেবলমাত্র একটি একক ডোমেনের জন্য ফাইলগুলি প্রদর্শন করতে পারি।

আমি কি .htaccess এ একটি লাইন রাখতে পারি

Redirect 301 /robots.txt /robots.php

(বা সমতুল্য নির্দেশনা, এবং দয়া করে, যদি অনুমতি দেওয়া হয় তবে তা নির্দেশ করুন)

সুতরাং এটি একটি গতিশীল পিএইচপি ফাইলগুলিতে পুনঃনির্দেশ করে, যেখানে আমি বিভিন্ন অনুযায়ী কন্টেন্ট পরিবেশন করতে পারি $_SERVER['HTTP_HOST']?

এবং সাইটম্যাপ.এক্সএমএল একই প্রশ্ন , তাই আমি একটি গতিশীল সাইটম্যাপ.এফপি পরিবেশন করতে পারি যা প্রতিটি পৃথক ডোমেনের জন্য পৃথক লিঙ্কগুলি নির্দেশ করে।

.Txt এবং .xML ব্যবহার না করেই সমস্যাটি উল্লেখ করা হয়েছে যে সমস্ত ডোমেন সার্ভার কম্পিউটারে একটি একক শারীরিক ডিরেক্টরি শেয়ার করে share


উত্তর:


12

আপনি যে কোনও ফাইলকে গতিশীল করতে পারেন। এটি করার সর্বোত্তম উপায় পুনঃনির্দেশগুলির মাধ্যমে নয়, তবে পুনর্লিখনের নিয়মের মাধ্যমে।

RewriteRule ^robots\.txt$  /robots.php [L]

এইভাবে, আপনি এটি একটি গতিশীল স্ক্রিপ্ট দ্বারা শক্তি, কিন্তু URL টি পরিবর্তন হয় না। (Googlebot- এর সহ) সর্বাধিক ক্রলার জন্য পুনঃনির্দেশ অনুসরণ করবে robots.txt এর , কিন্তু কিছু ক্রলার বিভ্রান্ত হবে যদি আপনি পুনঃনির্দেশ পরিচয় দিন।

মনে রাখবেন যে আপনি এটি পিএইচপি দিয়ে পাওয়ার করলেও, আপনার রোবটস.টি.এক্সটি প্রতিটি ডোমেনের জন্য প্রতিটি ক্রলারের কাছে স্থির বলে মনে হয়। বিভিন্ন ডোমেনের জন্য, এমনকি বিভিন্ন ব্যবহারকারী এজেন্টদের জন্যও বিভিন্ন সামগ্রী পরিবেশন করা ভাল। যাইহোক, এলোমেলোভাবে বিভিন্ন সামগ্রী পরিবেশন করা, বা দিনের সময় ভিত্তিতে সত্যই অনুসন্ধান ইঞ্জিন ক্রলারগুলিকে বিভ্রান্ত করতে পারে এবং আপনার এসইওকে জগাখিচুড়ি করতে পারে।


আপনি চাইলে সাইটম্যাপগুলির নাম ঠিক আছে। আপনি সেগুলি পুনর্নির্দেশ করতে পারেন, বা একই URL এ গতিশীলভাবে পাওয়ার জন্য একটি পুনর্লিখনের নিয়ম ব্যবহার করতে পারেন। আপনি তাদের নাম মত করতে পারেন

  • সাইট-এ-sitemap.xml
  • সাইট-বি-sitemap.xml
  • সাইট-সি-sitemap.xml

তারপরে তাদের রোবটস টেক্সটে উল্লেখ করুন :

Sitemap: http://www.example.com/example-sitemap.xml

বা তাদের ওয়েবমাস্টার সরঞ্জামগুলি বা অনুসন্ধান কনসোলের মাধ্যমে ম্যানুয়ালি অনুসন্ধান ইঞ্জিনগুলিতে তাদের জমা দিন।


আপনার প্রতিক্রিয়া জন্য উভয় ধন্যবাদ। টাইপো কী হতে পারে তা সংশোধন করুন, এটি ডাব্লু 3 ডি নির্দেশিকা যা কাজ করেছিল তাই কোডটি RewriteRule ^robots\.txt$ robots.php [L]\ চিহ্ন ছাড়া হওয়া উচিত ।
সেজার

হ্যাঁ, স্ল্যাশ সহ সংস্করণটি আপনার অ্যাপাচি.কনফ ফাইলের জন্য উপযুক্ত। .Htaccess এর জন্য, আপনার এটি ছেড়ে দেওয়া দরকার। .Htaccess এর উপযুক্ত সংস্করণ অন্তর্ভুক্ত করার জন্য আমি উত্তরটি সম্পাদনা করেছি।
স্টিফেন অসটারমিলার

@ সিজার এই নির্দেশিকাটি সার্ভার কনফিগারেশনে থাকলে প্যাটার্নে স্ল্যাশ উপসর্গ (যেমন। ^/robots\.txt$) প্রয়োজন হবে, তবে হ্যাঁ, এটি প্রতিটি ডিরেক্টরি .htaccess ফাইলগুলিতে মেলে না। বিকল্পের ক্ষেত্রে স্ল্যাশ উপসর্গ (যেমন। /robots.php) এই ক্ষেত্রে isচ্ছিক।
মিঃহাইট

5

হ্যাঁ, কোনও অনুরোধ একইভাবে "গতিশীল" হতে পারে।

তবে, আপনি পুনঃনির্দেশ করবেন না (যেমন আপনার উদাহরণ কোড হিসাবে), আপনার অভ্যন্তরীণভাবে মোড_আরাইট ব্যবহার করে পুনরায় লেখা উচিত । (ড্রুপাল সম্ভবত ইতিমধ্যে যা করছে ঠিক একইভাবে।)

উদাহরণস্বরূপ, আপনার মূলের .htaccess ফাইলে:

RewriteEngine On
RewriteRule ^robots\.txt$ robots.php [L]

RewriteEngine কেবল একবার ঘটতে হবে (যদিও এটি একাধিকবার ঘটলে তা সত্যই আসে না)।

আপনাকে কেবল এটি নিশ্চিত করতে হবে যে এটি আপনার .htaccess ফাইলটিতে অন্য কোনও নির্দেশের সাথে বিরোধ নয়। সুতরাং, এটি সম্ভবত আপনার সামনের নিয়ামকের আগে অবশ্যই ফাইল শুরুর কাছাকাছি হওয়া উচিত ।


4

সাইটম্যাপ ফাইলটিকে গতিশীল করা ভাল - আপনার সাইটম্যাপগুলি স্বয়ংক্রিয়ভাবে আপডেট করার একটি ভাল উপায়।

রোবটসটিটিএসটি ফাইলটিকে গতিশীল করে তোলা (একই হোস্টের জন্য! পৃথক হোস্টের জন্য এটি করা মূলত তাদের প্রত্যেকের জন্য কেবল একটি সাধারণ রোবটস. টেক্সট ফাইল)) সমস্যার কারণ হতে পারে: প্রতিবার সাইট থেকে URL টি ক্রল করার সময় এটি ক্রল হয় না not , সুতরাং এটি ঘটতে পারে যে "ভুল" সংস্করণটি ক্যাশে হয়েছে। উদাহরণস্বরূপ, আপনি যদি ব্যবসায়ের সময় আপনার রোবটস.টি.এস.টি. ফাইলটি ব্লককে ক্রলিং করে রাখেন, তবে এটি সম্ভবত পরে ক্যাশেড হওয়া এবং একদিনের জন্য অনুসরণ করা সম্ভব - যার অর্থ কিছুই ক্রল হয় না (বা বিকল্পভাবে, ক্রলিংয়ের অনুমতি পেলে ক্যাশে থাকে)) গুগল বেশিরভাগ সাইটের জন্য প্রতিদিন একবারে রোবটস.টেক্সট ফাইল ক্রল করে।


আমি এখানে স্থির বা গতিশীল মধ্যে কোন পার্থক্য দেখতে পাচ্ছি। আমি বিভিন্ন হোস্ট অনুসারে বিভিন্ন সংস্করণ সরবরাহ করতে ডায়নামিক অংশটিও ব্যবহার করতাম, তবে হোস্টগুলি সকলেই কম্পিউটার সার্ভারে একই শারীরিক ডিরেক্টরি ভাগ করে নেয়, এটি রোবট ১.টিএসটি, রোবট ২.টিএসটি, রোবট ৩.টিএসটি (সংখ্যা) যার অর্থ আমরা কোন ডোমেনে আছি)।
সিজার

আমি মনে করি না যে এখানে গতিশীল হওয়ার অর্থ তারা প্রতিবারই বিভিন্ন সামগ্রী পরিবেশন করতে চায়। তারা কেবল এটি পিএইচপি এর মাধ্যমে পাওয়ার করতে চায় যাতে তারা পিএইচপি কোডের হোস্টের নামের ভিত্তিতে সিদ্ধান্ত নিতে পারে। আমি প্রায়শই বিভিন্ন ইউজার এজেন্টকে বিভিন্ন নিয়ম পরিবেশন করতে রোবটস.টিএক্সটি গতিশীল করি।
স্টিফেন অসটারমিলার

2
হ্যাঁ, আমি যেমনটি বলেছি, একাধিক হোস্টের জন্য এটি করা মূলত হোস্টের জন্য পৃথক রোবট. টেক্সট ফাইল রাখার মতো, যা ভাল। তবে, আমরা কখনও কখনও সাইটগুলি ডাইনামিক রোবটস.টিএসটিএক্স ফাইল ব্যবহার করে দিনের বেলা ক্রলিং নিয়ন্ত্রণের চেষ্টা করতে দেখি - যা অনেক সমস্যার কারণ হয়ে দাঁড়ায়।
জন মুয়েলার

ভাল যুক্তি. আমি আমার গ্রহণযোগ্য উত্তরটি রোবটস.টেক্সটকে খুব গতিশীল না করার সতর্কতার সাথে সম্পাদনা করেছি।
স্টিফেন অস্টেরমিলার

0

সাইটম্যাপ.এফপি তৈরি করার দরকার নেই কারণ: ১. প্রতিটি ভাষার জন্য আপনি আলাদা সাইটম্যাপ.এক্সএমএল ফাইল চালাতে পারেন এবং প্রতিটি অনুসন্ধান ইঞ্জিন কনসোলে নির্দিষ্ট করতে পারবেন। ২. সাম্প্রতিক সামগ্রী অন্তর্ভুক্ত করার জন্য স্ট্যান্ডার্ড সাইটম্যাপ ফাইলগুলিকে নিয়মিত পুনরায় লেখা যেতে পারে এবং এটি এগুলি একটিভাবে গতিশীল করে তোলে - এর জন্য। Php প্রয়োজন হয় না। স্ট্যান্ডার্ড এক্সটেনশন .xML সহ একই ফাইলটিকে পুনরায় তৈরি করতে অভ্যন্তরীণ আপডেট প্রক্রিয়া এবং ক্রোনটি আপ

সাইটম্যাপ.এক্সএমএল ফাইলগুলি স্থিতিশীল এবং কেবল আপডেটগুলি এগুলিকে গতিময় করে তোলে - এগুলি রিয়েল টাইমে আপডেট হয় না। প্রতি মিনিটে তাদের পুনরায় লেখার কারণ এটি সম্ভব, তবে এটির কোনও প্রয়োজন নেই কারণ: ১. গুগল সর্বশেষ জমা দেওয়ার পরে ১ ঘণ্টারও কম সময়ে এটি পরীক্ষা করবে না When. যখন সাইটম্যাপ ফাইলগুলি বড় হয়, তখন সেগুলি আবার লিখুন প্রায়শই সার্ভারের পারফরম্যান্স কেপুট তৈরি করে।

যখন এখানে বিশাল পরিমাণের ডেটা থাকে এবং এটি সাইটম্যাপ ফাইলটি 50 এমবি থেকে বড় করে তোলে, একাধিক সাইটম্যাপ সহ একটি সিস্টেমের প্রয়োজন। এর অর্থ হ'ল সাইটম্যাপ ২,৩ ... .xML মূল ফাইলের তালিকায় যোগ করবে, তবে এই ফাইলগুলি পুনরায় তৈরি না করা পর্যন্ত এই ফাইলগুলির বিষয়বস্তু স্থির থাকবে (উদাহরণস্বরূপ ক্রোন দ্বারা)।

আরও উল্লেখ করার জন্য, যে কোনও সার্চ ইঞ্জিন একবার ফাইলটি অ্যাক্সেস করে নিলে তা খুব দ্রুত আবার ফিরে আসবে না (যদি না এটি ম্যানুয়ালি সম্পন্ন হয়)। এটি নিশ্চিত করে যে কোনও ক্ষেত্রে সাইটম্যাপ.এফপি-র রিয়েল-টাইম আপডেট করার প্রয়োজন নেই, কারণ একটি সাধারণ সাইটম্যাপ.এক্সএমএল নিজেই গতিশীল হতে পারে, সারা দিন বা এক সপ্তাহ জুড়ে নতুন সামগ্রী দিয়ে আপডেট করা।

সাইটম্যাপ.এফপি ব্যবহার করে আমি কোনও উপকারের কথা ভাবতে পারি না। এই ফাইলগুলি ব্যবহারের জন্য আরও ভাল / যথাযথ উপায় আছে বলে এটি কোনও ভাল করবে না।


ডায়নামিকের কয়েকটি কারণ পছন্দ করা যেতে পারে: গতিশীলভাবে উত্পন্ন করার সময় সাইটম্যাপগুলি প্রচুর ডিস্কের জায়গা নেয়। সাইটম্যাপগুলি আপ টু ডেট রাখতে হবে এবং ডায়নামিক সাইটম্যাপগুলি এটি করার সহজ উপায় হতে পারে।
স্টিফেন অস্টেরমিলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.