【问题标题】:.htaccess URL rewrite with one query string vars.htaccess URL 用一个查询字符串 vars 重写
【发布时间】:2015-12-26 21:41:19
【问题描述】:

我是第一次尝试重写 URL,我有以下 URL 需要重写:

http://domain.com/hotels/index.php?ct=new delhi

我想要这个

http://domain.com/hotels/hotels-in-new delhi

【问题讨论】:

    标签: .htaccess mod-rewrite url-rewriting friendly-url


    【解决方案1】:
    RewriteEngine On
    RewriteCond %{THE_REQUEST} ^GET\ /hotels/index\.php\?ct=(\S+) [NC]
    RewriteRule ^ /hotels/hotels-in-%1? [R=301,L,B]  # Use QSD flag is Apache 2.4 or later
    
    RewriteRule ^hotels-in-(.*)$ index.php?ct=$1 [L]
    

    【讨论】:

    • 这会生成像:domain.com/hotels/hotels-in-jaipur?ct=jaipur 这样的 url,我不想要查询字符串并且页面也找不到错误
    • Apache 版本:Apache/2.2.27
    • @SumitSharma 您能否提供来自 apache 访问日志的 404 错误行?据我所知,404 根本不应该发生
    • [30/Sep/2015:00:17:05 +0530] "GET /hotels/hotels-in-jaipur?ct=jaipur HTTP/1.1" 404 221 ::1 - - [30 /Sep/2015:00:17:25 +0530] "选项 * HTTP/1.0" 200
    • @SumitSharma 你也设置了第二条规则? htaccess 文件在哪里?
    猜你喜欢
    • 2012-11-15
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2023-03-04
    • 2012-06-16
    • 2012-09-19
    • 1970-01-01
    • 2017-09-19
    相关资源
    最近更新 更多