beh9am

خطای The page isn't redirecting properly

5 پست در این موضوع قرار دارد

سلام و خسته نباشید

یک قسمت برای سایتم داده بودم برنامه نویسی کرده بودند که برای اخبار سایت بود اما الان کار نمیکنه دسترسی به نویسنده اسکریپت هم ندارم

سایت به صورت user.site.ir درست کار میکنه اما میخوام تغییرش بدم به صورت site.ir/user باز بشه

این کد index.php هست :


if(preg_match('#([a-z0-9-]+?)\.site\.ir#i', $servername, $blogname)){
if(isset($_GET['id']) ){
$res=mysql_query("select id,username from `feeds` where `id`=(select fid from `news_tmp` where `id`=$_GET[id]) limit 1");
if(mysql_num_rows($res)>0){
list($id,$username)=mysql_fetch_array($res);
if($blogname[1]!=$username){
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://site.ir/$username/index-$_GET[id]" );
exit;
}
}
}
$username=$blogname[1];

با کد بالا خطای The page isn't redirecting properly میده اما اگر به این شکل باشه درست کار میکنه:


if(preg_match('#([a-z0-9-]+?)\.site\.ir#i', $servername, $blogname)){
if(isset($_GET['id']) ){
$res=mysql_query("select id,username from `feeds` where `id`=(select fid from `news_tmp` where `id`=$_GET[id]) limit 1");
if(mysql_num_rows($res)>0){
list($id,$username)=mysql_fetch_array($res);
if($blogname[1]!=$username){
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://$username.site.ir/index-$_GET[id]" );
exit;
}
}
}
$username=$blogname[1];

یعنی اگر به صورت user.site.ir بزاریم درست کار میکنه اما من میخوام به صورت site.ir/user باشه

اینم کدهای htaccess


RewriteEngine On
#RewriteBase /
RewriteRule index-([0-9]*) ./index.php?id=$1 [L]
RewriteRule ^post/(.*)-([0-9]*)$ ./search.php?key=$1&start=$2 [L]
RewriteRule ^post/(.*)$ ./search.php?key=$1 [L]
Rewriterule ^rss.xml ./rss/rss.php
### EXPIRES
# month A2592000, week A604800, day A86400, hour A3600,15 min A900
ExpiresActive On
ExpiresDefault A86400
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A900

0

به اشتراک گذاری این پست


لینک به پست

کسی نیست کمک کنه ؟

اگر هزینه هم داره ایرادی نداره

0

به اشتراک گذاری این پست


لینک به پست

قبل header یه ob_start() بزارین ببینین درست میشه یا نه اگه نشد برای دیدایرکت از تابع زیر استفاده کنید

    function redirect($refer)
{
ob_start();
if (!headers_sent())
header('Location: '.$refer);
else {
echo '<script type="text/javascript">';
echo 'window.location.href="'.$filename.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$filename.'" />';
echo '</noscript>';
}
}

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

قبل header یه ob_start() بزارین ببینین درست میشه یا نه اگه نشد برای دیدایرکت از تابع زیر استفاده کنید

 function redirect($refer)
{
ob_start();
if (!headers_sent())
header('Location: '.$refer);
else {
echo '<script type="text/javascript">';
echo 'window.location.href="'.$filename.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$filename.'" />';
echo '</noscript>';
}
}

تشکر استاد

اما کار نکرد و بازم همون خطارو میده

به هاستینگ گفتم اینو فرستاد :

ظاهرا مساله ی مورد نظر مربوط به دستورات موجود در فایل

.htaccess

می باشد، چرا که با تغییر نام آن حطای

Not Found

مشاهده شد، پیشنهاد می کنیم این مساله را از طریق پشتیبان برنامه در میان بگذارید

کدهای htaccess رو بالا گذاشتم یعنی اونا مشکل داره ؟

ویرایش شده در توسط beh9am
0

به اشتراک گذاری این پست


لینک به پست

url و لینکهای سایت شما الان به چه صورت هست؟

user.site.ir یا site.ir/user

کدهای ریرایت زیر رو به نوبت تست کنید ببینید جواب میده

RewriteRule [a-z0-9-]+/index-([0-9]*) ./index.php?id=$1 [L]
RewriteRule [^/]+/index-([0-9]*) ./index.php?id=$1 [L]

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری