Apache 同一个PHP文件用于整个目录

Apache 同一个PHP文件用于整个目录,apache,.htaccess,mod-rewrite,url-rewriting,friendly-url,Apache,.htaccess,Mod Rewrite,Url Rewriting,Friendly Url,我的网站上有一个目录。我们叫它/dir/。我希望该目录中有一个PHP文件(/dir/index.PHP),我希望以/dir(aka/dir/any.file)开头的任何URL都显示相同的文件(/dir/index.PHP)。(文件将解析URL并根据URL返回不同的信息)我不希望页面重定向,因为这会使URL发生更改,然后我将无法解析它 我该怎么做?我应该在404.php的开头添加一个if语句“if URL以/dir/开头,include/dir/index.php”吗?还是这是一个糟糕的做法/有更

我的网站上有一个目录。我们叫它/dir/。我希望该目录中有一个PHP文件(/dir/index.PHP),我希望以/dir(aka/dir/any.file)开头的任何URL都显示相同的文件(/dir/index.PHP)。(文件将解析URL并根据URL返回不同的信息)我不希望页面重定向,因为这会使URL发生更改,然后我将无法解析它

我该怎么做?我应该在404.php的开头添加一个if语句“if URL以/dir/开头,include/dir/index.php”吗?还是这是一个糟糕的做法/有更好的方法吗?我也不希望这样做,因为这样会把我的错误日志弄得乱七八糟


我想它是带有.htaccess的,对吧?

请您尝试以下内容,并用显示的样本编写和测试。请将.htaccess文件与dir文件夹保持在同一级别(请不要放在dir文件夹内),dir应该有index.php文件init。这将重写任何以dir开头的url到index.php

此外,在网页的标题中添加此
,以便可以从正确的位置加载相对链接(在多级情况下,防止css/js文件相对路径断开链接)

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(dir).*$ $1/index.php [NC,L]