Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.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 htaccess,url别名,mod_重写。从url中排除id,但需要它_Php_.htaccess_Mod Rewrite_Url Rewriting - Fatal编程技术网

Php htaccess,url别名,mod_重写。从url中排除id,但需要它

Php htaccess,url别名,mod_重写。从url中排除id,但需要它,php,.htaccess,mod-rewrite,url-rewriting,Php,.htaccess,Mod Rewrite,Url Rewriting,您好,我遇到的问题是,我有一个登录页(event.php),显示数据库中的事件 其他字段中的每个事件都有“类别”、“标题”和“id”。我正在尝试为我的网站创建干净的URL,看起来像这样,但问题是有些事件可能有相同的标题,因为它们可能每周重复,尽管它们确实有唯一的id,我使用它来获取特定事件 我的问题是,我怎样才能改变这样的东西: http://www.domain.com/event.php?cat=rock&title=Great-gig&id=145 进入: 请记住,我确实

您好,我遇到的问题是,我有一个登录页(event.php),显示数据库中的事件

其他字段中的每个事件都有“类别”、“标题”和“id”。我正在尝试为我的网站创建干净的URL,看起来像这样,但问题是有些事件可能有相同的标题,因为它们可能每周重复,尽管它们确实有唯一的id,我使用它来获取特定事件

我的问题是,我怎样才能改变这样的东西:

http://www.domain.com/event.php?cat=rock&title=Great-gig&id=145
进入:

请记住,我确实需要id的值,但我不希望它以某种方式显示在干净的url上

我可以使用htaccess创建干净的URL,但我不知道如何排除id


谢谢。

您不能排除它并使用它。您必须传递它,或者使用标题查找事件。

您好,您需要在文件夹中为此写入htacces。创建一个.htaccess文件

在这种情况下,请编写此代码

RewriteEngine On
RewriteBase /foldername/  //for localhost
RewriteBase /              // for online

RewriteRule ^event/(.+)/(.+)/?$ event.php?cat=$1&title=$2 [L,QSA]

您只有两个选项:

  • 制作一个别名,例如,如果是12月的活动,则为Great gig Dec;如果是1月的活动,则为Great gig Jan,并将此值用作您的唯一id

  • 根据站点结构,仅加载下一个事件或最近的事件。通过这种方式,如果有不止一个伟大的演出,那么你会得到最新的或下一个,这样你就可以像。因此,在这里,您知道要使用多行中的哪一行,而它看起来仍然是一个好的url


  • maxim

    所以没有解决方法?因为我有相同标题的事件,所以我必须传递id,它将可见,对吗?是的。您应该传递与标题对应的slug,而不是标题。它将确保您的url是有效的。你可以用它作为唯一的标识符。对不起,我的英语不太好。你说的渣是什么意思?你能解释一下吗:)
    RewriteEngine On
    RewriteBase /foldername/  //for localhost
    RewriteBase /              // for online
    
    RewriteRule ^event/(.+)/(.+)/?$ event.php?cat=$1&title=$2 [L,QSA]