url重写index.php

2024-02-04

我有类似的网址

http://mysite.com/index.php?p=resources
http://mysite.com/index.php?p=resources&s=view&id=938

但我想要像这样的网址

http://mysite.com/resources
http://mysite.com/resources/view/938

我想知道是否可以只制定一个规则,而不是制定数百条重写规则?我认为这可以通过“获取 uri 并将其分成几部分”来实现,然后只需为 index.php 添加重写规则

但如何呢?有人可以举个例子或链接教程吗


我碰巧在 .htaccess 中使用了它:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l 

RewriteRule .* index.php [L]

无论请求什么,这本质上都会调用index.php。然后在 PHP 代码中,您可以查看 $_SERVER['REQUEST_URI'] 来获取 URL 并进行相应的解析。

RewriteCond 行用于排除对文件的直接调用。就我而言,出于性能原因,我不希望对 js/css/image 文件的请求之类的内容通过index.php。

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

url重写index.php 的相关文章

  • 通过 Ajax 加载内容时,WORDPRESS 音频播放器未加载,MediaElement.js 未应用

    我正在创建一个 WordPress 主题 当我使用 ajax 加载内容时 它不会将 MediaElements js 应用于我的音频播放器 因此不会显示音频 我认为这是因为 MediaElement js 加载了 wp footer 并且此
  • 如何解压 PHP/Lumen/Laravel 的 gzip 请求?

    我收到来自第三方的 gzip 编码文本请求 1mb 所以这是有道理的 我的测试路线 router gt post testgzip function Illuminate Http Request request decompressed
  • 如何检查PHP变量是否包含非数字?

    我只是想知道检查 PHP 变量中是否有非数字的方法以及它是否也检测字符之间的空格 需要确保我的表单字段中没有添加任何奇怪的内容 提前致谢 如果您的意思是您只想要一个包含数字的值 那么您可以使用ctype digit http php net
  • MySQL/PDO::quote() 尽管使用 PDO::PARAM_INT 参数,但仍在整数周围加上引号

    无论我传递给什么值 数据类型对 它都会出现 pdo gt quote value type 它总是将其引用为字符串 echo pdo gt quote foo PDO PARAM STR foo as expected echo pdo g
  • PHP 会话不适用于游戏

    我正在尝试模仿一款名为 SKUNK 用骰子玩 的游戏来完成一项作业 我无法让会话正常工作 这是我第一次使用 PHP 我还被告知无需会议即可完成 这是我的代码
  • Woocommerce 让产品显示在存档页面中

    我正在尝试让所有产品显示在我商店的存档页面中 我想知道他们的id我正在使用我的一个钩子 它在 wp head 上运行并检查 if is product category 我想以某种方式访问 产品的查询并获取它们的 ID if is prod
  • 扩展蓝图类?

    我想覆盖timestamps 函数中发现Blueprint班级 我怎样才能做到这一点 e g public function up Schema create users function Blueprint table table gt
  • 将“php”作为 shell 脚本执行时的自定义 php.ini 文件

    我在跑php作为 shell 脚本 我不确定 shell脚本 是否正确 该文件以 usr bin php 这很好用 但 MongoDB 类没有正确加载php ini文件 具有extension mongo so 未使用 我该如何使用它tha
  • 是否可以使用 PHP 重定向发送 POST 数据?

    更新 这不是重复的如何使用 PHP 发送 POST 请求 https stackoverflow com questions 5647461 how do i send a post request with php 那里的解决方案对我不起
  • 为什么我需要结束 ob_start()?

    php 文档建议我应该用 ob end flush 结束每个 ob start 我在网站的每个页面上使用一个 只是为了允许我在应用程序中的任何位置使用 firephp 日志方法 该应用程序运行良好 但我想知道是否有任何我不知道的东西可能有害
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • 交换关联数组中的两个项目

    Example arr array apple gt sweet grapefruit gt bitter pear gt tasty banana gt yellow 我想调换一下柚子和梨的位置 这样数组就变成了 arr array ap
  • PHP preg_filter 返回意外的长值

    尝试在 Woocommerce 中删除标签并过滤值 但无法以正确的格式获取它 有东西有腥味 我正在使用WC gt cart gt get cart subtotal 来检索该值 在此示例中 我的值是 2 429kr 原始返回值是 span
  • 使用 Ajax.Request 将 JSON 从浏览器传递到 PHP 的最佳方法

    您好 我有一个 JSON 对象 它是一个二维数组 我需要使用 Ajax Request 将其传递给 PHP 我知道的唯一方法 现在我使用js函数手动序列化我的数组 并获取以下格式的数据 s 1 d 3 4等 我的问题是 有没有办法更直接 有
  • 跟踪用户何时点击浏览器上的后退按钮

    是否可以检测用户何时单击浏览器的后退按钮 我有一个 Ajax 应用程序 如果我可以检测到用户何时单击后退按钮 我可以显示适当的数据 任何使用 PHP JavaScript 的解决方案都是优选的 任何语言的解决方案都可以 只需要我可以翻译成
  • 表单提交后如何保留选择字段中的选定值?

    我有一个用于将票证上传到数据库的主页 我有一个选择字段 我想保留用户在提交表单之前选择的值 但它没有发生 这是我选择字段的代码
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • 内部 while 循环不工作

    这是我项目网页上的代码片段 这里我想显示用户选择的类别 然后想显示属于该类别的主题 在那里 用户可以拥有多个类别 这没有问题 我可以在第一个 while 循环中打印所有这些类别 问题是当我尝试打印主题时 结果只显示一行 但每个类别中有更多主
  • Magento - 自定义支付模块

    这是一个非常普遍的问题 但这里是 我正在尝试在 Magento 中创建一个自定义支付模块 我创建了一个 常规 模块 可以连接到 Magento 事件 观察者模型 但是我如何告诉 Magento 将模块视为支付模块 以便它显示在管理后端和结账
  • 如何使用 PHPExcel 库从 Excel 获取日期

    我正在尝试使用 PHPExcel 从 Excel 获取日期 但我没有得到日期 我得到的字符串值不是 1970 以来的秒数 我尝试过的代码是 InvDate trim excel gt getActiveSheet gt getCell B

随机推荐

  • 使用 python 从 LaTeX 文件中提取特定部分

    我有一组 LaTeX 文件 我想为每个提取 抽象 部分 begin abstract end abstract 我已经尝试过这里的建议 如何解析LaTex文件 https stackoverflow com questions 307523
  • 方法的多个返回类型

    我正在尝试用 Rust 编写一个简单的电视剧文件重命名器 文件名被解析 并且可能是多种类型之一 基于日期 基于季节 剧集编号等 然后 此解析后的文件将转换为包含数据库中数据的 填充文件 然后将其格式化为新文件名 最初我尝试让parse方法采
  • DB PHP 中的条目数

    我正在创建一个函数来显示现在有多少用户在线 这是基于过去 5 分钟内打开页面的人 每个页面加载都保存到我的数据库中 如下所示 目前我有以下代码 query mysql query SELECT user id timestamp FROM
  • Vuex - 绑定助手中的动态命名空间(mapState,...)

    我正在动态注册 vuex 存储模块 store registerModule home grid GridStore 然后在组件中 export default name GridComponent props namespace type
  • 哪些版本控制工具可用于 MongoDB [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我计划将基于 mongodb 的迁移工具集成到我的 spring boot 应用程序中 该应用程序在项目中具有 spring data 依赖
  • 在sqlite数据库中保存日志表?

    我正在寻找一种方法来设置 通过 SQL 一个日志表 其中包含对我的 sqlite 数据库所做的所有操作 最好是向数据库发出的插入 创建表等语句 我确信有办法通过在每个表上设置触发器来做到这一点 但这只是太多的工作 而且如果我稍后更改数据库的
  • 在 C# 中通过委托实现观察者模式?

    有一个问题已经回答了 那就是在C 中 观察者模式不是已经使用事件实现了吗 https stackoverflow com questions 32034 in c isnt the observer pattern already impl
  • Rails 验证中的单词计数

    我使用以下验证来计算 Rails 中的单词数 我从 Rails 文档中获取了示例 但它并不真正准确 validates body length gt minimum gt 50 maximum gt 300 tokenizer gt lam
  • 将日志文件保持在一定大小

    我有一个在信息亭 C WPF 中的独立平板电脑上运行的应用程序 它对文本文件执行一些典型的日志记录操作 随着这些日志的增长 PC 具有有限的磁盘空间来存储这些日志 我需要做的是能够指定日志文件允许的最大大小 如果在尝试写入日志时超出最大大小
  • 使用 EF Core 和 MySQL 实现行版本的更好方法?

    如果我在模型中使用以下字段 DatabaseGenerated DatabaseGeneratedOption Computed Timestamp public DateTime RowVersion get set 然后将该列定义为 R
  • Composer 不检测 php7,而是使用 5.6。如何设置 CLI 以使用 php7

    当我执行时在这里php v 它说它有 php7 但是当我尝试执行时composer update 回应它 Your requirements could not be resolved to an installable set of pa
  • MySQL 多重选择、多个Where 子句

    我不想为一项操作运行数百个 SELECT 查询 而是只想运行一个大查询 我希望这能减轻服务器上的负载 SELECT SELECT link type id FROM connections WHERE node to id 0 AND no
  • 使用 AAD 应用程序密钥和服务主体密码之间的身份验证差异

    要在 Azure 中运行应用程序 我需要在 Azure AD 中创建应用程序和相应的服务主体 然后我的应用程序针对此应用程序 主体对进行身份验证 为了进行身份验证 我可以在应用程序注册中创建应用程序密钥 或者可以在服务主体中创建密码 以及其
  • Visual Studio 2017 HRESULT: 0x80070005 / E_ACCESSDENIED 项目创建

    我正在运行 Visual Studio 2017 版本 15 0 0 26228 9 当我尝试通过创建一个新项目时文件 gt 新建 gt 项目 在 Visual Studio 2017 中 我收到以下错误消息 并且未创建项目 访问被拒绝 H
  • 将 YAML 文件中的数字替换为随机数

    我有一个包含很多数字的文件 我希望每个数字都被替换为随机数 以便Python脚本更改YAML文件 如何用 Python 编写这个代码 h 1 X 950 00000 Y 1500 00000 Z 150 00000 h 2 X 950 00
  • 如何动态添加 XML 副本

    我正在制作一个Android应用程序 我想在线性布局中复制一些XML代码 并将其重新插入到线性布局中 以便线性布局中有两个相对布局 我想通过下面的代码动态地执行此操作
  • python 中的构造函数和初始值设定项有什么区别? [复制]

    这个问题在这里已经有答案了 可能的重复 Python 和 Python C API new versus init https stackoverflow com questions 4859129 python and python c
  • 在 React 测试库中发现多个元素错误

    我在查询时遇到问题 我正在尝试获取两个无线电输入 其中之一没有任何问题 但另一个反应测试库引发了错误 It Found multiple elements with the role radio and name to i queries
  • EclEmma 代码覆盖率忽略 Junit 测试

    我发现在 JUnit 测试中不检查代码覆盖率的唯一方法是右键单击包 选择 Coverage as 然后选择配置 然后我可以取消单击我的测试包 我已经尝试了所有可能的组合来排除test在常规首选项 java 代码覆盖率 排除下 没有看到任何变
  • url重写index.php

    我有类似的网址 http mysite com index php p resources http mysite com index php p resources s view id 938 但我想要像这样的网址 http mysite