带有 .htaccess 的多个查询参数 RESTful URL

2024-01-16

我想对我正在开发的网站使用以下 RESTful URL。

http://mysite.com/Products/category=bags&colours=black

谁能告诉我如何使用 .htaccess 实现此目的?

Oscar


这是一个 .htaccess,用于捕获任何内容,除非文件或目录发生冲突,并且它路由到 /index.php:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

这样我们就可以使用 /index.php 作为我们的请求路由器。在 PHP 中,我们简单地获取如下请求:

<?php
$url_path = $_SERVER['REQUEST_URI'];
// Parse your URL path here...

也就是说,您的 URL 模式是非标准的,我真的建议不要这样做,因为代理和浏览器将对“&”号和等号进行 URL 编码。让我建议使用以下其中一项(也可以使用小写字母,因为它有助于验证 URL):

http://example.com/products/categories/bags/colours/black
http://example.com/products/category_bags/colours_black
http://example.com/products?category=bags&colours=black
http://example.com/products/categories/bags?colours=black
http://example.com/products/bags?colours=black

要查看 URL 路径中编码的内容,只需 Google 并查看 Google 的搜索 URL。

希望这可以帮助。

-Mike

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有 .htaccess 的多个查询参数 RESTful URL 的相关文章

  • Google App Engine 是否识别并使用 .htaccess 文件?

    我正在使用 Google App Engine Launcher 在本地测试我的应用程序localhost 8080 我猜 Google App Engine Launcher 使用 Python 在本地运行服务器 但我读过 htacces
  • set_time_limit(0) 和“最大执行时间” PHP

    我有一个脚本 我已经设置了 set time limit 0 但仍然得到 Fatal error Maximum execution time of 90 seconds exceeded in home Feed php on line
  • 如何使用浏览器缓存配置 ETag

    我已经通过以下方式为静态站点设置了浏览器缓存 htaccess文件通过设置 BROWER CACHING 1 Day for images
  • .htaccess 从 URL + 目录中删除 WWW

    对于很多人来说这似乎不是问题 阅读 我找不到答案 但我想更新以下 htaccess 代码 不仅从 URL 中删除 www 还删除任何子内容访问的目录 RewriteEngine on RewriteCond HTTP HOST www NC
  • .htaccess php_value include_path 不起作用

    我在当地有一个小项目 我在 Windows 下使用 XAMPP 工作 我的文件目录结构是 根目录 C xampp htdocs routes Under this folder I have my bootstrap php with th
  • 仅使用 .htaccess 在某些页面上将 http 重写为 https

    我知道关于我的问题有很多话题 我检查了所有这些并尝试了它们 但无法使其工作 我只需要在某些页面上将 http 重写为 https 访问 https 页面后 URL 将返回到 http 这是我到目前为止所拥有的 Rewrite Rules f
  • 如何隐藏实际的下载文件夹位置

    我想隐藏下载文件夹位置 以便用户下载文件时看不到该位置 我认为这可以使用 htaccess 文件来完成 但我该如何做到这一点 或者如何使用 PHP 来完成此操作 我在 PHP 中是这样做的
  • 使用 htaccess 文件删除子域的 www

    我有许多特定于子域 的网站 http sub domain com http sub domain com http apple domain com http apple domain com etc 用户偶尔会抱怨该网站无法运行 然后我
  • ci url 是否可能不适用于index.php

    ci url 是否可能无法与index php 一起使用 我不想在url 中添加index php 如果有人在url中添加index php它应该不起作用 我已经尝试了很多方法 请给我建议 我已经尝试过 但不起作用 RewriteEngin
  • .htaccess 只允许访问包含文件

    我的网站上有各种子文件夹 我希望用户无法通过 URL 访问它们 但同时我的主要 PHP 文件能够包含它们或将它们用作表单或链接上的操作 我尝试使用 htaccess 与
  • 一个文件夹中的多个 htaccess 文件,还是条件 AuthType Basic?

    我在本地服务器和实时服务器上使用相同的 htaccess 文件 并希望在测试服务器上使用相同的文件 以使代码管理更容易 目前 虽然我必须有一个不同的文件 因为我的测试服务器具有 htaccess 密码访问权限 AuthType Basic
  • htaccess 正则表达式目录到变量

    我需要对某些 URL 从目录到变量进行 301 重定向 EXAMPLE http domain com es stackoverflow gt http domain com stackoverflow lang es http domai
  • 仅当未找到文件时才重定向请求?

    我希望有一种方法可以使用 mod rewrite 和 Apache 来做到这一点 但也许还有另一种方法可以考虑 在我的网站上 我为客户的网站重新设计版本设置了目录 如果网络根目录是 home blah www 客户端目录将是 home bl
  • 在 htaccess 文件中使用 RewriteMap

    如何在 htaccess 文件中使用 RewriteMap 指令 当我把它放在那里时 我收到 此处不允许 RewriteMap 错误 我知道当将其放入 httpd conf 或虚拟主机配置文件中时 此错误将会消失 但我想知道是否可以将其放入
  • 如何通过htaccess在codeigniter中隐藏index.php和控制器名称

    我想从我的 codeignier url 网站隐藏 index php 和控制器名称 我也想替换这个术语 seo test product ad test product 我在下面提到了我的 htaccess 文件 请指导我如何解决这个问题
  • 将旧锚链接重定向到新锚链接

    我正在彻底修改其他人为我的组织构建的网站 它最初设置为 不太好 的锚链接 其中包含空格 我已经用效果更好的新锚替换了这些锚 例子 其中一位老主播看起来像这样 course To Have哪些浏览器会幸运地转换为 course To 20Ha
  • PHP和.htaccess认证解决方案

    这是布局 web root admin dir index php js img other files dirs dir files 到目前为止 我使用 htaccess passwd 保护管理目录 因为我希望对该目录中的所有文件 包括
  • 管理面板的 htaccess 重写规则

    我的网络应用程序中有这样的 url 模式 www mysitename com foldername controller method 所有请求的页面首先被重定向到根文件夹上的index php 然后处理请求的页面 但每当我进入管理面板
  • 如何使用`RewriteRule ^(.*)$ ?id=$1 [L,QSA]`通过.htaccess获取文件目录?

    如何使用 htaccess 获取文件目录RewriteRule id 1 L QSA 如果 htaccess 位于http localhost some dir htaccess我正在打开http localhost some dir he
  • AH10411 错误:在 apache mod_rewrite 中管理空格和 %20

    我今天更新了 Apache 到 2 4 56 1 并且加载了 htaccess过去有效的重写现在出现了 AH10411 错误 与查询中的空格有关 我正在努力寻找 适当 的解决方案 用户单击一个链接 例如 a href FISH 20J123

随机推荐