2017-06-17 37 views
2

我应该在webroot文件夹上使用什么样的htaccess设置。它似乎是导致布局中的所有链接无法正常工作的主要罪魁祸首。cakephp 2 CSS,JavaScript和链接在本地计算机上不工作/ localhost

view

enter image description here

这里是根目录文件夹中的htaccess的代码

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

该项目是从活的服务器,但我需要让我的本地机器上运行/本地主机这样我可以做出一些改变。但正如您在第一张图片上看到的那样,css,链接和javascript代码不会加载。

+0

你需要调用CSS和JS与像HTTP相对路径://localhost/yourproject/css/filename.css –

+0

但这需要我改变整个系统的各个环节。我检查了代码的实时版本,它的工作。我只需要让它在我的本地机器上工作。 –

+0

你能告诉我你的基路径 –

回答

1

问题的核心是在本地主机上,您正在Apache文档根目录下的子文件夹中运行您的网站,并且您没有在链接中指定此子文件夹。所以如果文件驻留在C:/xampp/htdocs/www/app/webroot/css/mysheet.css中,正确的方法是<link rel="stylesheet" href="/www/css/mysheet.css">

你有两个选择这里,你可以(我想你应该)使用这两者:

  1. 使用的HtmlHelper

通过在您的视图中调用$this->Html->css("mysheet"),蛋糕将创建链接到您的工作表,它也将包括其基本文件夹。更多信息:HtmlHelper

  • 使用地域
  • 你可以设置你的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。

    +0

    我已经使用了html助手,它的工作原理,但有很多代码需要改变,所以你的第2号解决方案将是我认为最好的。如果仍有问题,我会回来。谢谢! –

    +0

    它工作完美!谢谢! –

    相关问题