使用PHP静态文件加载程序加载CSS样式时出现问题

使用PHP静态文件加载程序加载CSS样式时出现问题,php,css,security,apache,.htaccess,Php,Css,Security,Apache,.htaccess,我确实有。也就是说:我在一些文件夹中有一些静态文件,我只希望一些用户看到这些内容。用户来自以前的登录 为了实现这一点,我尝试实施本主题中给出的第一个解决方案,即: 在“静态文件”下创建以下.htaccess文件: 然后在authorize.php中 if (isLoggedInUser()) readfile('static-files/'.$_REQUEST['file']); else echo 'denied'; 这个authorize.php文件过于简化,但是您得到了idea.kquo

我确实有。也就是说:我在一些文件夹中有一些静态文件,我只希望一些用户看到这些内容。用户来自以前的登录

为了实现这一点,我尝试实施本主题中给出的第一个解决方案,即:

在“静态文件”下创建以下.htaccess文件:

然后在authorize.php中

if (isLoggedInUser()) readfile('static-files/'.$_REQUEST['file']);
else echo 'denied';
这个authorize.php文件过于简化,但是您得到了idea.kquote

因此,将任何请求重定向到authorize.php文件,该文件检查用户是否登录,如果是,则提供内容

这与html、js和图像完美结合。。。但我不知道为什么css样式没有显示出来。这很奇怪,因为我可以用浏览器直接访问css文件,但是当它们从html调用时,它就不起作用了。当然,如果我尝试在没有authorize的情况下工作,则会像往常一样显示php样式

我错过了什么


谢谢,

您可能没有发送正确的
内容类型
标题。这使得样式表在Firefox中失败

做一个


每当请求CSS样式表时。

当脚本吐出CSS时,是否发出
内容类型:text/CSS
?外部css文件也需要适当的mime类型。谢谢@Marc B这正是问题所在。谢谢@Pekka这正是问题所在。现在解决了。但不仅仅是在Firefox中,因为我也在用Opera和Chrome进行测试。几年前,我对PHP和InternetExplorer4或5生成的CSS有一个问题,我不记得了。尝试打开CSS文件gzip时浏览器崩溃。
if (isLoggedInUser()) readfile('static-files/'.$_REQUEST['file']);
else echo 'denied';
header("Content-type: text/css");