使用 htaccess 和 php 创建动态子目录

2024-01-31

每次用户在我的网站上注册时,我希望他们拥有自己的子目录及其注册的“用户名”。每个用户子目录都将具有相同的“index.php”文件,该文件将执行某些操作。

例如:“/users/username1/”和“/users/username2/”

如果有人想要访问子目录,他们只需转到: “www.example.com/users/username1/”或“www.example.com/users/username2/”

简单而混乱的解决方案是简单地为每个用户创建一个子目录,并在每个目录中放置相同的“index.php”文件。但对我来说,这只会占用我的服务器空间并使我的目录变大。

我想知道这一切是否可以使用 .htaccess 来完成?我可以创建一个“index.php”和一个“.htaccess”文件并将它们都放在我的“/users/”目录中吗?我必须放在 .htaccess 文件中的实际代码是什么?

如果您有更好的方法,请告诉我。我使用 Apache 和 PHP 作为我的工作环境。

谢谢


好吧,例如,您可以使用一个 htaccess 来完成这一切,如下所示:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

它能做什么:

  • 打开重写引擎
  • 检查请求的文件是否存在
  • 检查请求的目录是否存在
  • 如果不是,它将请求重定向到您的主index.php

基本上,这意味着如果您输入诸如 yourdomain.com/users/ivan/ 之类的网址,您的请求将被重定向到:

index.php?url=/users/ivan

然后你在index.php中使用$_GET['url']并将其分成几部分。

那只是一个example,还有其他 mod_rewrite 方法可以做到这一点。

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

使用 htaccess 和 php 创建动态子目录 的相关文章

  • 使用“INSERT ... ON DUPLICATE KEY UPDATE”插入多条记录

    我的表结构 table marks 我的目标 我想用条件插入或更新多条记录 我目前正在通过此查询进行检查 第一步 SELECT FROM marks WHERE student 115 AND param 1 第二步 if records
  • PHP 正则表达式匹配字符串的最后一次出现

    我的字符串是 text1 A373R12345 我想找到该字符串最后出现的非数字数字 所以我使用这个正则表达式 0 9 然后我得到这个结果 1 A373 2 12345 但我的预期结果是 1 A373R 它有 R 2 12345 另一个例子
  • 如何在 CakePHP 中“验证”人名?

    我有一个 PHP 脚本 应该检查 有效 的人名 但最近破解了带有空格的名称 因此我们向验证器添加了空格 除了这样做之外 有没有办法向 CakePHP 的验证器添加黑名单以阻止所有 无效 字符 而不是允许 有效 字符 注意 我 通常 知道如何
  • PHP:将多字节字符串(单词)拆分为单独的字符

    尝试使用 mb split 将这个字符串 主楼怎么走 分割成单独的字符 我需要一个数组 但没有成功 有什么建议吗 谢谢你 例如 尝试使用带有 u 选项的正则表达式 chars preg split u string 1 PREG SPLIT
  • php中的$$是什么意思? [复制]

    这个问题在这里已经有答案了 变量后面的两个背对背 是什么意思 像这样 id 我在哪里可以找到更多相关信息 谢谢 In PHP 意味着您将给至少一名维护程序员带来多年的痛苦和折磨 请注意 您最终可能会成为维护程序员 它是一个可变变量 想象一下
  • file_get_contents 大文件上传

    我正在尝试使用 fsockopen 上传 2GB 以上的大文件 但 file get content 出现以下错误 我无法在内存中存储大文件 我需要分块发送数据 但不知道如何执行此操作 请问有人可以指导我吗 致命错误 允许的内存大小 134
  • 解析错误:语法错误,意外的 T_RETURN [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 遇到这个问
  • 自定义帖子类型的 WordPress 自定义字段

    过去有几个人出现过这个问题 但他们的问题的解决方案对我来说不起作用 我已经尝试了很多 在 WordPress 中 我创建了 3 种自定义帖子类型 1 代表 视频 新闻 和 音乐 每个内容都发布到自己的页面 我想添加自定义字段 这样我就可以为
  • Laravel - 急切加载 Eloquent 模型的方法(而不是关系)

    就像我们可以急切加载 Eloquent 模型的关系一样 有没有办法急切加载不是 Eloquent 模型的关系方法的方法 例如 我有一个 Eloquent 模型GradeReport它有以下方法 public function totalSc
  • PHP - 警告:strpos() [function.strpos]: 空分隔符是什么意思?

    警告 strpos function strpos 空分隔符是什么意思 我有这个 if strpos 039 text false text str replace 039 text 猜测一下 我会说 text是一个空字符串 感谢马克指出细
  • Ajax文件上传

    我想使用 Ajax 和 php 上传文件 我有一个表格
  • 如何从脚本中创建新的 Joomla 用户帐户?

    我们正在为 Joomla 创建一个 XML API 允许合作伙伴网站在我们的网站上为其用户创建新帐户 我们已经创建了一个独立的 PHP 脚本来处理和验证 API 请求 但现在我们需要实际创建新帐户 我们最初只想进行 CURL 调用来提交注册
  • 纯基于网络的版本控制系统

    我的托管服务当前不允许在其服务器上运行 允许 svn git cvs 我真的希望能够将我的开发计算机上的当前源代码与我的生产服务器 同步 我正在寻找一个纯php python ruby版本控制系统 不只是一个client对于版本控制系统 不
  • PHP DOM - 剥离 span 标签,保留其内容

    我希望采用如下标记 span class test Some text that is strong bolded strong and contains a a href link a span 并在 PHP 中找到剥离跨度的最佳方法 剩
  • 使用 :hover 作为元素的内联样式(使用 HTML/CSS/php)[重复]

    这个问题在这里已经有答案了 可能的重复 如何将 a hover 规则嵌入到文档中间的样式属性中 https stackoverflow com questions 131653 how do i embed an ahover rule i
  • PHP Intl 扩展线程安全吗?

    我一直在阅读有关 PHP 中的语言环境的内容 看起来setlocale 线程有问题 我对线程不太熟悉 文档提到它不是线程安全的 我想让我的项目能够处理某些数字格式 并且 Intl 扩展似乎很有趣 http php net manual en
  • ACL授权失败后ZF3重定向

    我有一个带有 ACL 的新 ZF3 应用程序 现在 我需要在未经授权的访问的情况下重定向到错误页面 例如 403 我认为最好的方法是触发一个事件 然后捕获它 但我失败了 全部都在我的用户模块中Module php 摘录 namespace
  • php如何生成动态list()?

    根据我的理解 这就是 list 的工作原理 list A1 A2 A3 array B1 B2 B3 所以在帮助下list 我们可以相应地从数组中分配值 这是我的问题 如何生成动态list 1 基于数据库返回结果 我不确定有多少 但我将其全
  • PHP switch case 在 case 中存在多个值

    我有一个变量保存值 每周 每月 季度 和 年度 还有另一个变量保存值从 1 到 10 switch var2 case 1 var3 Weekly break case 2 var3 Weekly break case 3 var3 Mon
  • 为什么这评估为 true

    为什么这评估结果为真

随机推荐

  • 构建两个独立数据库集成的最佳方法?

    我在工作中遇到了以下问题 我没有经验或知识来回答这些问题 我希望你们中的一些明智的人能够为我指明正确的方向 任何答案将不胜感激 Scenario 实施立面图案 http en wikipedia org wiki Facade patter
  • 捕获 async void 方法抛出的异常

    使用 Microsoft for NET 的异步 CTP 是否可以在调用方法中捕获异步方法抛出的异常 public async void Foo var x await DoSomethingAsync Handle the result
  • 使用 Python 或其他方法从 PDF 中提取指向另一个 PDF 中页面的链接

    我有 5 个 PDF 文件 每个文件都有指向另一个 PDF 文件中不同页面的链接 这些文件都是大型 PDF 的目录 每个大约 1000 页 使得手动提取成为可能 但非常痛苦 到目前为止 我已尝试在 Acrobat Pro 中打开该文件 我可
  • 如何使用 xsl 1.0 查找最小值和最大值?

    文件 1 xml
  • 如何找到货币的 html 代码?

    美元 的html代码是 36 我如何找到其他货币的 html 代码 多谢 这里有一些 测试 Web 浏览器中的 Unicode 支持 货币符号 http www alanwood net unicode currency symbols h
  • Android 在主屏幕上创建快捷方式

    我想做的是 1 我在一个活动中 有 2 个按钮 如果我单击第一个 则会在主屏幕中创建快捷方式 快捷方式打开一个html页面之前已经下载过 所以我希望它使用默认浏览器 但我不想使用互联网 因为我已经有了该页面 2 第二个按钮创建另一个启动活动
  • 如何刷新 HTML bag 上的 Canvas?

    我有一个 javascript 程序 可以在屏幕上绘制一百个圆圈 它们可以在画布上自行弹跳 目前 我在它们上面画了一个空矩形以擦除它们的下一代 但是有没有更好的方法来擦除和刷新 HTML 页面上的 Canvas Code function
  • Webpack Karma Istanbul 重新映射 TypeScript

    我正在开发一个客户端应用程序 但在创建正确的 Karma 配置时遇到问题 现在 我的设置如下 Webpack 使用 ts loader 编译 TypeScript 资产等 Karma 使用 webpack 插件 加载 Webpack 配置
  • 使用 javascript 将换行符替换为空格

    我想看看是否可以阻止回车键并将其替换为空格 我还使用表单验证仅允许字母 数字和其他一些特定字符 例如美元符号 减号和句点等 这是该代码 我想看看是否可以将它们合并为一个 并能够检查验证并将按键替换为一个代码 调用中的空格
  • Weka 高斯过程算法中的错误:乘法仅适用于双精度数

    我有这个数据集 我想通过请求 API 将 weka 算法应用于它 RELATION dataset ATTRIBUTE timestamp DATE yyyy MM dd HH mm ss z ATTRIBUTE action scale
  • 在后退按钮上单击执行功能。

    On document ready我有一个函数 它收集具有 wordNum 属性的 html 控件 我发出一个 AJAX 请求 该请求返回每个控件的一些描述 然后我设置这些控件及其innerhtml带有返回描述的属性 问题是 如果用户单击后
  • 如何修复 python 请求中的 错误?

    我正在使用一个 API 它接收 pdf 文件并进行一些分析 但我总是收到 Response 500 最初使用 Postman 进行测试 请求通过 收到带有相应 JSON 信息的响应 200 应关闭 SSL 安全性 但是 当我尝试通过 Pyt
  • UIActivityViewController 在 iOS 7 上不显示 FB 和 Twitter

    我正在尝试使用 UIActivityViewController 分享一些项目 在 iOS 6 上它运行良好 但是当我在 iOS 7 上测试它时 只显示邮件图标 由于怀疑我的 SDK 太旧 我下载了最新的 SDK 但它的行为仍然相同 我在模
  • 在 Android Studio 中更改矢量资源的填充颜色

    Android Studio 现在支持 21 上的矢量资源 并将在编译时为较低版本生成 png 我有一个矢量资源 来自材质图标 我想更改填充颜色 这适用于 21 但生成的 png 不会改变颜色 有没有办法做到这一点
  • 从 VB6 向 MS Access 插入订单

    我有一个用于培训管理的旧 VB 应用程序 它是用 VB6 编写的 数据库是 MsAccess 当我使用该应用程序时 在保存培训课程时 所有记录都保存在以前的记录之间 不按顺序 它没有添加到最后一行 该应用程序还从数据库中获取数据并将其显示在
  • 如何从日期选择器设置区域设置格式?

    如何根据用户的区域设置在 jQuery UI 的日期选择器中设置日期格式 我得到源html
  • 尝试从 Azure 检索数据时出现 MobileServiceInvalidOperationException

    这是我正在使用的方法 try List
  • 在laravel中安装vue 3.0

    有没有办法将 vue 3 0 安装到 Laravel 8 当我跑步时 npm install vue next 它开始安装Vue 3 0 但由于某种原因它也开始安装vue template compilerv2 6 12 出现以下内容 Ad
  • RxJava重试时出现奇怪的行为

    我正在玩 RxJava重试时间 http reactivex io documentation operators retry html操作员 网上关于它的资料很少 唯一值得一提的是this http blog danlew net 201
  • 使用 htaccess 和 php 创建动态子目录

    每次用户在我的网站上注册时 我希望他们拥有自己的子目录及其注册的 用户名 每个用户子目录都将具有相同的 index php 文件 该文件将执行某些操作 例如 users username1 和 users username2 如果有人想要访