gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 12:21:48 24 4
gpt4 key购买 nike

每次用户在我的网站上注册时,我都希望他们拥有自己的子目录及其注册的“用户名”。每个用户子目录都将具有相同的“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']并将其分成几部分。

这只是一个示例,还有其他 mod_rewrite 方法可以执行此操作。

关于php - 使用 htaccess 和 php 创建动态子目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1283225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com