Symfony 3.3 - 链接到 bootstrap.min.css

Posted

技术标签:

【中文标题】Symfony 3.3 - 链接到 bootstrap.min.css【英文标题】:Symfony 3.3 - linking to bootstrap.min.css 【发布时间】:2017-12-15 18:07:27 【问题描述】:

在这个问题上投入了相当长的时间后,我仍然无法让它发挥作用。在我的 base.html.twig 文件中,我链接到 bootstrap.min.css 文件,该文件位于 web 目录内的 css/bootstrap.min.css,如下所示:

% block stylesheets %
<link rel="stylesheet" href=" asset('css/bootstrap.min.css') " />
% endblock %

然后我在我的模板文件中扩展 base.html.twig 文件,当我导航到这些文件中的任何一个时,我都会收到以下错误消息:

> Request URL:http://example/css/bootstrap.min.css
Request Method:GET
Status Code:404 Not Found

我不知道我在这里做错了什么!任何帮助将不胜感激。

base.html.twig 文件:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="../../favicon.ico">

    <title>% block title %Welcome!% endblock %</title>

    <!-- Bootstrap core CSS -->
    % block stylesheets %
    <link rel="stylesheet" href=" asset('css/bootstrap.min.css') " />
    <link rel="icon" type="image/x-icon" href=" asset('favicon.ico') " />
    % endblock %
  </head>

  <body>

    <nav class="navbar navbar-inverse">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="#">Todo List</a>
        </div>
        <div id="navbar" class="collapse navbar-collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="/">Home</a></li>
            <li><a href="/todo/create">Add todo</a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </nav>

    <div class="container">
      <div class="row">
        <div class="col-md-12">
          % block body %% endblock %
        </div>
      </div>
    </div><!-- /.container -->
    % block javascripts %
    % endblock %
  </body>
</html>

index.html.twig 文件:

% extends 'base.html.twig' %

% block body %
/INDEX
% endblock %

我的服务器配置:

<VirtualHost *:80>
DocumentRoot "/xampp/htdocs/symfony/todolist/web/app_dev.php"
ServerName todolist
</VirtualHost>

【问题讨论】:

你能发布你的扩展文件吗? 嗨@Arcv - 我已经包含了额外的信息。任何帮助,将不胜感激。谢谢。 你能从网络目录中检索任何东西吗?可能是服务器配置问题 @StasParshin 不,我注意到即使是默认的 symfony favicon.ico 也没有呈现。 你能发布你的服务器配置吗? 【参考方案1】:

所以您的 Apache 配置似乎是阻止您访问这些文件的原因。请改用以下版本:

<VirtualHost *:80>
    ServerName todolist
    DocumentRoot /xampp/htdocs/symfony/todolist/web
    <Directory /xampp/htdocs/symfony/todolist/web>
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>
</VirtualHost>

查看此页面了解更多信息:https://symfony.com/doc/current/setup/web_server_configuration.html

【讨论】:

以上是关于Symfony 3.3 - 链接到 bootstrap.min.css的主要内容,如果未能解决你的问题,请参考以下文章

symfony 3.3中的单个会话实现

Symfony 3.3 Doctrine Fixtures 加载跳过 SQL 视图

安装 sonata-project/user-bundle symfony 3.3 lts

Symfony 3.3 找不到路径“/login/check”的控制器。路由配置错误

如何在 Sonata Admin(Symfony 3.3、PHP 7)中使用自定义 javascript 为模态窗口扩展模板?

AWS VM 中 Capistrano 和 Symfony 3.3 的问题 Composer `Memory limit`