首页 > 解决方案 > PHP根据http请求创建目录

问题描述

我正在创建一个有多个用户的网站。每个用户都会获得一个类似http://example.com/username/ 的目录,我已经创建了数百个目录,其中包含此代码。

define("_USER_", basename(__DIR__));
require(__DIR__.'/../index.php'); 

所以它获取主 index.php 并向用户显示站点,常量USER用于从 mySQL 获取用户数据。

当用户请求http://example.com/username/时,是否可以创建一个“用户名”目录,或者是否有办法让浏览器看起来它位于请求的目录中。谢谢。

标签: php

解决方案


你这样做的方式非常低效。您可以将所有不存在的文件请求重定向到单个 index.php。.htaccess 会有这样的东西:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /index.php [L,QSA]

如果/username/不存在,/index.php将被执行。


推荐阅读