我有一个允许用户创建和构建网站的应用程序。我们称之为system.com。当用户创建一个具有他们已转发到我们的名称服务器的域(例如domain.com)的站点时,它会创建文件夹并通过 cPanel API 将他们的域添加到我们的服务器到一个文件夹,如system.com/[user id]/[站点 ID]/。在该文件夹中有一个 index.php 文件和一个 .htaccess 文件,内容如下:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)/$ index.php?page=$1 [L]
我不会从那里详细介绍它的工作原理,但基本上用户可以创建类似domain.com/something/something-else/的页面。“某物”文件夹显然并不真正存在,我们的系统只是从 htaccess 中获取它们并从那里开始。
我的问题是domain.com/something/something-else/有效,但domain.com/something/something-else返回 404。我一直在做研究并尝试了很多事情,但似乎无法使其正常工作。有任何想法吗?提前致谢。
编辑:
我应该提到到目前为止我所尝试的。我尝试将重写规则更改为无论斜杠如何工作,如下所示:
RewriteRule ^(.*)(?/$) index.php?page=$1 [L]
以及其他变化。
我也尝试了不同的方法来强制使用斜杠,但这些方法都没有奏效。