Php MVC&;重写规则不是';他根本不工作
我已经用自制的MVC结构和漂亮的URL建立了一个网站。htaccess根本不起作用。 我的网站根目录中有一个“前端控制器”(Php MVC&;重写规则不是';他根本不工作,php,.htaccess,mod-rewrite,model-view-controller,Php,.htaccess,Mod Rewrite,Model View Controller,我已经用自制的MVC结构和漂亮的URL建立了一个网站。htaccess根本不起作用。 我的网站根目录中有一个“前端控制器”(index.php): <?php require_once('M/connect_sql.php'); if (!empty($_GET['page']) && is_file('C/'.$_GET['page'].'.php')) { include 'C/'.$_GET['page'].'.php'; } else { incl
index.php
):
<?php
require_once('M/connect_sql.php');
if (!empty($_GET['page']) && is_file('C/'.$_GET['page'].'.php'))
{
include 'C/'.$_GET['page'].'.php';
}
else
{
include 'C/accueil.php';
}
$bdd = NULL;
我在每个文件夹(根目录、控制器、视图)中都放置了一个.htaccess
,但我无法获取它
自响应后编辑:
这是我的新控制器,因为Entwicklerpages发现了一个安全漏洞。在此处找到此解决方案:
请注意实现中的安全漏洞! 让用户决定包含哪些php文件从来都不是一个好主意
include 'C/'.$_GET['page'].'.php';
还有,我网站上的第二个想法。
PHP中的$\u SERVER
变量有一个名为PATH\u INFO的字段
$_SERVER['PATH_INFO']
如果您的站点名为index.php/your/params/and/other/data
您可以按“/”拆分它,并获取所有数据。
此外,使用ModRewrite,这可能更容易让人喜欢
我在我自己的网站上使用这个:(德语)非常感谢Entwicklerpages花了这么多时间回复。这真的很有帮助!我设法改变了规则。对于安全漏洞,我已经用我找到的解决方案更新了我的帖子。你认为现在安全了吗?
include 'C/'.$_GET['page'].'.php';
$_SERVER['PATH_INFO']