cakephp 2 css,javascript和链接无法在本地机器/ localhost上运行

时间:2017-06-17 06:48:34

标签: php .htaccess cakephp

我应该在webroot文件夹上使用什么htaccess设置。它似乎是为什么布局中的所有链接都不起作用的主要罪魁祸首。

view

enter image description here

这是webroot文件夹中的htaccess代码

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

该项目来自实时服务器,但我需要让它在我的本地计算机/ localhost上运行,以便我可以进行一些更改。但正如你在第一张图片上看到的那样,css,链接和javascript代码无法加载。

1 个答案:

答案 0 :(得分:1)

您的问题的核心是在localhost上,您在Apache文档根目录下的子文件夹中运行您的网站,并且您没有在链接中指定此子文件夹。因此,如果文件位于C:/xampp/htdocs/www/app/webroot/css/mysheet.css,则正确的方式是<link rel="stylesheet" href="/www/css/mysheet.css">

你有两个选择,你可以(我认为你应该)同时使用它们:

  1. 使用HtmlHelper
  2. 通过在视图中调用$this->Html->css("mysheet"),Cake将创建指向工作表的链接,它还将包含其基本文件夹。更多信息:HtmlHelper

    1. 使用本地域
    2. 您可以在xampp配置中设置本地虚拟主机。完成后,您将能够使用此域名而不是localhost / www访问您的本地网站。在下面的示例中,我将使用域mywebsite.local:

      2.1。转到C:/ xampp / apache / conf / extra并打开httpd-vhosts.conf。

      2.2。将以下代码添加到文件末尾:

      <VirtualHost *:80> DocumentRoot "C:/xampp/htdocs/www" ServerName mywebsite.local </VirtualHost>

      2.3。转到C:/ Windows / System32 / drivers / etc并使用管理员权限打开hosts文件。

      2.4。添加以下行:127.0.0.1 mywebsite.local

      2.5。重启Apache。

      现在,您可以在浏览器地址栏中输入http://mywebsite.local来访问您的本地网站。由于此虚拟主机的文档根目录为htdocs / www,因此所有css都应加载。