Php 如何更改.htaccess文件中指定的url
我在.htaccess文件中编写了将标准URL更改为友好URL的代码Php 如何更改.htaccess文件中指定的url,php,url,Php,Url,我在.htaccess文件中编写了将标准URL更改为友好URL的代码 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L] 但不幸的是,我不知道如何调整php代码以与.htaccess文件中的代码兼容 下面只是一个简单的代码,因为我不知道如何才能做到这一点 $url = $_GET[0]; //
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
但不幸的是,我不知道如何调整php代码以与.htaccess文件中的代码兼容
下面只是一个简单的代码,因为我不知道如何才能做到这一点
$url = $_GET[0]; // I don't know how to get the unknown parameters
if(file_exists("controllers/". $url . ".php")){
require_once ("controllers/". $url . ".php");
if(class_exists($url)){
$controller = new $url;
}else{
echo "Class deos not exists.";
}
}else{
echo "File deos not exists.";
}
查看
$\u服务器['REQUEST\u URI']
您可以使用$\u服务器['QUERY\u STRING']
获取URL的/$1
部分
if ($_SERVER['QUERY_STRING'] === "/main") {
echo "Main Page";
} elseif ($_SERVER['QUERY_STRING'] === "/sub") {
echo "Sub Page";
} else {
echo "File does not exists.";
}
如果我更改代码RewriteRule^(.*)$index.php?/$1,会怎么样
[五十]
到重写规则^(.*)$index.php/$1[L]
。我被开除了
?
然后,您可以使用$\u服务器['PATH\u INFO']
进行此操作
$pathInfo = $_SERVER['PATH_INFO'];
if ($pathInfo === "/main") {
echo "Main Page";
} elseif ($pathInfo === "/sub") {
echo "Sub Page";
} else {
echo "File does not exists.";
}
您能澄清一下您想要实现什么吗?@5ervant:我想编写一个php代码,使url与此代码兼容
RewriteRule^(.*)$index.php?/$1[L]
。使用print\r($\u-GET)进行调试代码>和打印($\服务器)代码>。那些平淡无奇的copynpaste重写规则可以被替换为FallBackResource
,顺便说一句。马里奥:对不起,我不明白你的意思,你能进一步澄清一下吗。谢谢,但是如果我将代码RewriteRule^(.*)$index.php?/$1[code>改为RewriteRule^(.*)$index.php/$1[L]
,那该怎么办。我已被删除?
。我认为必须使用$\u服务器['REQUEST\u URI']
。正如Fuser97381所说的那样?