1

Я только начал использовать codeigniter и получил его настройку, чтобы он не требовал index.php как часть URL-адреса.Как загрузить шрифт codeigniter awesome fontface url извне webroot?

Однако, я заметил, что ссылка на font-awesome работает неправильно. Следующее загружает штраф.

<link href="assets/plugins/font-awesome/css/font-awesome.css" rel="stylesheet" type="text/css" /> 

Однако шрифт .eot, Уофф и т.д ... не найден, и в результате чего значок появится в качестве 404.

@font-face { 
    font-family: 'FontAwesome'; 
    src: url('../fonts/fontawesome-webfont.eot?v=4.2.0'); 
    src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg'); 
    font-weight: normal; 
    font-style: normal; 
} 

Моя конфигурация:

$config['base_url'] = ''; 

Мой .htaccess:

RewriteEngine on 
RewriteCond $1 !^(index\.php|css|woff|eot|ttf|svg|css|js|resources|robots\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 

Любая помощь является признательной редактор

редактировать структуру папок я имею:

codeigniter/ 
-->application/ 
-->assets/ 
---->plugins 
---->plugins/font-awesome 
---->plugins/font-awesome/css 
---->plugins/font-awesome/fonts 
-->system/ 
-->.htaccess 
-->index.php 

ответ

1

Установите BaseUrl на ваш сайт URL в файле config.php как этот

$config['base_url'] = 'http://localhost/ci'; 

или добавить этот код в файл config.php

$root=(isset($_SERVER['HTTPS']) ? "https://" : "http://").$_SERVER['HTTP_HOST']; 
$root.= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']); 
$config['base_url'] = $root; 

это работает для меня 100 %;)

reference here

+0

Это был действительно базовый url. Я добавил немного логики здесь, чтобы использовать URL-адрес sandbox vs prod, и теперь он работает нормально. – Rick

0

ли вы поместить папку шрифтов в том же каталоге шрифтов-awesome.css помещен .. Вы должны убедиться, что папка (шрифты) и файл шрифт awesome.css находится в той же папке/директории ..

Из вашего вопроса, убедитесь, что папка шрифтов находится в папке CSS

+0

Привет, RobyMi, я предоставил свою структуру папок codeigniter. активы находятся за пределами веб-сайта. – Rick

+0

yes Я видел вашу структуру папок .. вы должны переместить папку шрифтов в папку css, где ваш шрифт - потрясающий. css-файл сохраняется, то есть как шрифт awesome видит шрифты, если вы не измените URL-адрес, указывающий на папку шрифтов, на какой-то другой путь. – RobyMi

0

у меня есть структура папок, как у вас, но я добавил в путь css сайта база URL:

<link href="<?php echo base_url('assets/plugins/font-awesome/css/font-awesome.css') ?>" rel="stylesheet"> 

Я надеюсь, что это работает для вас.