使用 PHP 和 Apache 路由 URL 路径

2023-12-09

我正在尝试为我的网站创建一个漂亮的网址结构。

我的路由器类仅在 url 的样式为 ?something=value 时才起作用。

我如何得到它,它的工作方式如下:

/something/value

在我的 .htaccess 中我有:

Options FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(js|txt|gif|jpg|png)$ index.php?$1 [L,QSA]

在我的路由器类中,我正在制作:

class init {

    function __construct()
    {

    $URL = substr($_SERVER['REQUEST_URI'], 19) ;
    $URLElements = explode('/', $URL) ; // Adjust if needed.

    $class = $URLElements[0] ;
    $method = $URLElements[1] ;

    if(($t = substr_count($URL, '/')) > 1)
    {
        for($i=2;$i<$t+1;$i++) {
            echo $URLElements[$i].'<br />';
        }
    }
    }

}

感谢 Jason,我的 .htaccess 现在只是:

FallbackResource /t2013/public_html/index.php

快速处理的方法前端控制器与阿帕奇,使用FallbackResource并使用 PHP 解析 URL。

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

使用 PHP 和 Apache 路由 URL 路径 的相关文章

  • Readfile 从大文件中读取 0 字节?

    我正在尝试通过以下方式发送一个大文件readfile 但是 没有任何内容发送到浏览器 并且readfile 回报0 not false 我尝试发送的文件大小为 4GiB 并且可由 PHP 读取 我正在设置set time limit 0 以
  • 通过 Sparkpost 发送 iCal 邀请

    我正在尝试使用 SparkPost 通过电子邮件以附件形式发送日历邀请 但收到电子邮件后邀请不会打开 我使用两个文件 calendarinvite php 来创建邀请 使用 Sendemail php 来发送电子邮件 calendarinv
  • 如何将变量插入 PHP 数组?

    我在网上查了一些答案 但都不是很准确 我希望能够做到这一点 id result id info array id Example echo info 0 这有可能吗 您需要的是 不推荐 info array id Example varia
  • Smarty 如果 URL 包含

    使用 Smarty 标签我想确定 URL 是否包含单词 例如 if smarty get page contains product php 我知道 contains 不存在 但是我怎样才能轻松地编写类似的东西来实现上述代码呢 所有 PHP
  • Ajax 没有将我重定向到下一页

    我正在尝试将单击的图像的 ID 传递到下一页 当我开发代码时 它没有将我重定向到下一页 当我单击 F12 并检查网络中的 POST 时 它显示变量已正确传递到下一页 如附图所示 但它没有将我重定向到下一页 所以现在我知道变量在下一页中正确传
  • PHP 无法打开流:是一个目录

    非常简单的 PHP 脚本 我在我亲自设置的 Ubuntu Web 服务器上的 EE 模板中运行 我知道这与权限有关 并且我已经将我尝试写入的目录的所有者更改为 Apache 用户 我得到的错误是 遇到 PHP 错误 严重性 警告 消息 fi
  • 客户端浏览器关闭时服务器端 Perl CGI 脚本中断

    我已经尝试解决一个小问题很长一段时间了 但似乎我无法解决 我编写了一个 HTML 页面 它在提交表单时调用 perl CGI 脚本 该 CGI 在服务器端执行一定数量的任务 我让脚本将这些任务的步骤打印到 HTML 页面上的 iframe
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • 使用 PHP Selenium Webdriver 单击下拉菜单中的选项?

    我正在使用 PHP Selenium Webdriver 包装器Facebook https github com facebook php webdriver 任何人都可以给我一个如何单击或从选择下拉菜单中选择选项的示例吗 我已经尝试过这
  • 使用 PHP PayPal REST API 退款?

    我正在开发一个集成到 PayPal 的 REST API 中的 PHP 应用程序 我正确处理了事务并将事务 ID 保存到 MySQL 数据库中 我现在正在尝试退款 但无法让它停止给出 传入 JSON 请求未映射到 API 请求 错误 有人对
  • 如何在HTML中的PHP中注释掉HTML和PHP?

    这是我想注释掉的一行代码 h1 class post title a href title a h1 一种流行的注释方法是分别注释 html 和 php 有一个更好的方法吗
  • 获取字符串中的最后一个整数

    我需要隔离包含多个整数的字符串中最新出现的整数 我怎样才能得到23代替1 for lastnum1 text 1 out of 23 lastnum1 this gt getEval eregi replace out of text 你可
  • 使用 Instagram Basic Display API 时出现“无效平台应用程序”错误

    我正在尝试使用 Instagram Basic 显示 API 但是当我发布授权代码以获取访问令牌时 我不断收到以下错误 error type OAuthException 代码 400 error message 平台应用无效 我正在遵循此
  • 对 SimpleXML 数据进行排序和分组

    我正在对 XML 文件中的出版物数据进行排序和分组 我目前使用的方法效果很好大部分情况下 尽管我觉得有一种更有效的方法来完成我想要完成的任务 以下是目标节点的示例
  • PHP 扩展开发入门 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 请推荐有关 PHP 低 级 modules 编程接口的帮助文章或教程 搜索我的书签 我发现的唯一链接是
  • 客户端 Javascript 应用程序 - 不带哈希标签的 url 路由

    我正在使用最新版本的 Ember js 开发一个新的仅客户端应用程序 有一个 PHP 页面可以构建脚本 CSS 模板文件等 并将其全部传递到 index php 中 我使用 htaccess 指令 以便所有请求都重写到 index php
  • PHP print_r() 中 _r 的含义是什么?

    我见过这个答案 https stackoverflow com questions 13103410 what does r suffix mean就这样 但我不确定它对于 PHP 是否相同 如果是 可重入的含义是什么 From PHP n
  • 我可以在 PHP 会话变量中安全地存储用户名和密码吗?

    我想在 REST api 之上制作一个轻量级的 web 应用程序 用户只需进行一次身份验证 从那时起 所有针对 web api 的请求都希望通过以某种方式保持用户名和密码有效来完成 我已经做了一个工作原型我在哪里将用户名和密码存储在会话变量
  • 如何使用 php 将 *.xlsb 转换为数组或 *.csv

    我正在尝试转换 xlsb文件到php array or csv文件 或至少 xls 我尝试使用PHPExcel 但看起来它无法识别该文件中的内容 我注意到 你可以重命名 xlsb文件到 zip文件 然后使用命令行解压缩unzip zip 之
  • 如果产品重量超过1000克,如何以公斤为单位显示

    在 Storefront 主题中 我使用下面的代码将格式化重量从 1000g 更改为 1kg add action woocommerce after shop loop item title show weight 10 function

随机推荐

  • 在 C# 中从 DataGridView 更新 SQL 数据库

    有一些关于此的教程 但我假设我一定实现了错误 因为我从组合教程中遵循的代码无法正常工作 这些是教程 https youtu be i4mYXSaD4w https youtu be sB0A6FIhUM 我正在尝试创建一个显示一些基本数据的
  • 在Prolog中逐行读取文件

    我想读取一个纯文本文件并对每一行应用一个谓词 谓词包含write其输出 我该怎么做呢 您可以使用read读取流 记得调用at end of stream以确保没有语法错误 例子 读文件 pl main open myFile txt rea
  • NSAutoresizingMaskLayoutConstraint 的 UITableViewCell 舍入错误,但在 Storyboard 和 heightForRowAtIndexPath 中正确设置大小:

    我正在尝试使用 AutoLayout 在表视图单元格中配置子视图 在理想情况下 希望表视图单元格的高度足以包含所有子视图 然而 这似乎不可能 因为单元的高度是在实际创建单元之前确定的 因此 现在 我只是查看了设置的约束并计算了包含所有内容所
  • 每个项目的 Terraform 都有不同的后端

    我是 Terraform 的新手 仍在研究文档 尚未找到一种方法来适应我需要实现的特定解决方案的设置 并希望某种灵魂能够能够推动我朝正确的方向前进 我正在尝试管理一组参数化模板 这些模板部署支持我们在 GCP 中开发的新应用程序所需的一切
  • Neo4j 中带空格的全文搜索

    当 neo4j lucene 自动索引处于精确模式 默认 时 查询类型为 start n node node auto index name asfd a return n 正常工作 假设您有一个名为asdf adsf例如 但是 当将索引切
  • 使用 Docker Swarm 和覆盖网络进行组播

    我正在测试使用多播进行发现的应用程序 我创建了一个 Swarm 集群和一个network create d overlay swarm net因此容器在多个 Swarm 代理主机之间共享相同的 LAN 发现好像不行 所以我安装了tshark
  • 新版本应用部署后需要重启apache + APC吗?

    当我们部署应用程序时 我们只需创建一个新文件夹并指向它的符号链接 这样 apache 就会始终找到最新版本 然而 当我们部署并继续测试而不首先重新启动 apache 服务器时 我们会遇到奇怪的错误 我们还运行了 APC 感觉缓存与此有关 当
  • 将数据从设备复制到主机时出现无效参数错误

    我在将数据从设备复制回主机时遇到问题 我的数据排列在一个结构中 typedef struct Array2D double arr int rows int cols Array2D arr是一个 平面 数组 rows and cols描述
  • 如何将 CORS 与 grails Rest API 一起使用?

    我正在使用 grails 开发 Rest Api 它正在 localhost 8080 上运行 当我与 POSTMAN 通话时 它以 json 响应 我想使用这些数据 并在其他域上运行的网页上执行 CRUD 操作 当我尝试调用用 grail
  • 解密使用 AES-128 加密的 M3U8 播放列表,无需 IV

    我目前正在构建一个用于下载 M3U8 播放列表的应用程序 但我遇到了一个问题 如果播放列表使用 AES 128 加密 例如有这样一行 EXT X KEY METHOD AES 128 URI https website com link k
  • R-标签中的剪切函数,无需科学记数法,可在 ggplot2 中使用

    我使用 cut 和 classIntervals 对 R 中的数据进行分组 然后使用 ggplot2 进行绘制 因此 按 n 3 的分位数进行切割的基本操作如下所示 library classInt a lt c 1 10 100 1000
  • Lua关闭/程序执行结束回调

    我正在为 Lua 编写一个模块 关闭 lua 解释器时 即使用户忘记隐式调用关闭例程 它也必须运行清理例程 该模块主要是用 C 编写的 我应该使用 Lua C Api 中的哪个回调来检测程序执行结束 我唯一的想法是在代表我的模块的表上使用
  • Angular 7 滤波器阵列

    我有以下角度组件 private json JsonResponseDTO constructor private dtoService PoolDTOServiceService ngOnInit this dtoService setJ
  • 如何使用 apt 安装指定版本的 Ruby

    我尝试安装指定版本 2 5 1 的 Ruby 该版本只是示例 并尝试执行以下脚本 但出现如下错误 是否可以使用 apt 安装来安装 Ruby 版本 以便我可以处理 Ruby 版本依赖性问题 sudo apt update sudo apt
  • rxjava:我可以使用 retry() 但有延迟吗?

    我在 Android 应用程序中使用 rxjava 来异步处理网络请求 现在我想仅在经过一定时间后重试失败的网络请求 有没有办法在 Observable 上使用 retry 但仅在一定延迟后重试 有没有办法让 Observable 知道当前
  • 为什么我收到“没有为复数定义排序关系”错误?

    See 这个问题一些背景 我在该问题上的主要问题已解决 建议我向另一个问题询问我遇到的第二个问题 print cubic 1 2 3 4 Correct solution about 1 65 if x gt 0 TypeError no
  • 如何在 django 模板中迭代查询集列表

    有没有办法在模板中迭代这个查询集列表
  • 解析 Prolog 中的表达式并返回抽象语法

    我必须编写 parse Tkns T 它接受标记列表形式的数学表达式并找到 T 并返回表示抽象语法的语句 尊重操作顺序和关联性 例如 parse num 3 plus num 2 star num 1 T T add integer 3 m
  • javascript - 在 html 中使用函数调用 - 坏还是好?

    使用 Angular 会带来很多奇怪的代码风格 比如我一直以为这个
  • 使用 PHP 和 Apache 路由 URL 路径

    我正在尝试为我的网站创建一个漂亮的网址结构 我的路由器类仅在 url 的样式为 something value 时才起作用 我如何得到它 它的工作方式如下 something value 在我的 htaccess 中我有 Options F