2

我使用以下.htaccess将所有请求重定向到我的 index.php,除非存在文件夹或文件。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?uri=$1 [QSA]

但是,如果我尝试使用domain.com/thing/a/thing/b之类的 url ,我会被重定向到我的 index.php,但其他一切都搞砸了。html 没有正确链接到样式表等等。

我的应用程序工作起来有点像 MVC 框架,即一切都发生在 index.php 上。所以我不希望其他文件可以访问,除了公共文件夹中的文件和一些特定文件。即根目录中的 cron.php 和文件夹结构中的一些 css/js/image 文件。

有关文件结构的更多详细信息:https ://bitbucket.org/BrainInBlack/source-motd-plus/src

还是我必须用绝对路径链接样式表和其他东西,即“http://domain.com/path/to/style.css”等等?

4

2 回答 2

2

之前使用斜线客户端(.*)$ index.php?uri=$1

使用此代码:

RewriteRule ^/client(.*)$ index.php?uri=$1
于 2012-10-09T07:38:50.563 回答
0

您要么需要将所有链接更改为绝对链接,要么添加

<base href="http://domain.com/">

到页面的标题。

于 2012-10-10T05:09:44.477 回答