我在example.com上有一个网站。 我已经构建了一个基于Laravel的CMS来管理小型站点,现在尝试设置重写。
在根目录中,我的.htaccess有:
RewriteRule ^(lorem|ipsum)/?(.*) cms/public/$2 [L,PT]
因为我想将example.com/lorem和example.com/ipsum重写为我的CMS。这很好,但是我在cms / public /中有另一个.htaccess:
RewriteRule assets/(.*) assets/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php
那是因为我想从example.com/lorem/any/location/assets/file.css
获得cms / public / assets /并将其他所有内容重定向到index.php。
似乎工作,但是我注意到所有文件(包括图像)都作为text/html
提供,即使在非PHP文件中也会执行PHP代码。为什么会发生这种情况以及如何解决?
答案 0 :(得分:0)
事实上,改写并不是罪魁祸首。我将Use php54
放入cms / .htaccess中,此行之前应为:Location *.php
。添加后,一切都很完美。