经过几个小时搞乱.htaccess后,我已经到了将任何请求发送到单个PHP脚本的结论,该脚本将处理:
留下.htaccess最小的功能.
经过一些测试后,它似乎非常可行,从我的角度来看更为可取.这么多,我想知道这种方法有什么不对或可能出错?
redirector.php会期望一个包含实际请求的查询字符串.将所有内容发送到那里的.htaccess代码是什么?
我更喜欢将所有 php 文件移到其他目录中,并仅将 1 个 php 文件放入处理所有请求的 htdocs 路径中。其他你想在没有 php 的情况下传递的文件,你也可以使用这个 htaccess 放置在该文件夹中:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php/$0 [L]
Run Code Online (Sandbox Code Playgroud)
没有 PHP 仍然可以访问现有文件(JPG、JS 或其他文件)。这是实现它的最灵活的方式。
例子:
- /scripts/ # Your PHP Files
- /htdocs/index.php # HTTP reachable Path
- /htdocs/images/test.jpg # reachable without PHP
- /private_files/images/test.jpg # only reachable over a PHP script
Run Code Online (Sandbox Code Playgroud)