Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php URL重定向不';我好像不工作_Php_.htaccess - Fatal编程技术网

Php URL重定向不';我好像不工作

Php URL重定向不';我好像不工作,php,.htaccess,Php,.htaccess,所以我正在做这个项目,我需要做一个推荐模块。 我必须以这样的方式重写URL,页面refere\u handler.php?refhash=(base64encode(email))重新写入/refere/(base64encode(email)) 我有以下重定向代码:- RewriteRule ^refer/(\d+)$ refer_handler.php?refhash=$1 [L,QSA] 下面是refere_handler.php <?php session_start(); in

所以我正在做这个项目,我需要做一个推荐模块。 我必须以这样的方式重写URL,页面refere\u handler.php?refhash=(base64encode(email))重新写入/refere/(base64encode(email))

我有以下重定向代码:-

RewriteRule ^refer/(\d+)$ refer_handler.php?refhash=$1 [L,QSA]
下面是refere_handler.php

<?php
session_start();
include 'dbconnector.php';
include 'inc/inc.functions.php';
include 'dbpdo.php';
if((isset($_SESSION['logged'])) && ($_SESSION['logged']=1))
{
    //get the email id from the header
    $emailOfTheReferrer = $_REQUEST['refhash']; // we get the refhash from here.
    echo base64_decode($emailOfTheReferrer);
    ////////////////
    //Layers -- // 
    //Check if the refer hash exists  (Check if the parent email exists)
}
else
{
    header('Location:../index');
}
?>

问题

URL重写似乎不起作用。 当我转到/referef/somerefhash时,它会显示:-未找到。 但是,如果我使用相同的refhash,然后使用URL referer\u handler.php?refhash=thehashhere 然后一切似乎都很顺利

我怎样才能解决这个问题

谢谢。

问题是
(\d+)
只允许数字。和
base64
编码字符串可能包含其他字符

试试这个:

RewriteRule ^refer/(.+)$ refer_handler.php?refhash=$1 [L,QSA]
这将捕获任何字符中的一个或多个