के लिए .htaccess और urlManager मुझे निम्नलिखित समस्या संरचना के साथ http://www.example.com और http://www.example.com/backend में बैकएंड होने के लिए एक Yii प्रोजेक्ट में मेरी .htaccess और urlManager को कॉन्फ़िगर करने में कठिनाई हो रही है। किसी भी मदद का स्वागत है। धन्यवाद।वाईआई: अलग बैकएंड और फ्रंटएंड
/assets
/backend
/controllers
/config
main.php
/models
/views
/common
/models
/protected
/controllers
/config
main.php
/models
/views
.htaccess
backend.php
index.php
समाधान: @ bool.dev सब कुछ यह काम कर रहा की बहुत मदद के बाद, इसलिए मैं यहाँ हर जरूरत अंतिम फ़ाइल जोड़ रहा। दृश्यपटल में मैं यूआरएल के लिए पथ प्रारूप का उपयोग कर रहा हूँ और index.php
/backend/config/main.php
$backend=dirname(dirname(__FILE__));
Yii::setPathOfAlias('backend', $backend);
return array(
'basePath' => $backend,
'controllerPath' => $backend.'/controllers',
'viewPath' => $backend.'/views',
'runtimePath' => $backend.'/runtime',
...);
/protected/config/main.php
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'rules'=>array(
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
छुपा
.htaccess
Options +FollowSymLinks
IndexIgnore */*
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /yii/example/
RewriteRule backend backend\.php [T=application/x-httpd-php]
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
</IfModule>
backend.php
$yii=dirname(__FILE__).'/../../yii/framework/yii.php';
$config=dirname(__FILE__).'/backend/config/main.php';
require_once($yii);
Yii::setPathOfAlias('common', dirname(__FILE__).DIRECTORY_SEPARATOR.'common');
Yii::createWebApplication($config)->run();
index.php
$yii=dirname(__FILE__).'/../../yii/framework/yii.php';
$config=dirname(__FILE__).'/protected/config/main.php';
require_once($yii);
Yii::setPathOfAlias('common', dirname(__FILE__).DIRECTORY_SEPARATOR.'common');
Yii::createWebApplication($config)->run();
क्या आप मुझे बता सकते हैं कि आपने मॉड्यूल का बैकएंड क्यों नहीं किया? –
मैं क्यूईंग द्वारा वर्णित वाईआई परियोजना साइट http://www.yiiframework.com/wiki/155/the-directory-structure-of-the-yii-project-site/ की निर्देशिका संरचना का पालन करना चाहता था। – Puigcerber
क्या आपके पास बैकएंड फ़ोल्डर के अंदर बैकएंड के लिए अलग एचटीएसीएसी नहीं है ?, उदाहरण के लिए बाहरी एचटीएसीएसी बनाएं, और बैकएंड के अंदर एक और एचटीएसीएसी बनाएं, उदाहरण के लिए.com/backend –