PDA

View Full Version : مشکل با تست cms در لوکال سرور



mostafa272
چهارشنبه 30 فروردین 1391, 16:42 عصر
با سلام

من دارم یه CMS درست می کنم اما نمی تونم اونو در لوکال سرور تست کنم . از wampserver استفاده می کنم ولی وقتی از لوکال هاست وارد پوشه cms می شوم با این خطا مواجه می شوم.لطفا راهنمایی کنید

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.

MMSHFE
چهارشنبه 30 فروردین 1391, 16:51 عصر
فایل htaccess. رو ویرایش کنید و بعد از RewriteEngine On این کد رو اضافه کنید:

RewriteBase /cms
و بجای cms اسم پوشه ای که CMS رو توش گذاشتین قرار بدین.
اگه باز هم درست نشد، توی htaccess. بعد از خط RewriteEngine On و قبل از خط قبلی که اضافه کردین، این خط رو هم اضافه کنید:

Options +FollowSymlinks
البته باید دقت کنید که روی هاست واقعی باید این کدها رو حذف کنید.
موفق باشید.

mostafa272
چهارشنبه 30 فروردین 1391, 20:03 عصر
این کدها رو اضافه کردم ولی تاثیری نداشت. هنوز همون خطا رو میده! تو httpd.conf آپاچی نباید تغییری بدم؟

MMSHFE
پنج شنبه 31 فروردین 1391, 10:53 صبح
نه ارتباطی به اون نداره. هرچی هست مربوط به htaccess. میشه. CMS رو توی چه پوشه ای قرار دادین (منظورم داخل www) هست. ضمناً کد کامل htaccess. پوشه اصلی CMS رو هم بگذارین. موفق باشید.

mostafa272
پنج شنبه 31 فروردین 1391, 11:45 صبح
تو فولدر www یه پوشه cms هست که مربوط به همینه (داخل cms هم فولدر include و private وphp-classes و یک فایل index و .htaccess).
کد .htaccess هم اینه:


<IfModule mod_deflate.c>

SetOutputFilter DEFLATE

</IfModule>


php_flag magic_quotes_gpc off


RewriteEngine on
Options +FollowSymlinks
RewriteBase /cms
RewriteRule ^([^./]{3}[^.]*)$ /index.php?page=$1 [QSA,L]

mostafa272
پنج شنبه 31 فروردین 1391, 19:17 عصر
تو error log آپاچی این خطا نوشته شده:

[error] [client 192.168.1.50] client denied by server configuration: C:/wamp/www/

MMSHFE
پنج شنبه 31 فروردین 1391, 19:21 عصر
RewriteRule رو اینطوری بگذارین ببینید چطور میشه؟

RewriteRule ^(.*)$ index.php?page=$1 [QSA,L]
اگه درست شد، توی RewriteRule خودتون / اول index.php رو حذف کنید.

mostafa272
پنج شنبه 31 فروردین 1391, 19:43 عصر
هنوز خطا میده.error log:

[Thu Apr 19 19:54:39 2012] [alert] [client 127.0.0.1] C:/wamp/www/cms/.htaccess: Expected </IfModule> before end of configuration, referer: http://localhost/

mostafa272
پنج شنبه 31 فروردین 1391, 19:50 عصر
آقای مدیر، با تشکر از شما، اگه درست نمیشه ممکنه یه منبع خوب برای ایجاد cms با php و jquery به من معرفی کنید! این کتاب آقای verens روی لینوکس و با ویرچوال هاست کار کرده که الان مثه اینکه تو ویندوز مشکل ساز شده!اگه لطف کنید منبع دیگه ای رو معرفی کنید این کتاب رو بی خیال می شوم.

MMSHFE
جمعه 01 اردیبهشت 1391, 08:40 صبح
كتاب CMS Design with PHP and jQuery خوبه اما درمورد همين CMS هم ميشه درستش كرد چون Apache روي ويندوز هم بدون مشكل كار ميكنه. هرچيه زير سر اين htaccess. هست. لطف ميكنيد محتواي تغيير يافته اين فايل رو كه الآن ويرايشش كردين، اينجا بگذارين؟ فكر ميكنم / رو اشتباهي حذف كردين.

mostafa272
جمعه 01 اردیبهشت 1391, 09:15 صبح
کد .htaccess:


<IfModule mod_deflate.c>
SetOutputFilter DEFLATE</IfModule>

php_flag magic_quotes_gpc offRewriteEngine onOptions +FollowSymlinksRewriteBase /cmsRewriteRule ^([^./]{3}[^.]*)$ index.php?page=$1 [QSA,L]

MMSHFE
جمعه 01 اردیبهشت 1391, 17:59 عصر
دقیقاً همینطوری بود؟ منظورم شکستن خطوط هست. این رو امتحان کنید:


<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
</IfModule>

php_flag magic_quotes_gpc off

RewriteEngine on
Options +FollowSymlinks
RewriteBase /cms
RewriteRule ^([^./]{3}[^.]*)$ index.php?page=$1 [QSA,L]

mostafa272
جمعه 01 اردیبهشت 1391, 18:31 عصر
باز هم نشد.این نمونه کدی که گرفتم اول توش پشت هم کدها نوشته شده بود(بدون شکستگی خطوط)بعدش هم هر بار که کدهای جدید رو امتحان می کنم به هر دو فرم تست می کنم(با/بدون شکستگی) ولی جواب نمیده!(انقدر این صفحه Internal Server Error رو دیدم داره حالم بهم میخوره!)

mostafa272
جمعه 01 اردیبهشت 1391, 18:44 عصر
تو error log آپاچی خطاهایی که میگیره از سه خط آخره:
[Fri Apr 20 18:49:28 2012] [alert] [client 127.0.0.1] C:/wamp/www/cms/.htaccess: Invalid command 'RewriteBase', perhaps misspelled or defined by a module not included in the server configuration, referer: http://localhost/
[Fri Apr 20 18:50:20 2012] [alert] [client 127.0.0.1] C:/wamp/www/cms/.htaccess: Invalid command 'RewriteBase', perhaps misspelled or defined by a module not included in the server configuration, referer: http://localhost/
[Fri Apr 20 18:51:04 2012] [alert] [client 127.0.0.1] C:/wamp/www/cms/.htaccess: Invalid command 'RewriteRule', perhaps misspelled or defined by a module not included in the server configuration, referer: http://localhost/

که اگه این سه خط رو حذف کنم تو کد بقیه صفحات مشکل به وجود میاد.

MMSHFE
جمعه 01 اردیبهشت 1391, 22:40 عصر
از چه نسخه ای از Apache استفاده میکنید؟ این خطا داره میگه دستور RewriteBase رو نمیشناسه. اینو امتحان کنید (شاید Deflate درست کار نمیکنه) :


php_flag magic_quotes_gpc off

RewriteEngine on
Options +FollowSymlinks
RewriteBase /cms
RewriteRule ^([^./]{3}[^.]*)$ index.php?page=$1 [QSA,L]

اگه کار نکرد، اینو تست کنید:


<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
</IfModule>

php_flag magic_quotes_gpc off

RewriteEngine on
Options +FollowSymlinks
RewriteBase /cms
RewriteRule ^(.*)$ index.php?page=$1 [QSA,L]

اگه این کار کنه، یعنی مشکل از RewriteRule هست و باید برای اون یک فکری بکنیم.

mostafa272
شنبه 02 اردیبهشت 1391, 07:42 صبح
آپاچی نسخه 2.2.8 ، درست نشد.error log:

[Sat Apr 21 07:52:04 2012] [alert] [client 127.0.0.1] C:/wamp/www/cms/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration, referer: http://localhost/

MMSHFE
شنبه 02 اردیبهشت 1391, 09:28 صبح
چک کنید ببینید mod_rewrite شما اصلاً فعال هست یا نه؟ این خط رو توی httpd.conf پیدا کنید:
LoadModule rewrite_module modules/mod_rewrite.so
و اگه اولش # بود اون رو بردارین و فایل رو ذخیره کرده و Apache رو ریستارت کنید.
موفق باشید.

mostafa272
شنبه 02 اردیبهشت 1391, 10:58 صبح
این کار و که گفتید انجام دادم مشکل سرور حل شد ولی این خطای جدید ایجاد شد:

Warning: require(C:/wamp/www/.private/config.php) [function.require (http://barnamenevis.org/function.require)]: failed to open stream: No such file or directory in C:\wamp\www\cms\ww.incs\basics.php on line 26

Fatal error: require() [function.require (http://barnamenevis.org/function.require)]: Failed opening required 'C:/wamp/www/.private/config.php' (include_path='.;C:\php5\pear') in C:\wamp\www\cms\ww.incs\basics.php on line 26

MMSHFE
شنبه 02 اردیبهشت 1391, 12:49 عصر
فایل basics.php رو باید ویرایش کنید و دستورات require رو اصلاح کنید چون داره سعی میکنه فایل config.php رو از توی پوشه www (یعنی root) بخونه نه پوشه مربوط به cms

mostafa272
شنبه 02 اردیبهشت 1391, 18:31 عصر
یه خطای دیگه:
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\cms\ww.incs\basics.php on line 23


<?php
session_start();
function __autoload($name) {
require $name . '.php';
}
function dbInit(){
if(isset($GLOBALS['db']))return $GLOBALS['db'];
global $DBVARS;
$db=new PDO('mysql:host='.$DBVARS['hostname'].';dbname='.$DBVARS['db_name'],$DBVARS['username'],$DBVARS['password']);
$db->query('SET NAMES utf8');
$db->num_queries=0;
$GLOBALS['db']=$db;
return $db;
}
function dbQuery($query){
$db=dbInit();
$q=$db->query($query);
$db->num_queries++;
return $q;
}
function dbRow($query) {
$q = dbQuery($query);
return $q->fetch(PDO::FETCH_ASSOC);
}
define('SCRIPTBASE', $_SERVER['DOCUMENT_ROOT'].'cms/' );
require SCRIPTBASE . '.private/config.php';
if(!defined('CONFIG_FILE'))define('CONFIG_FILE',SC RIPTBASE.'.private/config.php');
set_include_path(SCRIPTBASE.'ww.php_classes'.PATH_ SEPARATOR.get_include_path());