【问题标题】:adding one more variable to .HTACCESS file在 .HTACCESS 文件中再添加一个变量
【发布时间】:2014-08-09 06:29:04
【问题描述】:

这里的想法是让 url 变短,这就是 .htacss 要做的事情

真正的网址是:

http://myhost/web/search.php?year=2014

.htaccess 会将其更改为:

http://myhost/web/search/2014

这就是 .htaccess 的样子:

RewriteEngine on

RewriteCond %{SCRIPT_FILENAME} -d
RewriteCond %{SCRIPT_FILENAME} -f
RewriteRule . - [L]


#if search with one variable
RewriteRule ^search/([-a-zA-Z0-9]+)/?$ search.php?year=$1 [L,NC]

现在 idia 是她,我有两个变量,就像真正的 url 一样:

http://myhost/web/search.php?year=2014&status=1

现在应该是这样的:

http://myhost/web/search/2014/1

那么我应该在 .htaccess 上编辑什么,是否可以使用 .htaccss

提前问候。

【问题讨论】:

  • 我想你在这里打错了http://myhost/web/search/1
  • 不,在搜索中它有两个变量 one(year) 和 (status)... 对于 url 它看起来像这样(myhost/web/search.php?year=2014&status=1)....and 当 .htaccess 使它变短时看起来喜欢(myhost/web/search/2014/1
  • 但您将链接写入问题中:search/1
  • ya (search/1) 是一个例子,它是用我在我的问题上发布的 .htaccess 解决的,如果我想要 (search/1) 它现在解决了,这里的问题是 tow变量 ( search/2014/1) 其中 2014=year 和 1=stauts ...请完整阅读我的问题

标签: php html .htaccess url


【解决方案1】:

你有两个选择

1 - 将第二个变量放入 .htaccess 文件中,例如:

RewriteRule ^search/([-a-zA-Z0-9]+)/([0-9]+) search.php?year=$1&status=$2 [L,NC] 
RewriteRule ^search/([-a-zA-Z0-9]+)/?$ search.php?year=$1 [L,NC]

2- 解析 php 文件中的 URL 如果你想捕获 2014/ 之后的所有变量,使用 explode (/)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 1970-01-01
    • 2020-02-07
    • 2015-03-01
    • 1970-01-01
    • 2022-06-17
    相关资源
    最近更新 更多