উত্তর:
সাধারণভাবে, আপেক্ষিক ইউআরএলগুলি ব্যবহার করা এটি সর্বোত্তম অনুশীলন হিসাবে বিবেচিত হয়, যাতে আপনার ওয়েবসাইটটি বর্তমানে এটি কোথায় স্থাপন করা হয়েছে তার বেস ইউআরএলকে আবদ্ধ করা যাবে না। উদাহরণস্বরূপ, এটি লোকালহোস্টে পাশাপাশি আপনার পাবলিক ডোমেনে কোনও পরিবর্তন ছাড়াই কাজ করতে সক্ষম হবে।
যদি নিখুঁত ইউআরএল দ্বারা আপনার অর্থ স্কিম (উদাহরণস্বরূপ http / https) এবং হোস্টনাম (যেমন আপনারডোমেন.কম) সহ এমন ইউআরএল কখনও না করে (স্থানীয় সংস্থাগুলির জন্য) কারণ এটি বজায় রাখা এবং ডিবাগ করা ভয়ানক হবে।
আসুন ধরা যাক আপনি আপনার কোডের মতো সর্বত্র URL টি ব্যবহার করেছেন <img src="http://yourdomain.com/images/example.png">
। এখন আপনি যখন যাবেন তখন কি হবে:
প্রথম উদাহরণে যা ঘটবে তা হ'ল আপনি পৃষ্ঠাটিতে অনিরাপদ বিষয়বস্তুর অনুরোধ করা সম্পর্কে সতর্কতা পাবেন। কারণ আপনার সমস্ত ইউআরএল পোস্ট (: //yourdomain.com/images/example.png) ব্যবহার করা হার্ডকোডযুক্ত। এবং আপনার পৃষ্ঠাগুলি https এ চালানোর সময় ব্রাউজারটি তথ্য ফাঁস রোধে https এর উপর সমস্ত সংস্থান লোড হবে বলে আশা করে।
দ্বিতীয় উদাহরণে যখন আপনার সাইটটিকে পরীক্ষার পরিবেশ থেকে সরাসরি রাখার অর্থ এটি হবে যে সমস্ত সংস্থান এখনও আপনার লাইভ ডোমেনের পরিবর্তে আপনার পরীক্ষার ডোমেনের দিকে ইঙ্গিত করছে।
সুতরাং নিখুঁত বা আপেক্ষিক ইউআরএল ব্যবহার করবেন কিনা সে সম্পর্কে আপনার প্রশ্নের উত্তর দিতে: সর্বদা আপেক্ষিক ইউআরএল (স্থানীয় সংস্থার জন্য) ব্যবহার করুন।
প্রথমে আমরা ব্যবহার করতে পারি এমন বিভিন্ন ধরণের ইউআরএল একবার দেখে নেওয়া যাক:
http://yourdomain.com/images/example.png
//yourdomain.com/images/example.png
/images/example.png
images/example.png
নীচের উদাহরণগুলিতে আমি ধরে নিয়েছি যে সার্ভারে নিম্নলিখিত অবস্থান থেকে ওয়েবসাইটটি চলছে /var/www/mywebsite
।
http://yourdomain.com/images/example.png
উপরের (পরম) URL টি সংস্থানটি অ্যাক্সেস করার চেষ্টা করে /var/www/website/images/example.png
। এই ধরণের ইউআরএল এমন একটি বিষয় যা আপনি নিজের ওয়েবসাইট থেকে উত্সের অনুরোধের জন্য উপরে বর্ণিত কারণের জন্য সর্বদা এড়াতে চান। তবে এটির জায়গা আছে। উদাহরণস্বরূপ, যদি আপনার কোনও ওয়েবসাইট থাকে http://yourdomain.com
এবং আপনি যদি কোনও বাইরের ডোমেন থেকে HTTP- র মাধ্যমে কোনও সংস্থার অনুরোধ করতে চান তবে আপনার এটি ব্যবহার করা উচিত। যেমন https://externalsite.com/path/to/image.png
।
//yourdomain.com/images/example.png
এই ইউআরএলটি ব্যবহৃত বর্তমান স্কিমের ভিত্তিতে আপেক্ষিক এবং বহিরাগত সংস্থানগুলি (চিত্র, জাভাস্ক্রিপ্ট ইত্যাদি) অন্তর্ভুক্ত করার সময় প্রায় ব্যবহার করা উচিত।
এই ধরণের ইউআরএল যা করে তা হ'ল এটির পৃষ্ঠার বর্তমান স্কিমটি ব্যবহার করা। এর অর্থ হল আপনি পৃষ্ঠায় আছেন http://yourdomain.com
এবং সেই পৃষ্ঠায় একটি চিত্র ট্যাগ <img src="//yourdomain.com/images/example.png">
যা চিত্রটির URL টি সমাধান করবে http://yourdomain.com/images/example.png
।
আপনি যখন পৃষ্ঠায় থাকতেনhttp**s**://yourdomain.com
এবং সেই পৃষ্ঠায় কোনও চিত্র ট্যাগ থাকে <img src="//yourdomain.com/images/example.png">
তখন চিত্রটির URL টি সমাধান হয়ে যায় https://yourdomain.com/images/example.png
।
এটি যখন প্রয়োজন হয় না তখন https- র মাধ্যমে সংস্থানগুলি লোড করা রোধ করে এবং স্বয়ংক্রিয়ভাবে নিশ্চিত হয়ে যায় যে এটি যখন প্রয়োজন হয় তখন https এর মাধ্যমে সংস্থানটি অনুরোধ করা হয় ।
উপরের ইউআরএলটি পূর্ববর্তী ইউআরএলটির মতো সার্ভারে একই পদ্ধতিতে সমাধান হয়:
উপরের (পরম) URL টি সংস্থানটি অ্যাক্সেস করার চেষ্টা করে
/var/www/website/images/example.png
।
/images/example.png
স্থানীয় সংস্থাগুলির জন্য এটি তাদের উল্লেখের পছন্দসই উপায়। এটি /var/www/mywebsite
আপনার ওয়েবসাইটের নথির মূল ( ) এর উপর ভিত্তি করে একটি আপেক্ষিক URL URL এর অর্থ যখন আপনার কাছে <img src="/images/example.png">
থাকবে তখন সর্বদা এটি সমাধান হবে /var/www/mywebsite/images/example.png
।
যদি আপনি কোনও পর্যায়ে ডোমেন স্যুইচ করার সিদ্ধান্ত নেন তবে এটি এখনও কাজ করবে কারণ এটি আপেক্ষিক।
images/example.png
এটি আগের তুলনায় কিছুটা আলাদা হলেও এটি একটি সম্পর্কিত ইউআরএল। এই URL টি বর্তমান পথের তুলনায় relative এর অর্থ হ'ল আপনি সাইটে কোথায় আছেন তার উপর নির্ভর করে এটি বিভিন্ন পাথের সমাধান করবে।
উদাহরণস্বরূপ আপনি যখন পৃষ্ঠায় আছেন http://yourdomain.com
এবং আপনি যখন <img src="images/example.png">
এটি ব্যবহার করেন এটি সার্ভারে /var/www/mywebsite/images/example.png
প্রত্যাশিতভাবে সমাধান হয়ে যায় তবে আপনার পৃষ্ঠাতে থাকা অবস্থায় http://yourdomain.com/some/path
এবং আপনি ঠিক একই চিত্র ট্যাগটি ব্যবহার করলে হঠাৎ এটি সমাধান হয়ে যাবে /var/www/mywebsite/some/path/images/example.png
।
বাহ্যিক সংস্থানগুলির জন্য অনুরোধ করার সময় আপনি সম্ভবত স্কিমের সাথে সম্পর্কিত কোনও ইউআরএল ব্যবহার করতে চান (যদি না আপনি কোনও ভিন্ন স্কিম চাপাতে চান) এবং স্থানীয় সংস্থানগুলির সাথে ডিল করার সময় আপনি নথির মূলের উপর ভিত্তি করে আপেক্ষিক ইউআরএল ব্যবহার করতে চান।
একটি উদাহরণ নথি:
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<link href='//fonts.googleapis.com/css?family=Lato:300italic,700italic,300,700' rel='stylesheet' type='text/css'>
<link href="/style/style.css" rel="stylesheet" type="text/css" media="screen"></style>
</head>
<body>
<img src="/images/some/localimage.png" alt="">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
</body>
</html>
এটি দেখুন: http://en.wikedia.org/wiki/URI_scheme# জেনেরিক_সাইন্টাক্স
foo://username:password@example.com:8042/over/there/index.dtb;type=animal?name=ferret#nose
\ / \________________/\_________/ \__/ \___/ \_/ \_________/ \_________/ \__/
| | | | | | | | |
| userinfo hostname port | | parameter query fragment
| \_______________________________/ \_____________|____|____________/
scheme | | | |
| authority |path|
| | |
| path interpretable as filename
| ___________|____________ |
/ \ / \ |
urn:example:animal:ferret:nose interpretable as extension
একটি পরম ইউআরএলে "পথ" অংশের আগে অংশগুলি অন্তর্ভুক্ত থাকে - অন্য কথায় এটিতে স্কিম ( http
ইন http://foo/bar/baz
) এবং হোস্টনাম অন্তর্ভুক্ত থাকে ( foo
ইনhttp://foo/bar/baz
) (এবং optionচ্ছিকভাবে পোর্ট, ইউজারিনফো এবং পোর্ট) অন্তর্ভুক্ত থাকে।
আপেক্ষিক url একটি পথ দিয়ে শুরু।
নিখুঁত ইউআরএলগুলি হ'ল ভাল, নিরঙ্কুশ: কেবলমাত্র ইউআরএলটি দেখলে উত্সের অবস্থানটি সমাধান করা যায়। আপেক্ষিক ইউআরএল একটি অর্থে অসম্পূর্ণ: এটি সমাধানের জন্য আপনার স্কিম এবং হোস্টনাম প্রয়োজন এবং এগুলি সাধারণত বর্তমান প্রসঙ্গে নেওয়া হয়। উদাহরণস্বরূপ, একটি ওয়েব পৃষ্ঠায়
http://myhost/mypath/myresource1.html
আপনি যেমন একটি লিঙ্ক রাখতে পারে
<a href="pages/page1">click me</a>
ইন href
লিংক গুণ, একটি আপেক্ষিক URL ব্যবহার s, এবং যদি এটা ক্লিক করা হয়, এটা যাতে এটা অনুসরণ করার জন্য সমাধান করা হবে। এই ক্ষেত্রে, বর্তমান প্রেক্ষাপট হয়
http://myhost/mypath/myresource1.html
সুতরাং এগুলির স্কিমা, হোস্টনাম, এবং নেতৃস্থানীয় পাথ নেওয়া হয় এবং pages/page1
ফলন করা যায় prep
http://myhost/mypath/pages/page1
লিঙ্কটি যদি হত:
<a href="/pages/page1">click me</a>
(ইউআরএলের /
শুরুতে উপস্থিত হওয়া দ্রষ্টব্য ) তবে এটির মতো সমাধান করা হত
http://myhost/pages/page1
কারণ অগ্রণী /
হোস্টের মূলকে নির্দেশ করে।
ওয়েব অ্যাপ্লিকেশনটিতে, আমি আপনার অ্যাপ্লিকেশনটির সাথে সম্পর্কিত সমস্ত সংস্থার জন্য আপেক্ষিক url ব্যবহার করার পরামর্শ দেব। এইভাবে, আপনি যদি পৃষ্ঠাগুলির অবস্থান পরিবর্তন করেন তবে সবকিছু কাজ চালিয়ে যাবে। যে কোনও বাহ্যিক সংস্থান (আপনার অ্যাপ্লিকেশনটির বাইরে সম্পূর্ণরূপে পৃষ্ঠাগুলি হতে পারে, তবে একটি স্থিতিশীল সামগ্রী যা আপনি একটি সামগ্রী বিতরণ নেটওয়ার্কের মাধ্যমে বিতরণ করেন) সর্বদা নিখুঁত ইউআরএলগুলি ব্যবহার করে দেখানো উচিত: আপনি যদি সেখানে না থাকেন তবে সেগুলি সনাক্ত করার কোনও উপায় নেই, কারণ তারা একটি ভিন্ন সার্ভারে থাকা।
//example.com/…
, ?foobar
এবং #foobar
আপেক্ষিক ইউআরএল এবং ইউআরএল পথ দিয়ে শুরু করবেন না (ভাল ঠিক আছে, ?foobar
আপনি বলতে পারেন যে এটি খালি পথ দিয়ে শুরু হয় )।
//example.com/…
ইউআরএলগুলিকে আপেক্ষিক বলা হয়? এটা আমার কাছে নতুন
ধরুন আমরা একটি সাবসিট তৈরি করছি যার ফাইলগুলি http://site.ru/shop ফোল্ডারে রয়েছে ।
Link to home page
href="http://sites.ru/shop/"
Link to the product page
href="http://sites.ru/shop/t-shirts/t-shirt-life-is-good/"
Link from home page to product page
href="t-shirts/t-shirt-life-is-good/"
Link from product page to home page
href="../../"
যদিও আপেক্ষিক ইউআরএল নিখুঁত একের চেয়ে কম দেখায় তবে নিখুঁত URL গুলি আরও বেশি পছন্দনীয়, যেহেতু কোনও লিঙ্ক সাইটের কোনও পৃষ্ঠায় অপরিবর্তিতভাবে ব্যবহার করা যেতে পারে।
আমরা দুটি চরম কেস বিবেচনা করেছি: "একেবারে" পরম এবং "একেবারে" আপেক্ষিক ইউআরএল। তবে সবকিছুই এই পৃথিবীতে আপেক্ষিক। এটি ইউআরএলগুলিতেও প্রযোজ্য। প্রতিবার আপনি নিখুঁত ইউআরএল সম্পর্কে বলার পরে, আপনাকে সর্বদা কী সম্পর্কিত তা নির্দিষ্ট করা উচিত।
Link to home page
href="//sites.ru/shop/"
Link to product page
href="//sites.ru/shop/t-shirts/t-shirt-life-is-good/"
গুগল এই জাতীয় ইউআরএল প্রস্তাব দেয়। এখন, তবে সাধারণত এটি বিবেচনা করা হয় যে http: // এবং https: // বিভিন্ন সাইট।
অর্থাৎ ডোমেনের মূল ফোল্ডারের সাথে সম্পর্কিত।
Link to home page
href="/shop/"
Link to product page
href="/shop/t-shirts/t-shirt-life-is-good/"
সমস্ত পৃষ্ঠা একই ডোমেনের মধ্যে থাকলে এটি একটি ভাল পছন্দ choice আপনি যখন অন্য কোনও ডোমেইনে আপনার সাইটটি সরান, আপনাকে ইউআরএলগুলিতে ডোমেন নামের একটি ভর প্রতিস্থাপন করতে হবে না।
<base> ট্যাগটি বেস URL টি নির্দিষ্ট করে, যা সমস্ত সম্পর্কিত লিঙ্ক এবং অ্যাঙ্করগুলিতে স্বয়ংক্রিয়ভাবে যুক্ত হয়। বেস ট্যাগ নিখুঁত লিঙ্কগুলিকে প্রভাবিত করে না। একটি বেস URL হিসাবে আমরা হোম পৃষ্ঠাটি নির্দিষ্ট করব: <বেস href = "http://sites.ru/shop/">।
Link to home page
href=""
Link to product page
href="t-shirts/t-shirt-life-is-good/"
এখন আপনি নিজের সাইটটি কেবল কোনও ডোমেনেই নয়, যে কোনও সাবফোল্ডারে স্থানান্তর করতে পারেন। কেবল মনে রাখবেন, যদিও ইউআরএলগুলি আপেক্ষিকের মতো দেখায়, বাস্তবে সেগুলি পরম। বিশেষত অ্যাঙ্করগুলিতে মনোযোগ দিন। বর্তমান পৃষ্ঠায় নেভিগেট করতে আমাদের লিখতে হবে href = "টি-শার্ট / টি-শার্ট-লাইফ-ইজ-ভাল / # মন্তব্য" না href = "# মন্তব্য"। পরেরটি হোম পৃষ্ঠায় নিক্ষেপ করবে।
অভ্যন্তরীণ লিঙ্কগুলির জন্য আমি বেস-আপেক্ষিক ইউআরএল (5) ব্যবহার করি। বাহ্যিক লিঙ্ক এবং নিউজলেটারগুলির জন্য আমি নিখুঁত ইউআরএল (1) ব্যবহার করি।
সত্যিই তিন ধরণের রয়েছে যা স্পষ্টভাবে আলোচনা করা উচিত। অনুশীলনে যদিও ইউআরএলগুলি নিম্ন স্তরে পরিচালনা করতে বিমূর্ত করা হয়েছে এবং আমি যতদূর বলতে পারি যে বিকাশকারীরা হাতছাড়া কোনও ইউআরএল না লিখে তাদের পুরো জীবনযাপন করতে পারে।
নিখুঁত URL গুলি আপনার কোডটিকে প্রোটোকল এবং ডোমেনে বেঁধে দেয়। এটি গতিশীল URL গুলো দিয়ে কাটিয়ে উঠতে পারে।
<a href=“https://dev.example.com/a.html?q=”>https://dev.example.com/a.html?q=</a>
সম্পূর্ণ পেশাদার:
নিয়ন্ত্রণ - সাবডোমেন এবং প্রোটোকল নিয়ন্ত্রণ করা যায়। অস্পষ্ট সাবডোমেনের মধ্য দিয়ে প্রবেশ করা লোকেরা সঠিক সাবডোমেনের মধ্যে ফানেল করা হবে। আপনি যথাযথ হিসাবে সুরক্ষিত এবং অন-সুরক্ষার মধ্যে পিছনে পিছনে হাঁপতে পারেন।
কনফিগারযোগ্য - বিকাশকারীরা নিখুঁত হতে জিনিস পছন্দ করে। পরম ইউআরএল ব্যবহার করার সময় আপনি ঝরঝরে অ্যালগরিদম ডিজাইন করতে পারেন। ইউআরএলগুলি কনফিগারযোগ্য তৈরি করা যায় যাতে কোনও একক কনফিগারেশনের ফাইলে একক পরিবর্তনের সাথে URL- কে সাইট-ওয়াইড আপডেট করা যায়।
দাবী - আপনি আপনার সাইটটি স্ক্র্যাপ করছে এমন লোকদের জন্য অনুসন্ধান করতে পারেন বা কিছু অতিরিক্ত বাহ্যিক লিঙ্ক নিতে পারেন।
রুট রিলেটিভ ইউআরএলগুলি আপনার কোডটি বেস url এ টাই করে। ডায়নামিক ইউআরএল এবং / অথবা বেস ট্যাগের সাহায্যে এটি কাটিয়ে উঠতে পারে ।
<a href=“/index.php?q=”>.example.com/index.php?q=</a>
রুট রিলেটিভ পেশাদার:
সম্পর্কিত URL গুলি আপনার কোডটিকে ডিরেক্টরি কাঠামোর সাথে বেঁধে রাখে। এটি কাটিয়ে ওঠার কোনও উপায় নেই। সম্পর্কিত ইউআরএলগুলি কেবল ফাইল সিস্টেমগুলিতে ট্র্যাভারিং ডিরেক্টরিগুলির জন্য বা কোনও মেনাল টাস্কের শর্টকাট হিসাবে কার্যকর।
<a href=“index.php?q=”>index.php?q=</a>
<link src=“../.././../css/default.css” />
সম্পর্কিত কনস:
বিশ্বাস - এটি কতটি বিন্দু? এটা কত ফোল্ডার? ফাইলটি কোথায়? কেন এটি কাজ করছে না?
রক্ষণাবেক্ষণ - যদি কোনও ফাইল দুর্ঘটনাক্রমে সংস্থানগুলি লোড করা ছেড়ে দেয়, লিঙ্কগুলি ব্যবহারকারীকে ভুল পৃষ্ঠায় প্রেরণ করে, ফর্ম ডেটা ভুল পৃষ্ঠায় প্রেরণ করা হতে পারে। কোনও ফাইল যদি লোডিং ছাড়তে চলেছে এমন সমস্ত সংস্থান এবং যে লিঙ্কগুলি ভুল হতে চলেছে সেগুলি আপডেট করা দরকার need
স্কেল না করে - যখন ওয়েবপৃষ্ঠাগুলি আরও জটিল হয়ে যায় এবং একাধিক পৃষ্ঠাগুলিতে ভিউগুলি পুনরায় ব্যবহার করা শুরু করে তখন সম্পর্কিত লিঙ্কগুলি যে ফাইলটিতে অন্তর্ভুক্ত করা হয়েছিল সেটির সাথে সম্পর্কিত হবে। আপনার যদি প্রতিটি পৃষ্ঠায় এইচটিএমএলটির নেভিগেশন স্নিপেট থাকে তবে আপেক্ষিকটি বিভিন্ন জায়গার তুলনায় অনেক বেশি আপেক্ষিক হবে। লোকেরা যখন টেম্পলেট তৈরি করা শুরু করে তখন তারা যে জিনিসটি বুঝতে পারে তা হ'ল ইউআরএলগুলি পরিচালনা করার জন্য তাদের একটি উপায় প্রয়োজন।
নিখুঁত - এগুলি আপনার ব্রাউজার দ্বারা প্রয়োগ করা হয়েছে (আশা করি আরএফসি অনুসারে)। আরএফসি 3986 এ অধ্যায় 5 দেখুন ।
ওহো! - ত্রুটি বা টাইপগুলি মাকড়সার জাল পেতে পারে।
বিকাশকারীরা এখানে আলোচনা করা অর্থে ইউআরএল লেখা বন্ধ করে দিয়েছে। সমস্ত অনুরোধগুলি একটি ওয়েবসাইটের সূচী ফাইলের জন্য এবং একটি ক্যোয়ারী স্ট্রিং, যার মধ্যে একটি রুট রয়েছে। রুটটি একটি মিনি ইউআরএল হিসাবে ভাবা যেতে পারে যা আপনার অ্যাপ্লিকেশনটিকে সামগ্রীটি উত্পন্ন করতে বলে।
<a href="<?=Route::url('named_url', array('first' => 'my', 'last' => 'whacky'))?>">
http://dev.example.com/index.php/my:whacky:url
</a>
রুটস প্রো:
বেশিরভাগ লোক তাদের প্রকল্পগুলিতে তিনটি ফর্ম কোনও না কোনও উপায়ে ব্যবহার করবেন। মূল বিষয়গুলি তাদের বোঝা এবং কাজের জন্য সবচেয়ে উপযুক্ত একটিকে বেছে নেওয়া।
যদি এটি আপনার ওয়েবসাইটের মধ্যে ব্যবহারের জন্য হয় তবে আপেক্ষিক ইউআরএল ব্যবহার করার জন্য এটি ভাল অনুশীলন, যদি আপনি ওয়েবসাইটটি অন্য কোনও ডোমেন নামে স্থানান্তর করতে চান বা কেবল স্থানীয়ভাবে ডিবাগ করতে পারেন তবে আপনি এটি করতে পারেন।
স্ট্যাকওভারফ্লো কী করছে তা একবার দেখুন (ফায়ারফক্সে সিআরটিএল + ইউ):
<a href="/users/recent/90691"> // Link to an internal element
কিছু ক্ষেত্রে তারা নিখুঁত url ব্যবহার করে:
<link rel="stylesheet" href="http://sstatic.net/so/all.css?v=5934">
... তবে গতি বাড়ানোর জন্য এটি কেবল সেরা অনুশীলন। আপনার ক্ষেত্রে, দেখে মনে হচ্ছে আপনি এমন কিছু করছেন না তাই আমি এটি নিয়ে চিন্তা করব না।
আমি এখানে বেশিরভাগের সাথে একমত হতে চলেছি।
আমি মনে করি আপেক্ষিক ইউআরএল স্কিমটি "জরিমানা" যখন আপনি দ্রুত কিছু তৈরি করতে চান এবং বাক্সের বাইরে ভাববেন না, বিশেষত যদি আপনার প্রকল্পটি কিছু বিকাশকারী (বা কেবল নিজেকে) দিয়ে ছোট হয়।
তবে একবার আপনি যখন বড়, ফ্যাটি সিস্টেমগুলিতে কাজ শুরু করেন যেখানে আপনি সার্বক্ষণিকভাবে ডোমেন এবং প্রোটোকলগুলি স্যুইচ করেন, আমি বিশ্বাস করি যে আরও মার্জিত পদ্ধতির ব্যবস্থা রয়েছে।
আপনি যখন নিখরচায় এবং আপেক্ষিক ইউআরএলগুলির তুলনা করেন, পরম জিতে যায় ins কেন? কারণ এটি কখনই ভাঙবে না। কখনো। একটি পরম ইউআরএল এটি যা বলে ঠিক তাই। যখন আপনার সম্পূর্ণ ইউআরএলগুলি রক্ষা করতে হয় তখন ধরা পড়ে।
নিখুঁত ইউআরএল লিঙ্কিংয়ের দুর্বল পন্থা আসলে পুরো ইউআরএলকে কোডিং করা। একটি দুর্দান্ত ধারণা নয় এবং সম্ভবত লোকেরা এগুলি বজায় রাখতে বিপদজনক / মন্দ / বিরক্তিকর কেন দেখেন তার অপরাধী। নিজেকে আরও সহজে ইউআরএল জেনারেটর ব্যবহার করার জন্য লেখার একটি আরও ভাল পদ্ধতির। এগুলি লিখতে সহজ, এবং অবিশ্বাস্যরকম শক্তিশালী হতে পারে - স্বয়ংক্রিয়ভাবে আপনার প্রোটোকল সনাক্ত করা, কনফিগার করা সহজ (আক্ষরিক অর্থে পুরো অ্যাপ্লিকেশনটির জন্য একবার url সেট করুন), ইত্যাদি এবং এটি আপনার ডোমেনটিকে নিজেই সংক্রামিত করে। এ সম্পর্কে দুর্দান্ত জিনিস: আপনি আপেক্ষিক ইউআরএলগুলি ব্যবহার করে কোডিং চালিয়ে যান, এবং চালানোর সময় অ্যাপ্লিকেশনটি আপনার ইউআরএলগুলি ফ্লাইয়ের সম্পূর্ণ বিস্মৃত হিসাবে serোকায়। অসাধারণ.
সমস্ত আধুনিক সাইটগুলি বাস্তবে কোনও ধরণের গতিশীল ব্যাক-এন্ড কীভাবে ব্যবহার করে তা দেখে, সাইটটিকে সেভাবে করা সবচেয়ে ভাল। নিখুঁত ইউআরএলগুলি কেবল কোথায় নির্দিষ্ট করে সে সম্পর্কে আপনাকে নির্দিষ্ট করার চেয়ে আরও বেশি কিছু করে - তারা এসইও কার্যকারিতাও উন্নত করতে পারে।
আমি যুক্ত করতে পারি যে নিখুঁত ইউআরএলগুলি কোনওভাবেই পৃষ্ঠাটির লোডের সময়টি পরিবর্তন করতে চলেছে এমন একটি কল্পকাহিনী। যদি আপনার ডোমেনটির ওজন কয়েক বাইটের বেশি হয় এবং আপনি 1980 এর দশকে ডায়ালআপ মডেমে রয়েছেন, নিশ্চিত হন। তবে এখন আর তা নয়। https://stackoverflow.com/ 25 বাইট, যেখানে তারা সাইটের ন্যাভ এরিয়ায় "টপবার-স্প্রিট.পিএনজি" ফাইলটি ব্যবহার করে যার ওজন 9+ কেবি হয়। এর অর্থ হ'ল স্প্রাইট ফাইলের তুলনায় অতিরিক্ত ইউআরএল ডেটা লোড হওয়া তথ্যের ২.২%, এবং সেই ফাইলটিকে একটি বড় পারফরম্যান্স হিট হিসাবেও বিবেচনা করা হয় না।
এই বড়, বিনা চাপড়িত, পূর্ণ পৃষ্ঠার পটভূমির চিত্রটি আপনার লোডের সময়কে ধীর করবে।
আপেক্ষিক ইউআরএলগুলি কেন ব্যবহার করা উচিত নয় সে সম্পর্কে একটি আকর্ষণীয় পোস্ট এখানে: http://yoast.com/relative-urls-issues/
উদাহরণস্বরূপ, আত্মীয়দের সাথে উত্থাপিত একটি সমস্যাটি হ'ল কখনও কখনও সার্ভার ম্যাপিংগুলি (আপনাকে বড়, বিশৃঙ্খলাযুক্ত প্রকল্পগুলির বিষয়ে মনে রাখবেন) ফাইলের নামগুলির সাথে মিল রাখে না এবং বিকাশকারী কোনও আপেক্ষিক ইউআরএল সম্পর্কে ধারণা তৈরি করতে পারে যা ঠিক নেই সত্য। আমি সবেমাত্র দেখেছি যে আজ আমি চলছে এমন একটি প্রকল্পে এবং এটি পুরো পৃষ্ঠাটি নীচে এনেছে।
অথবা সম্ভবত কোনও বিকাশকারী কোনও পয়েন্টারটি স্যুইচ করতে ভুলে গিয়েছিল এবং হঠাৎ গুগল সমস্তই আপনার পুরো পরীক্ষার পরিবেশকে সূচিযুক্ত করে। ওফস- সদৃশ সামগ্রী (SEO এর পক্ষে খারাপ!)।
অ্যাবসোলটগুলি বিপজ্জনক হতে পারে, তবে যখন সঠিকভাবে এবং এমনভাবে ব্যবহার করা হয় যা আপনার বিল্ডকে ভাঙতে না পারে সেগুলি আরও নির্ভরযোগ্য বলে প্রমাণিত হয়। উপরের নিবন্ধটি দেখুন যা ওয়ার্ডপ্রেস ইউআরএল জেনারেটর দুর্দান্ত দুর্দান্ত হওয়ার কারণগুলির একটি গোছা দেয়।
:)
/
বেস পাথের সাথে লিঙ্ক ব্যবহার করছেন? অর্থাত্ এর /products/wallets/thing.html
বিরোধিতা thing.html
হিসাবেhttp://www.myshop.com/products/wallets/thing.html
echo Route::url('route_name')
এইচটিটিপিএস এর মাধ্যমে বিকল্পের সাহায্যে সাইটের ইউআরএল এবং রুটের তথ্য ব্যবহার করে একটি নিখুঁত URL তৈরি করতে ব্যবহার করতে পারেন ।
বেশিরভাগ ক্ষেত্রে আপেক্ষিক ইউআরএলগুলি হ'ল উপায়, সেগুলি প্রকৃতির দ্বারা বহনযোগ্য, যার অর্থ যদি আপনি নিজের সাইটটি তুলে নিয়ে অন্য কাউকে রাখতে চান তবে এটি তাত্ক্ষণিকভাবে কাজ করবে, সম্ভবত ডিবাগিংয়ের কয়েক ঘন্টা হ্রাস করবে।
পরম বনাম আপেক্ষিক URL গুলিতে একটি চমত্কার শালীন নিবন্ধ রয়েছে , এটি দেখুন।
একটি URL যে URL স্কিম এবং প্রকল্প নির্দিষ্ট অংশ (দিয়ে শুরু হয় http://
, https://
, ftp://
, ইত্যাদি) একটি পরম URL।
অন্য যে কোনও ইউআরএল একটি আপেক্ষিক ইউআরএল এবং একটি বেস ইউআরএল প্রয়োজন যা আপেক্ষিক ইউআরএল থেকে সমাধান করা হয় (এবং এর উপর নির্ভর করে) যা সেই সংস্থানটি ব্যবহৃত হয় যা অন্যথায় ঘোষণা না করে রেফারেন্স ব্যবহৃত হয় of
আপেক্ষিক URL গুলি সমাধানের উদাহরণগুলির জন্য আরএফসি 2396 - পরিশিষ্ট সি দেখুন C
ধরা যাক আপনার একটি সাইট www.yourserver.com আছে। ওয়েব নথির মূল ডিরেক্টরিতে আপনার একটি চিত্র উপ-ডিরেক্টরি রয়েছে এবং এতে আপনার মাইমাজেজ.জেপিজি রয়েছে।
একটি নিখুঁত ইউআরএল ডকুমেন্টের সঠিক অবস্থান নির্ধারণ করে, উদাহরণস্বরূপ:
http://www.yourserver.com/images/myimage.jpg
আপেক্ষিক ইউআরএল বর্তমান ডিরেক্টরিটির সাথে সম্পর্কিত অবস্থানটি সংজ্ঞায়িত করে , উদাহরণস্বরূপ, আপনি যে চিত্রটি মূল ওয়েব ডিরেক্টরিতে রয়েছেন তাতে আপনার চিত্রটি রয়েছে:
images/myimage.jpg
(মূল ডিরেক্টরিটি সম্পর্কিত)
আপনার যেখানে সম্ভব সম্ভব সবসময় ইউআরএলএস ব্যবহার করা উচিত। আপনি যদি www.anotherserver.com সাইটটি সরান তবে আপনাকে www.yourserver.com এ নির্দেশ করা সমস্ত নিখুঁত ইউআরএল আপডেট করতে হবে, আপেক্ষিকরা ঠিক তেমনভাবে কাজ চালিয়ে যাবে।
আপেক্ষিক এবং নিরঙ্কুশ ইউআরআই উভয়ই আপেক্ষিক ইউআরআই রেজোলিউশনকে সমর্থন করে এমন প্রতিটি সিস্টেমের জন্য: রেফারেন্সিং। এবং এগুলি বিনিময়যোগ্য হিসাবে ব্যবহার করা যেতে পারে। সুতরাং আপনি প্রতিটি ক্ষেত্রে ভিন্ন সিদ্ধান্ত নিতে পারে । প্রযুক্তিগতভাবে, তারা একই রেফারেন্সিং সরবরাহ করে।
সুনির্দিষ্টভাবে বলতে গেলে, প্রতিটি আপেক্ষিক ইউআরআইয়ের সাথে ইতিমধ্যে একটি পরম ইউআরআই রয়েছে। এবং এটিই বেস-ইউআরআই যা আপেক্ষিক ইউআরআইয়ের বিরুদ্ধে সমাধান করা হয়। সুতরাং কোনও আপেক্ষিক ইউআরআই প্রকৃত ইউআরআইয়ের শীর্ষে থাকা একটি বৈশিষ্ট্য।
এবং এ কারণেই আপেক্ষিক ইউআরআইগুলির সাথে আপনি একা নিরঙ্কুশ ইউআরআই হিসাবে আরও বেশি কিছু করতে পারেন - এটি স্থির ওয়েবসাইটগুলির জন্য বিশেষত গুরুত্বপূর্ণ যা অন্যথায় নিখুঁত ইউআরআইয়ের তুলনায় বজায় রাখা যেমন নমনীয় হতে পারে না।
আপেক্ষিক ইউআরআই রেজোলিউশনের এই ইতিবাচক প্রভাবগুলি গতিশীল ওয়েব-অ্যাপ্লিকেশন বিকাশের জন্যও ব্যবহার করা যেতে পারে। অবিচ্ছিন্নতা পরম ইউআরআইগুলি গতিশীল পরিবেশে মোকাবেলা করা আরও সহজ, সুতরাং কিছু বিকাশকারী যা ইউআরআই রেজোলিউশন সম্পর্কে অনিশ্চিত এবং কীভাবে এটি সঠিকভাবে বাস্তবায়ন ও পরিচালনা করতে পারে (এটি সর্বদা সহজ নয়) প্রায়শই পরম ব্যবহারের বিকল্প বেছে নেয় কোনও ওয়েবসাইটের গতিশীল অংশে ইউআরআইগুলি যেমন তারা অন্যান্য গতিশীল বৈশিষ্ট্যগুলি (যেমন ইউআরআই উপসর্গ সমন্বিত কনফিগারেশন ভেরিয়েবল) প্রবর্তন করতে পারে তাই অনড়তা সম্পর্কে কাজ করার জন্য।
তাহলে নিখুঁত ইউআরআই ব্যবহার করে কী লাভ? প্রযুক্তিগতভাবে এটি নেই, তবে একটি আমি বলব: সম্পর্কিত ইউআরআই আরও জটিল কারণ তাদের তথাকথিত পরম বেস-ইউআরআইয়ের বিরুদ্ধে সমাধান করা দরকার need এমনকি রেজোলিউশনটি বছরের পর বছর থেকে কঠোরভাবে সংজ্ঞায়িত করা হয়েছে, আপনি এমন কোনও ক্লায়েন্টের উপর দিয়ে দৌড়াতে পারেন যা ইউআরআই রেজোলিউশনে ভুল করে। যেহেতু পরম ইউআরআইগুলিকে কোনও রেজোলিউশনের প্রয়োজন হয় না, ততক্ষণ ইউআরআই ব্যবহার করে আপেক্ষিক ইউআরআই রেজোলিউশনের সাথে ত্রুটিযুক্ত ক্লায়েন্টের আচরণের ঝুঁকি থাকে না। সুতরাং বাস্তবে যে ঝুঁকিটি কতটা বেশি? ভাল, এটা খুব বিরল। আমি কেবলমাত্র একটি ইন্টারনেট ব্রাউজার সম্পর্কে জানি যে সম্পর্কিত ইউআরআই রেজোলিউশনে সমস্যা ছিল। এবং এটি সাধারণত ছিল না কেবল একটি খুব (অস্পষ্ট) ক্ষেত্রে।
এইচটিটিপি ক্লায়েন্ট (ব্রাউজার) এর পাশে এটি হাইপারটেক্সট ডকুমেন্ট বা কোডের লেখকের পক্ষে সম্ভবত আরও জটিল। এখানে পরম ইউআরআইয়ের সুবিধা রয়েছে যে এটি পরীক্ষা করা আরও সহজ, আপনি নিজের ব্রাউজারের ঠিকানা বারে যেমন প্রবেশ করতে পারেন তেমন। তবে, যদি এটি কেবল আপনার এক ঘন্টার কাজ না হয় তবে আপনার পক্ষে নিখুঁত এবং আপেক্ষিক ইউআরআই পরিচালনার বিষয়টি বোঝার জন্য আরও বেশি সুবিধা হয় যাতে আপনি আপেক্ষিক সংযোগের সুবিধাটি কাজে লাগাতে পারেন।