3

我刚刚将我的网站上传到服务器,但没有加载 css 和 js 文件,只有我可以像文本一样看到网站,在将 .htaccess 文件放在他们的位置后,我在网站中收到了这条消息:

内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。

请联系服务器管理员,并告知他们错误发生的时间,以及您所做的任何可能导致错误的事情。

服务器错误日志中可能提供有关此错误的更多信息。

此外,在尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误。

这些是我的 .htaccess 文件

/万维网/

 <IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

/www/app/

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule    ^$    webroot/    [L]
RewriteRule    (.*) webroot/$1    [L]

/www/app/webroot/

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

一些想法为什么不工作?我希望你能帮助我,谢谢。

<?php

    echo $this->Html->css('bootstrap');
    echo $this->Html->css('styles');

    echo $this->Html->script('jquery');
    echo $this->Html->script('bootstrap.min');

    echo $this->fetch('meta');
    echo $this->fetch('css');
    echo $this->fetch('script');

?>
4

4 回答 4

5

我解决了我的问题,解决方案首先(在我的情况下)删除三个 .htaccess 文件并在 app/config/core.php 中编辑这一行

//Configure::write('App.baseUrl', env('SCRIPT_NAME'));

对此:

Configure::write('App.baseUrl', env('SCRIPT_NAME'));

它对我有用,无论如何,谢谢大家。

于 2015-05-30T06:04:50.567 回答
1

关于CSSJS加载问题,请验证mod_rewrite您的服务器是否启用。

于 2015-05-29T20:03:09.657 回答
0

我猜您的“干净”网址都不起作用,而不仅仅是您的 CSS/JS 文件。因此,首先,检查服务器上是否启用了 mod_rewrite。你可以通过检查它是否被列为启用的模块之一来做到这一点phpinfo()

如果启用它,您可能需要检查您的虚拟主机是否配置正确。你应该AllowOverride All在你的虚拟主机的 conf 文件中有这样的东西: -

<VirtualHost *:80>
    ...
    <Directory "/var/www/vhosts/example.com">
        AllowOverride All
    </Directory>
</VirtualHost>
于 2015-05-29T21:08:51.987 回答
0

请删除所有 .htaccess 文件并启用:

配置::write('App.baseUrl', env('SCRIPT_NAME'));

在 app/config/core.php 中。它工作正常。

于 2018-01-24T08:26:37.780 回答