Yii - URL के नियम
URL नियम एक उदाहरण है यदि yii\web\UrlRule। urlManager घटक इसके घोषित किए गए URL नियमों का उपयोग करते हैं rules सुंदर URL प्रारूप सक्षम होने पर संपत्ति।
अनुरोध को पार्स करने के लिए, URL प्रबंधक उन नियमों को प्राप्त करता है, जो वे घोषित किए जाते हैं और पहले नियम के लिए देखते हैं।
Step 1 - संशोधित करें urlManager में घटक config/web.php फ़ाइल।
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'about' => 'site/about',
]
],
Step 2 - पर अपने वेब ब्राउजर पर जाएं http://localhost:8080/about, आप पृष्ठ के बारे में देखेंगे।
एक URL नियम इस पैटर्न में क्वेरी मापदंडों से जुड़ा हो सकता है -
<परमनाम: RegExp>, जहां -
ParamName - पैरामीटर नाम
RegExp - पैरामीटर मूल्यों से मेल खाने के लिए उपयोग की जाने वाली एक वैकल्पिक नियमित अभिव्यक्ति
मान लीजिए, हमने निम्नलिखित URL नियम घोषित किए हैं -
[
'articles/<year:\d{4}>/<category>' => 'article/index',
'articles' => 'article/index',
'article/<id:\d+>' => 'article/view',
]
जब नियमों का उपयोग किया जाता है parsing -
- /index.php/articles को लेख / इंडेक्स में पार्स किया गया है
- /index.php/articles/2014/php लेख / इंडेक्स में पार्स किया गया है
- /index.php/article/100 लेख / दृश्य में पार्स किया गया है
- /index.php/articles/php लेख / php में पार्स किया गया है
जब नियमों का उपयोग किया जाता है creating URLs -
Url :: से (['लेख / इंडेक्स')) /index.php/articles बनाता है
यूआरएल :: (['लेख / सूचकांक', 'वर्ष' => 2014, 'श्रेणी' => 'php']) /index.php/articles/2014/php बनाता है
यूआरएल :: (['लेख / दृश्य', 'आईडी' => 100]) /index.php/article/100 बनाता है
यूआरएल :: (['लेख / दृश्य', 'आईडी' => 100, 'स्रोत' => 'विज्ञापन')) /index.php/article/100?source=ad बनाता है
यूआरएल :: (['लेख / सूचकांक', 'श्रेणी' => 'php']) /index.php/article/index?category=php बनाता है
URL में एक प्रत्यय जोड़ने के लिए, आपको कॉन्फ़िगर करना चाहिए yii\web\UrlManager::$suffix संपत्ति।
Step 3 - संशोधित करें urlComponent में config/web.php फ़ाइल।
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'enableStrictParsing' => true,
'suffix' => '.html'
],
Step 4 - पता टाइप करें http://localhost:8080/site/contact.htmlवेब ब्राउज़र के एड्रेस बार में और आप अपनी स्क्रीन पर निम्न देखेंगे। ध्यान देंhtml प्रत्यय।