কোনও ওয়েবসাইটের জন্য বান্ধব URL সরবরাহ করা বনাম ডাটাবেস আইডির বাস্তবতা


24

আমাদের কাছে সংস্থানগুলির একটি ডাটাবেস রয়েছে, সেগুলি পণ্য, ব্লগ পোস্ট বা কিছু। পাবলিক ওয়েবসাইটের জন্য তাদের ঠিকানা দেওয়ার জন্য আমাদের একটি ইউআরএল স্কিম তৈরি করতে হবে।

এখানে দুটি উদাহরণ যা ডাটাবেস আইডি আবদ্ধ:

বন্ধুত্বপূর্ণ একটি উদাহরণ এখানে:

(সেখানে আমার ব্রাউজিং জীবনের একটি সামান্য ঝলক)

আমি বন্ধুত্বপূর্ণ ইউআরএল পছন্দ করি যেহেতু আপনি যখন কোনও ইমেল বা নথিতে ঘোরাফেরা করেন বা দেখে থাকেন তখন ইউআরএল শেষে কী থাকে সে সম্পর্কে আপনার ধারণা রয়েছে। এটি SEO এর পক্ষে আরও ভাল, বা এটি আগেও ব্যবহৃত হত।

ডকুমেন্ট বা পণ্যটির নতুন নামকরণ করা হলে কী হয়? হয় কারণ এটি পরিবর্তিত হয়েছে (উইকি পরিবর্তন হতে পারে না তবে আমাদের সংস্থানগুলি পারে) বা টাইপোর কারণে, তাই না? আমাদের সংস্থানগুলি খুব প্রযুক্তিগত, দীর্ঘ শব্দ এবং ত্রুটির প্রবণ।

এছাড়াও, আমাদের একটি ডাটাবেস আইডি রয়েছে, যা একটি সংখ্যা। আসুন ভাড়া ভাড়ার দোকান ব্যবহার করে কোনও ভিডিওর ঠিকানার জন্য একটি ধারণাটি দেখুন:

আইডিটি সুস্পষ্ট এবং এটি ডিবি চেহারাতে ব্যবহৃত হয়। ফাইন।

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

বা যদি কেউ কেউ যত্ন করে থাকে তবে সম্ভবত এটিকে উপেক্ষা করা যেতে পারে, যাতে মানুষ সেখানে তাদের যা পছন্দ পছন্দ করে তা আটকে রাখে। সুতরাং এই URL টিও কাজ করবে:

বন্ধুত্বপূর্ণ অংশ যাচাই করার বিষয়টি উল্লেখ করা আছে, নাম পরিবর্তন বা টাইপ সংশোধন করার সমস্যা। যদি নামটি পরিবর্তিত হয় এবং আমাদের ডোমেনে যা ঘটে থাকে, আমরা সেখানে থাকা ইউআরএলগুলি ভাঙতে চাই না, তাই আমাদেরও উচিত:

  • শুধু বন্ধুত্বপূর্ণ অংশ যাচাই করবেন না।

  • যাচাই করুন, তবে ডাটাবেস রেকর্ডে বন্ধুত্বপূর্ণ অংশগুলির একটি 'ইতিহাস' যুক্ত করুন যাতে কোনও পূর্ববর্তী বন্ধুত্বপূর্ণ আইডি এখনও কাজ করে!

আপনার চিন্তাভাবনা এবং ধারণা স্বাগত।

লুক


11
এমনকি এই খুব সাইটটি একটি সংমিশ্রণ http://programmers.stackexchange.com/questions/255684/providing-friendly-urls-for-a-website-vs-realities-of-database-idsব্যবহার করে (শিরোনাম পরিবর্তনের আলোকে একটি অ-যাচাই করা সংস্করণ ব্যবহার করে, সংক্ষিপ্ত "ভাগ" লিঙ্কটিও কেবল আইডি: http://programmers.stackexchange.com/q/255684/25768(এবং ব্যাজ ট্র্যাকিংয়ের জন্য ব্যবহারকারী আইডি)
র‌্যাচেট ফ্রিক

11
আপনার ইউআরএলটিতে যদি আপনার একটি অনন্য আইডি থাকে তবে আমি স্লাগ অংশটি কেন একেবারে যাচাই করতে চাই তা দেখছি না। চেহারার জন্য এটি ব্যবহার করুন এবং এটি দেখার জন্য উপেক্ষা করুন।
Thorsten müller

আপনারা কেউ যদি যথাযথ উত্তর দিতে চান তবে আমি ভোট দেব যাতে আপনি পয়েন্টগুলি পান। আমি ভোট আসব এবং কয়েক দিনের মধ্যে সর্বাধিক ভোট দেওয়া উত্তরটি দিয়ে দেব।
লুক পুপলেট


3
স্লাগ শব্দটি আগে কখনও জানত না। আমি অবশ্যই একটি শিলা অধীন ছিল। Geddit?
লুক পুপলেট

উত্তর:


6

ইউআরএল-এ আইডি রাখা হ'ল ভবিষ্যতের প্রমাণ পদ্ধতি এবং আপনি যেমন দেখিয়েছেন, ইউআরএলগুলি এখনও তুলনামূলকভাবে ভাল দেখাচ্ছে।

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

ওয়ার্ডপ্রেস এটি করেছে এবং তাই বন্ধুত্বপূর্ণ_আইডি রত্নটি করেছে যা সম্ভবত রেলগুলির জন্য বন্ধুত্বপূর্ণ আইডস পরিচালনার জন্য সবচেয়ে বেশি ব্যবহৃত রত্ন।

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


2
এই স্লাগের ইতিহাসটি আমি বিবেচনা করছি। প্রশ্ন পোস্ট করার পর থেকে, আমি অনেক বড় বড় সাইট লক্ষ্য করেছি যেগুলির স্লাগ রয়েছে যা চেক করা হয়নি, আপনি কিছু বলতে এটি পরিবর্তন করতে পারেন। amazon.co.uk/Blah-Blah-Blah/dp/B004R276L8 কাজ করে। স্ট্যাক এক্সচেঞ্জ হ'ল চতুর কারণ এটি 'সংশোধন করে' এবং সঠিক লিঙ্কটি দেখানো এবং ভাগ করা হয়েছে তা নিশ্চিত করতে ব্রাউজারটিকে পুনঃনির্দেশ করে।
লুক পুপলেট

একটি "স্লাগ" লোকের পক্ষে কম দরকারী এবং অনুসন্ধান ইঞ্জিন অপ্টিমাইজেশনের জন্য আরও দরকারী, কারণ "স্লাগ" বা "বন্ধুত্বপূর্ণ ইউআরএল" এর পৃষ্ঠার সামগ্রীর সাথে সম্পর্কিত কীওয়ার্ড থাকতে হবে। উন্নত ব্যবহারকারীরা আপনার সাইটে বন্ধুত্বপূর্ণ ইউআরএল অন্তর্ভুক্ত করার কারণ নয়। অনুসন্ধান ইঞ্জিন র‌্যাঙ্কিংয়ের মূল কারণ হয়ে থাকে।
গ্রেগ বার্গার্ড্ট

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

1
@ লুকপুপলেট হ্যাঁ আমি বিশ্বাস করি যে এসআরএল-এর ইউআরএলগুলি নিয়ে কাজ করার পদ্ধতিটি স্লাগগুলির ক্ষেত্রে সবচেয়ে সহজ।
এমবিলার্ড

: @GregBurghardt শুধু পার্থক্য ক্লিক থ্রু রেটে হয়, ব্যবহারকারীরা বন্ধুত্বপূর্ণ URL গুলি উপর সামান্য বেশি ক্লিক করার ঝোঁক stackoverflow.com/questions/505793/...
mbillard

3

আমি অতীতে দুটি ভিন্ন দৃশ্যের ব্যবহার করেছি।

  1. /id/some-slugযেখানে অনুসন্ধান করতে ব্যবহার করা হয় , স্লাগ্ না। সুতরাং স্লাগ কিছু হতে পারে । কিন্তু, যখন স্লাগটি প্রকৃত স্লাগের সাথে মেলে না, ব্যবহারকারীকে বর্তমান সংস্করণে পুনঃনির্দেশিত করা হবে।id

  2. /permalinkএমন একটি ক্ষেত্রে যেখানে আমরা ইউআরএলটিতে আইডি চাই না বা যেখানে ইউআরএলটি কখনই পরিবর্তন করা উচিত নয়, যদিও সেখানে একটি আইডি পাওয়া যায় (দেখুন [1] এবং [2] )। অবশ্যই, এই ক্ষেত্রে লুকআপ জন্য ব্যবহার করা হয় । বর্তমান স্লাগ এবং পারমিলিংক (প্রথম স্লাগ) উভয়ই ডাটাবেজে সঞ্চিত রয়েছে।permalink

এই দুটি উপায়েই আপনার ডাটাবেসে স্লাগগুলির একটি ইতিহাস রাখা দরকার যা খুব শীঘ্রই সমস্যাযুক্ত হয়ে উঠবে।


PS: দ্বিতীয় ক্ষেত্রে আপনার সামাজিক ক্রেডিট রাখতে কিছু নির্দিষ্ট সুনির্দিষ্ট রুটিং দরকার:

  • আপনি যদি চান তবে ব্যবহারকারীদের বর্তমান (নন পারমালিঙ্ক) ইউআরএলে পুনর্নির্দেশ করুন
  • সামাজিক বোতামগুলিতে ইউআরএল হিসাবে ব্যবহার করা পারমালিঙ্ক রয়েছে
  • সর্বদা ফেসবুক ক্রলারকে পারমালিঙ্কে পুনঃনির্দেশ করুন

দেখুন [1] এবং [2] আবার।


সমস্যা হবে কেন? যদি আমি রাখি এবং আইডি এবং স্লাগ কিছু থাকে তবে দর্শনার্থী আসল পৃষ্ঠায় যাবে। এটি কি এসইওর জন্য ক্ষতিকারক হবে?
জ্ঞানরঞ্জন

আপনি স্লাগগুলির একটি ইতিহাস রাখার অর্থ? যখন কেউ এই ধরনের স্লাগটিকে পুনরায় ব্যবহার করতে চান আপনি কী করবেন? একই বা অন্য আইডি? একাধিক পুনঃনির্দেশগুলি প্রতিরোধ করতে আপনি কীভাবে ডেটাবেস এবং / অথবা কোড ডিজাইন করেন? আপনি কি মুছে ফেলার পরে অস্তিত্বটি আড়াল করতে চান এবং পূর্ববর্তী অস্তিত্বকে পুনর্নির্দেশ করছেন? এগুলি সবই অসম্ভব নয়, তবে এটি সব ধরণের প্রশ্ন উত্থাপন করে যা আমি কেবল নকশার মাধ্যমে প্রতিরোধ করি।
লোড

আমি যা বলতে চেয়েছিলাম তা হল যদি আইডিটি ইউআরএলে উপস্থিত থাকে তবে স্লাগ কী তা বিবেচনা না করেই এটি অনুরোধকৃত পৃষ্ঠায় পুনঃনির্দেশিত করা হবে। তাহলে স্লাগের ইতিহাস কিছু যায় আসে না। আমি সম্মত হই যে এটি যদিও অ্যান্ড্রয়েডের জন্য সমস্যাযুক্ত।
জ্ঞানরঞ্জন

1
আহ ঠিক আছে. আমি এই 1 ডান দৃশ্যের যোগ কি? না আপনি অন্য কিছু বোঝাতে চান?
লোড

হ্যাঁ। ঐটা ঠিক.
জ্ঞানরঞ্জন

2

ডকুমেন্ট বা পণ্যটির নতুন নামকরণ করা হলে কী হয়?

এইচটিটিপি প্রতিক্রিয়া 301 (সরানো) এই উদ্দেশ্যে ডিজাইন করা হয়েছিল। যদি কোনও ক্লায়েন্ট পুরানো ইউআরআইতে যান আপনি কেবল তাদের নতুন ইউআরআই প্রেরণ করুন এবং তারা সেটিতে পুনর্নির্দেশ করতে পারে।

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

আমি যদি সঠিকভাবে অনুসরণ করি তবে এটি হ'ল ডুপ্লিকেটিংয়ের কাজ, আপনার উত্সের জন্য একটি নাম শনাক্তকারী এবং একই ইউআরআইতে একটি আইডি উভয়ই রয়েছে। এটি কোনও উদ্দেশ্য করে না।

আপনি যদি একই নামযুক্ত একাধিক চলচ্চিত্র নিয়ে চিন্তিত হন তবে আপনি ফিল্ম সম্পর্কে অতিরিক্ত তথ্য ইউআরএলে যোগ করতে পারেন

http://vidsyeah.com/video/2000/sliding_doors
http://vidsyeah.com/video/1932/sliding_doors

অথবা

http://vidsyeah.com/video/studios/paramount/sliding_doors
http://vidsyeah.com/video/studios/warnerbros/sliding_doors

আইডি ব্যবহারে কোনও ত্রুটি নেই বলে যদি তা আপনার ডেটা মডেলটির বোধগম্য হয়, বিশেষত যদি আপনি কেবলমাত্র গোষ্ঠীভুক্ত হন তা হ'ল তারা ভিডিও।

http://vidsyeah.com/video/210232
http://vidsyeah.com/video/2342

ক্লায়েন্ট, হয় কোনও কম্পিউটার বা কোনও মানব ব্যবহারকারী প্রথমে ইউআরআই কাঠামোর উপর নির্ভরশীল না হওয়া উচিত, কোন সংস্থানটি সন্ধান করতে হবে তা নির্ধারণের জন্য তারা আপনাকে ফিরে আসা সামগ্রীর দিকে নজর দেওয়া উচিত।

একটি বুদ্ধিমান ইউআরআই সিস্টেম থাকার সাথে কোনও ভুল নেই যা কারও পক্ষে কেবল কোনও সংস্থার অবস্থানের অনুমান করা বা ভাগ করা বৈশিষ্ট্যের উপর ভিত্তি করে কাঠামোটি উপরে নেভিগেট করা সহজ করে তোলে (যেমন 2004 সালের সমস্ত চলচ্চিত্র), তবে আপনার সিস্টেমে নির্ভর করা উচিত নয় যদি আপনি আপনার ইউআরআই পরিবর্তন করেন তবে কোনও ক্লায়েন্টের ব্রেক হওয়া উচিত নয়

বা এটি অন্য কোনও উপায়ে বলতে গেলে, আপনার থেকে রাত্রে পরিবর্তন হওয়া উচিত

http://vidsyeah.com/video/studios/paramount/sliding_doors

থেকে

http://vidsyeah.com/video/12323

এবং কোনও ক্লায়েন্ট ভাঙা উচিত নয় কারণ ক্লায়েন্টদের উচিত URL গুলি নয় বিষয়বস্তুর দিকে নজর দেওয়া।


জনের উত্তরের মতো, আমি মনে করি এটি সম্পর্কে আপনার ভাবনা টুপি পরে নেই। আমি ঠিকানার ব্যবহারযোগ্যতা বাড়াতে চাই। প্রশ্নে আমার মন্তব্য দেখুন: "আমি বন্ধুত্বপূর্ণ ইউআরএলগুলি পছন্দ করি যেহেতু আপনি যখন ইউআরএল শেষে থাকবেন তখন কোনও ইমেল বা নথিতে যখন আপনি ঘোরাবেন বা এটি দেখেন তখন আপনার সম্পর্কে ধারণা থাকে SEO এটি SEO এর পক্ষে ভাল, বা এটি ব্যবহৃত হত used"
লুক পুপলেট

2
একটি 301 নিক্ষেপ করার জন্য, আমার সঠিক উত্স অনুসন্ধান করতে সক্ষম হওয়া দরকার, সুতরাং আমার একটি ইতিহাস প্রয়োজন।
লুক পুপলেট

1
আপনার একটি ইতিহাসের প্রয়োজন হবে, তবে আপনার যদি এমন কোনও সংস্থান আছে যেগুলি এমন সংস্থান যুক্ত করে যা কোনওভাবেই ভাল ধারণা।
করম্যাক মুলহাল

বন্ধুত্বপূর্ণ ইউআরআইতে কোনও সমস্যা নেই। ইউআরআই যে কোনও কিছু হতে পারে এমন স্কিমটি আমি করবো না তবে শেষে যদি তার আইডি থাকে তবে এখনও কাজ করি। এটি সত্যই কোনও সমস্যার সমাধান করে না (ব্যবহারকারীকে এখনও আইডি মনে রাখতে হবে) এবং একটি বিভ্রান্তিকর ইউআরআই স্কিম প্রবর্তন করে (ব্যবহারকারী বৈধভাবে জিজ্ঞাসা করতে পারেন কেন দুটি ভিন্ন ইউআরআই, বানান ভুল সহ একটি, একই উত্সে কেন যায়)
উত্সে যায়

1
আপনি যদি ইউআরআইতে বানান ভুল সম্পর্কে উদ্বিগ্ন হন তবে এটিকে মোকাবেলার জন্য একটি সাধারণ উপায় হ'ল 404 ত্রুটি পৃষ্ঠাতে ভুল বানানযুক্ত URL এর জন্য ইউআরআইকে প্রস্তাব দেওয়া হয়েছে। আপনি একটি শব্দ প্যাটার্ন অনুসন্ধান করতে পারেন এবং ব্যবহারকারী যা সন্ধান করছেন বলে মনে করেন তা ফিরিয়ে দিতে পারেন।
করম্যাক মুলহল

1

বিবিসি স্লাগগুলি ব্যবহার করে:

  • আলফা-সংখ্যাসূচক (সংক্ষিপ্ততার জন্য)
  • অনন্য (দেখার জন্য)
  • অ-অনুক্রমিক (যাতে অর্ডার জিনিসগুলি ডিবিতে যুক্ত করা হয় তা প্রকাশিত হয় না)

যেমন http://www.bbc.co.uk/programmes/b006mk7h

প্রতিটি পাবলিক প্রোগ্রামের একটি আইডি এবং একটি স্লাগ উভয়ই থাকে। আইডিগুলি তারপরে যথারীতি স্বতঃবৃদ্ধিযোগ্য পূর্ণসংখ্যার হতে পারে এবং ফাঁকগুলি প্রকাশ করা হয় না।


0

একটি আরামদায়ক দৃষ্টিকোণ থেকে, ইউআরআইগুলির ব্যবহারযোগ্যতা বাড়াতে একটি অনুমানযোগ্য এবং বেহায়াপন শ্রেণিবদ্ধ কাঠামো অনুসরণ করা উচিত।

এটি তাদের ভোক্তাদের দ্বারা ব্যবহার করা সহজ করে তুলবে। যদি আপনার ডেটাগুলির সম্পর্ক থাকে তবে কোনও ধরণের শ্রেণিবিন্যাস প্রয়োজন।

দেখে মনে হচ্ছে প্রকল্পটি হ'ল: \video\[name]\[id]

নামটি যদি আরও কোনও শ্রেণিবদ্ধের জন্য ব্যবহার না করা হয় তবে এটি পক্ষে ফেলা যেতে পারে \video\[id].

তবে, আপনি যদি ভিডিওগুলিকে শ্রেণিবদ্ধ করতে চান তবে নামটি কার্যকর।

উদাহরণ:

  • \ ভিডিও \ SwingingDoors \ 123
  • \ ভিডিও \ SwingingDoors \ 124
  • \ ভিডিও \ SlidingDoors \ 125
  • \ ভিডিও \ SlidingDoors \ 126

এটি অ্যাক্সেসকে কীভাবে মডেল করা হবে সে সম্পর্কে এটি সত্যিই একটি ডিজাইনের সিদ্ধান্ত।


আমি মনে করি আপনি এপিআই / সাইট তথ্য আর্কিটেকচার পিওভি থেকে এটি সম্পর্কে ভাবছেন। আমি মানব এবং এসইওকে সহায়তার জন্য উত্পন্ন বান্ধব ইউআরএল অংশটি প্রবর্তন করতে চাইছিলাম। স্পষ্টতই এটি একটি সাধারণ জিনিস এবং 'স্লাগ' নামে চলে। নামটি শ্রেণিবদ্ধের জন্য ব্যবহৃত হচ্ছে না এবং ইউআরএল এবং আমাদের সাইট / ব্র্যান্ডের সাথে আরও ভাল ইউএক্স তৈরি করতে যুক্ত করা হয়েছে (বাদ দেওয়া হয়নি)।
লুক পুপলেট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.