PDA

View Full Version : حذف index.php



masiha68
چهارشنبه 08 بهمن 1393, 18:47 عصر
سلام می دونم با 'showScriptName' => false, توی url manager ایندکس حذف میشه ولی حالا که حذف شده خطای 404 رو نشون میده ... RewriteEngine on # 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 این کد رو هم توی اچ تی تی اکسس اضافه کردم ولی بازم جواب نداد

MMSHFE
چهارشنبه 08 بهمن 1393, 22:36 عصر
چک کنید ببینید اصلاً Rewrite Module فعاله؟ اگه توی پوشه دارین کار میکنین باید RewriteBase هم بگذارین و FollowSymlinks رو هم فعال کنید.

masiha68
چهارشنبه 08 بهمن 1393, 22:49 عصر
باید فعال باشه ... چون اگه نباشه که فک کنم خود url manager هم کار نکنه
در کل از کجا بفهمم فعاله ؟ هاست هم سی پنله و فک کنم یه کمی قدیمی باشه

MMSHFE
پنج شنبه 09 بهمن 1393, 09:22 صبح
کارکردن urlManager ربطی به htaccess. نداره. برای اینکه بدونید mod_rewrite فعاله یا نه از پشتیبانی هاستتون سؤال کنید. htaccess. رو هم اگه اسکریپت توی خود public_html نصب هست، اینطوری بنویسید:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L,NC,QSA]

masiha68
پنج شنبه 09 بهمن 1393, 16:29 عصر
این کد رو اضافه کردم ولی هنوز این خطا رو میده ...
Not Found The requested URL /About.html was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

MMSHFE
پنج شنبه 09 بهمن 1393, 17:48 عصر
رولهای urlManager خودتون رو بگذارین. حدس میزنم مشکل بخاطر caseSensitive باشه که false نکردین.

masiha68
پنج شنبه 09 بهمن 1393, 18:40 عصر
'urlManager'=>array(
'urlFormat'=>'path',
// 'showScriptName' => false,
'urlSuffix'=>'.html',
'caseSensitive'=>false,

'rules'=>array(
'Home'=>'site/index',
'Production'=>'site/product',
'Gallery'=>'site/gallery',
'Contact'=>'site/contact',
'About'=>'site/about',
'Article'=>'site/article',
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
/*

MMSHFE
جمعه 10 بهمن 1393, 13:04 عصر
urlSuffix رو حذف کنید ببینید بدون پسوند html. کار میکنه؟ اگه مشکل حل نشد توی پیام خصوصی تیم ویور بدین ببینم مشکل چیه. اگه اسکریپتتون توی پوشه خاصی هست، باید اینطوری کار کنید (فرض کنید اسکریپت شما توی پوشه mysite داخل public_html یا www هست) :

Options +FollowSymlinks
RewriteEngine On
RewriteBase /mysite
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L,NC,QSA]
ضمناً به پشتیبانی هاستتون بگین AllowOverride رو روی All تنظیم کنن.