PHP MVC使用用户友好的URL重定向到同一页面

时间:2016-08-14 15:59:32

标签: php url redirect

我正在使用MVC模式实现PHP应用程序。当时应用程序真的处于开始阶段(只是为了验证所有应用程序是否按预期运行)但问题是:

以常见的index.php文件(应用程序的入口点)开头的网站(通过URL http://localhost/www/whours.com/)不会将任何参数显示为查询字符串。 因为我需要起始URL以whours.com/之后的用户友好方式显示默认控制器和操作,所以我尝试在index.php中实现重定向,以连接默认控制器和操作名称。 重定向后,页面将联系类Application,然后联系路由类。

但是,重定向无法按预期工作,并且URL仍为:

localhost/www/whours.com/

相反,我想获得:

localhost/www/whours.com/login_controller/noAuth/

您是否知道如何在入口点页面实现此功能?

仅为了您的信息,应用程序正在执行此操作: 在index.php中设置自动加载器,导入所有配置(主要是一系列定义),实例化Application类,然后调用方法运行。

方法运行将实例化并调用解析URL的路由器并联系控制器。控制器将联系模型(如果需要 - 当然,如果用户尚未通过身份验证,则不会联系任何模型)和视图以呈现正确的页面。但是目前没有URL可以被解析,因为我无法在页面启动时获得带有URL中参数的URL。

下面是我的索引代码(如果可能的话):

// Getting the absolute root path
define('ROOT', dirname(__FILE__) . DIRECTORY_SEPARATOR);

include_once("App/Core/Config/config.php");
include_once(CORE_PATH . DIRECTORY_SEPARATOR . "Include/autoloader.php");

$app = new Application();

if (!isset($_SESSION['Initialized']))
{
    $_SESSION['Initialized'] = 1;

    header('location: ' . $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] . '/login_controller/noAuth');

}
$app->run();

你能不能帮助我知道获取网址:

localhost/www/whours.com/login_controller/noAuth/

当用户联系该网站时?

我尝试使用标题重定向但没有成功。

0 个答案:

没有答案