使用 mod_rewrite 从 url 中删除两个子目录

2024-01-07

我正在尝试删除网站上的一些子目录。目前,当我需要访问用户设置时,我使用这个username.mywebsite.com/public/user/settings.php我希望它看起来像username.mywebsite.com/settings.php。在我的根目录中有一个 htaccess 文件,其中包含以下内容:

RewriteCond %{REQUEST_URI} !^/public/user

RewriteRule ^/(.*)$ /public/user/$1

它不起作用。另外,我是否必须像这样修改html href<a href="/settings.php">?谢谢


你需要摆脱领先的/在你的正则表达式模式中。当 URI 通过 htaccess 文件中的规则发送时,斜杠将被去除。另外,您应该在重写到之前检查目的地是否存在/public/user/目录:

RewriteCond %{REQUEST_URI} !^/public/user
RewriteCond %{DOCUMENT_ROOT}/public/user%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/public/user%{REQUEST_URI} -d
RewriteRule ^(.*)$ /public/user/$1 [L]

另外,我是否必须像这样修改html href<a href="/settings.php">?

是的,该规则仅适用于一个方向,即正则表达式模式to目标。从来没有相反。因此,您需要确保您的内容具有您想要使用的 URL。

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

使用 mod_rewrite 从 url 中删除两个子目录 的相关文章

  • Apache HTTP localhost 在 macOS Monterey 上随机花费 5 秒,但在 HTTPS 上速度很快

    我尽可能地等待 但最终不得不从莫哈韦升级 我知道有些东西会不必要地损坏 当然确实如此 较大的文件 超过 100k 随机需要 5 秒才能加载 它并不总是相同的文件 也不是每次都相同 并且它只发生在 HTTP Apache 中 尝试过端口 80
  • 使用 htaccess 将 URL 重定向到特定于应用程序的深层链接

    我正在尝试执行以下操作 用户访问带有查询参数的 URL http www example com invite 1234 然后我希望他们深入链接到 iOS 设备上的应用程序 因此他们会转到 app name 1234 关于如何在我的中实现此
  • 没有名为 pyvirtualdisplay 的模块

    我在 python 代码中导入了这个 import time import sys from pyvirtualdisplay import Display from selenium import webdriver 当我从 centos
  • htaccess 中的重写规则以匹配某些文件扩展名

    如何查找某些文件扩展名的实例 例如 jpg png css js php 如果没有匹配项 则将其发送到 index php route 1 我希望能够允许自定义用户名使用句点 所以 重写http example com my name ht
  • 在Java中解析包含multipart/form-data请求体的字符串

    问题陈述 我认为标题说明了一切 我正在寻找解析 a 的方法String包含 multipart form data HTTP 请求的正文部分 IE 字符串的内容看起来像这样 xyzseparator blah Content Disposi
  • Xampp 中的 phpMyAdmin 不工作

    在 Windows 7 环境中的 Xampp 中启动 apache 和 mysql 服务器后 当我输入 localhost phpMyAdmin 时 出现以下错误 有什么办法可以解决这个问题吗 Not Found The requested
  • Apache PDFBox:将最后一页移动到首页

    我正在使用 Apache PDFBox 编写一个简单的 Java 应用程序 我有几个 PDF 其中最后一页是前几页内容的索引 我需要索引 最后一页 成为PDF文件的第一页 是否可以 我还发现了http itextpdf com http i
  • 使用 apache vhost 配置重定向到新域

    我有一个 apache 虚拟主机配置如下 我想要我所有的请求 somedomain com loadproduct product dell inspiron 15 被重定向到 someotherdomain com dell inspir
  • Django + WSGI:刷新问题?

    我正在开发一个 Django 网站 我在实时服务器上进行所有更改 只是因为这样更容易 问题是 它似乎时不时地喜欢缓存我正在处理的 py 文件之一 有时 如果我频繁点击刷新 它会在页面的旧版本和新版本之间来回切换 我的设置或多或少类似于 Dj
  • apache2.4.7 未将“404 Not Found”页面记录到 error.log

    我见过有关如何做的问题not将404错误记录到错误日志中 这是相反的 由于某种原因 我的 apache 安装没有将 404 错误记录到我的错误日志 或与此相关的访问日志 我已经正确设置了错误日志并看到了错误 但是当我访问不存在的页面时 我只
  • HTAccess - 令人困惑的干净网址

    如果我想简单地重定向 clients page to clients php view page我会使用像这样简单的东西 它效果很好 Options FollowSymlinks RewriteEngine on RewriteRule c
  • Apache HtAccess AddHandler 以服务器名或 ip 为条件

    我在 Site5 上托管我的临时和生产服务器 在我看来 Site5 是一个相对较好的托管商 问题不在于它们的质量 而在于与 PHP 版本相关的问题 我们的开发服务器使用的是 PHP 5 3 这是一个很好的版本 5 4 太新了 我们还不想使用
  • MySQL 与 PHP 的连接无法正常工作

    这是我的情况 我正在尝试使用 Apache 服务器上的 PHP 文件连接到 MySQL 数据库 现在 当我从终端运行 PHP 时 我的 PHP 可以连接到 MySQL 数据库 使用 php f file php 但是当我从网页执行它时 它只
  • PHP、htaccess:在 URL 中应用页面标题

    我想在 URL 中应用页面 HTML 标题 例如 在这里 stackoverflow url 是这样的 http stackoverflow com questions 10000000 get the title of a page ur
  • 使用ip地址访问时删除index.php

    我在服务器上上传了 codeigniter 项目 从 URL 中删除 index php 不起作用 我使用IP地址访问它 喜欢http ip http ip地址 下面是我的htaccess
  • 运行没有扩展名的 PHP 页面

    我想在 apache Web 服务器上运行我的 PHP 网页 而不需要 php扩大 所以我添加了以下代码 RewriteEngine on RewriteBase Rewritecond REQUEST URI NC RewriteRule
  • 重写规则,以便正确加载具有绝对路径的 css 和 js 文件

    我花了两个小时 但我无法弄清楚 我不知道如何谷歌解决方案 这是我在 htaccess 文件中的重写规则 RewriteCond REQUEST URI blog RewriteRule blog http localhost 2368 1
  • Apache 从子域重写为 www 但保留所有永久链接

    我已经研究了大约 2 个小时 虽然大多数主题都很相似 但没有一个解释如何做我想做的事情 我正在将一个结构为 blog domain com 的博客移至 www domain com blog 当我重定向时 我需要保留博客文章的永久链接 所以
  • .htaccess 异常导致主目录出现问题

    这是我的目录结构 localhost or livehost app bootstrap public vendor code demo 这是我的 htaccess
  • URL 中的 %2F 中断并且未引用所需的 .php 文件 [重复]

    这个问题在这里已经有答案了 我需要将 作为变量作为 URL 的一部分传递 我的结构如下所示 www domain com listings page 1 city Burnaby South type Townhome bedroom 2

随机推荐

  • 计算两个字符串之间的差异

    我试图计算两个导入的字符串 seq1 和 seq2 导入代码未列出 之间的差异数量 但在运行程序时没有得到任何结果 我希望输出显示为 2 个差异 之类的内容 不知道我哪里错了 def difference seq1 seq2 count 0
  • 计算另一个模型 Django 的点赞数

    实现一个用户可以喜欢宠物的相似模型 如果用户按下like isLike将为true 而like则为true isLike为false 模型 class pet models Model name models CharField max l
  • 如何将 printf 的输出存储在变量中并格式化? [复制]

    这个问题在这里已经有答案了 我想存储的输出printf在变量中进行格式化 但由于某种原因它删除了格式化 这是正确的输出 printf 40s 8s 9s 7s File system Free Refquota Free File syst
  • 如何使用 jQuery 动态地从具有相同名称的多个输入、输入字段中获取值?

    我想通过单击按钮动态添加金额 数量 小计字段作为发票项目 但问题是当我想获得的价值quantity and amount每次计算输入字段值时 由于 id 名称相同 我无法使用 jquery 获取该值 如何获取动态字段值来计算小计 这是代码
  • Zoomooz ZoomContainer 移开

    我正在尝试使用 Zoomooz jquery mouse wheel 和 jquery kinetic js 在表单设计器中实现自由拖动 滚动功能的缩放 这是该功能的演示 http jsfiddle net mVf8Z http jsfid
  • 将输入流转换为文件输入流

    我读过这篇文章如何将InputStream转换为FileInputStream https stackoverflow com questions 2353057 how to convert inputstream to fileinpu
  • 从 Google 趋势下载 .csv 文件

    我希望从我通过代码创建的网址下载 Google 趋势数据 这些 URL 当放入浏览器 我使用 Firefox 时会显示一个保存提示 我可以在浏览浏览器时选择打开或保存文件 但是 我希望通过代码获得包含 Google 趋势数据的同一个 csv
  • Python IDLE 相当于 R 中的 CTRL-R

    如果您在 Windows 版本的 R 中打开了一个脚本 则可以通过按 CTRL R 相信在苹果版本中是 command enter 在 shell 中运行一行 或突出显示的代码部分 IDLE 有类似的功能吗 非常感谢 No 在IDLE的快捷
  • Scala:如何按元组的第一个元素合并列表

    假设我有一个清单 A a A b A c B a B d 我如何将该列表变成 A a b c B a d 具有单一功能 Thanks The groupBy http www scala lang org api 2 12 x scala
  • 真正删除 XMLParser Object Groovy 中的节点

    如何通过 XMLParser 真正删除节点 x
  • 如何处理 Camel FTP 的“主机尝试数据连接 x.x.x.x 与服务器 y.y.y.y 不同”错误?

    我正在尝试使用 Camel FTP Producer 将文件发送到第三方 ftp 服务器 似乎由 Amazon 托管 并且遇到了一个问题Writing File failed with File operation failed Host
  • kubectl 仅获取 pod 的事件

    当我跑步时kubectl n abc namespace describe pod my pod zl6m6 最后我得到了很多关于 pod 以及事件的信息 有没有办法只输出 pod 的事件kubectl describe or kubect
  • 如何在 Linux 上用 C++ 截取被遮挡窗口的屏幕截图

    我正在尝试弄清楚如何截取当前未聚焦的窗口的屏幕截图 因此该窗口很可能会被其他窗口部分或完全遮挡 我在此链接上找到了一个示例使用 X11 的 Xcomposite 扩展获取被覆盖 不可见或最小化的窗口的屏幕截图 https stackover
  • 如何将旧备份从 SQL Server 7 SP4 恢复到最新的 SQL Server 版本? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试恢复我的一个非常旧的代码 当时数据库是ms access 然后我升级到SQL Server 7 SP4 现在我想恢复那些旧的备份
  • 如何将库添加到 xcode [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 这个问题已经被问过很多次了 但我总是
  • OpenLayers 动画 getView().fit()

    我一直在研究 openlayers 的动画功能 我可以看到使用缩放到给定点和分辨率是多么简单 view animate center position zoom 11 但我不知道如何制作动画 map getView fit extent m
  • 通过 AWS ECS 在一个 EC2 实例中使用多个 docker 容器

    是否可以通过AWS ECS EC2容器服务 在一个EC2实例中运行多个docker容器 Yes AWS 文档 产品细节从未明确提及 但它谈到了向集群启动许多容器 一个集群可以是一个实例 配置容器时 https docs aws amazon
  • Vista 中 CEdit 中的 SetLimitText() 不起作用

    Vista 上就发生了这种情况 我创建了一个新的基于对话框的 MFC 项目来测试这一点 我在对话框中添加了一个 CEdit 控件 我调用 SetLimitText 让我的 CEdit 接收 100000 个字符 我都尝试过 this gt
  • 如何用Java编写“所有这些数字都不同”的条件?

    好的 我有这个问题要解决 但我无法正确地用 Java 编程 看下图 你会看到一个 6 角星 每个点和线的交点都是一个字母 作业是将数字 1 到 12 的位置设置为使得四个球的所有线的总和为 26 并且星形的所有 6 个点的总和也为 26 这
  • 使用 mod_rewrite 从 url 中删除两个子目录

    我正在尝试删除网站上的一些子目录 目前 当我需要访问用户设置时 我使用这个username mywebsite com public user settings php我希望它看起来像username mywebsite com setti