.htaccess htacces文件将不提供第二个查询变量

.htaccess htacces文件将不提供第二个查询变量,.htaccess,.htaccess,文件适用于index.php?p=$1,但不适用于index.php?places=$1 RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?p=$1 RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1 RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?places=$1 RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?places=$1 根据评论更

文件适用于
index.php?p=$1
,但不适用于
index.php?places=$1

RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?p=$1

RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1

RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?places=$1

RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?places=$1
根据评论更新

这里是我的
index.php的一部分

if(isset($_GET['p']) && $_GET['p']=='Kontakt'){
include ("pages/Kontakt.inc.php");
}
$događaj=(isset($_GET['događaj'])) ? $_GET['događaj'] : "none";
$mjesto=(isset($_GET['mjesto'])) ? $_GET['mjesto'] : "none";
$ponude=(isset($_GET['ponuda'])) ? $_GET['ponuda'] : "none"; elseif($ponude != "none"){ 
include ('pages/ponuda-template.inc.php');
} elseif($mjesto != "none"){
include ('pages/mjesta-template.inc.php');
} else $page = (isset($_GET['p'])) ? $_GET['p'] : "Početna";
include ('pages/pocetna.inc.php');
您正在使用的结果太相似,这意味着它们将返回相同的结果

如果在
根目录
级别有一个名为“places”的目录,则可以执行以下操作:

RewriteRule ^places/([a-zA-Z0-9_-]+)/?$ index.php?places=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1&places=$1 [L]
注*:规则按照达到的顺序应用(不同于条件)

如果要收集用于多个查询语句的相同信息,请执行以下操作:

RewriteRule ^places/([a-zA-Z0-9_-]+)/?$ index.php?places=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=$1&places=$1 [L]
对于
?p=sitename
,对于您正在处理请求的站点的站点名,您可以使用:

RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?p=%{HTTP_HOST}&places=$1 [L]
如果您试图匹配包含句点作为子目录的sitename:

RewriteRule ^([a-zA-Z0-9_-]+\.[a-zA-Z0-9_-.]+)/?$ index.php?places=$1
RewriteRule ^([a-zA-Z0-9_-]+)/?$ index.php?p=$1

这些是独立的规则,还是你希望相同的正则表达式命中两次?嗯,对不起,我的英文不好。好吧,不懂你的意思:)我是新手。我有index.php?places=SiteName,index.php?p=SiteName,index.php?pproducts=SiteName only?p=works其他我的p=siteneme-like/SiteName没有得到,但是对于?places=SiteName,?products=SiteName-get/siteneme,没有显示出你的问题是什么。你期望什么样的行为?你没有提供足够的关于网站结构的信息(尽管你提供了代码很好)。在我的回答中,我猜您有一个名为“places”的文件夹。我知道这一点,但我有dir-places,这是另一个查询,如?p=sitename、?places=sitename或?products=sitename,这让我很生气,因为它们在没有目录的情况下匹配模式。你有不同的模式可以在问题中详细说明吗?这里是我index.php的一部分if(isset($u GET['p'])和&$u GET['p']='Kontakt'){include($pages/Kontakt.inc.php”);}$događaj=(isset($u GET['događaj'))$_获取['događaj']:“无”$mjesto=(isset($_GET['mjesto']))$_获取['mjesto']:“无”$ponude=(isset($_GET['ponuda']))$_获取['ponuda']:“无”;elseif($ponude!=“none”){include($pages/ponuda template.inc.php');}elseif($mjesto!=“none”){include($pages/mjesta template.inc.php');}else$page=(isset($u GET['p'])$_GET['p']:“Početna”;包括('pages/pocetna.inc.php');