Обслуживание статических файлов с mod_wsgi и Django

Если вы хотите настроить компоненты материала Angular и предоставить свои собственные стили для заполнителя для матовых фишек, у меня есть следующие предложения. Вы можете использовать один из них.

1) Перезаписать классы на вашем основном style.css (или style.scss, в зависимости от того, что вы используете). Если вам интересно, это тот, который находится на том же уровне каталогов, что и ваш index.html, main.ts, package.json и т. Д. Вам может понадобиться добавить объявление !important

.mat-form-field-label {
  color:blue!important;
}

[1118 ] 2) Используйте ViewEncapsulation:None. Это удаляет всю инкапсуляцию, так что правила CSS будут иметь глобальный эффект.

В ваш component.ts вам нужно будет импортировать ViewEncapsulation, а затем выбрать None, когда вы предоставите определения для инкапсуляции

import { .. ViewEncapsulation } from '@angular/core';
.
.
@Component({
  selector: 'chips-autocomplete-example',
  templateUrl: 'chips-autocomplete-example.html',
  styleUrls: ['chips-autocomplete-example.css'],
  encapsulation: ViewEncapsulation.None
})

И в вашем component.css,

[112 ]

3) Настройка директивы MatPlaceholder (переопределение заполнителя Angular Material css без использования! Important) [EDIT]

В соответствии с API поля формы углового материала , оказывается, директива-заполнитель доступна после того, как мы импортировали этот модуль.

В вашем component.html включите директиву с пользовательским классом в свой и удалите заполнитель из в


  Search
         
    
      {{fruit}}
      cancel
    
    
  
  
    
      {{fruit}}
    
  

И на своем component.css, определите класс .placeholder (назначенный директиве mat-placeholder) с вашими пользовательскими свойствами CSS.

.placeholder {
  color: green
}

10
задан unmounted 8 April 2009 в 22:47
поделиться

2 ответа

В документации по mod_wsgi объясняется, как настроить статические файлы, которые появляются по URL-адресу под тем URL, по которому смонтировано приложение WSGI. См.:

http://code.google.com/p/modwsgi/wiki/ConfigurationGuidelines#Hosting_Of_Static_Files

Обратите внимание, что «Параметры + ExecCGI» не нужны при использовании директивы WSGIScriptAlias ​​для монтирования приложения WSGI. Параметр ExecCGI требуется только при использовании AddHandler для монтирования приложений в качестве ресурсов.

13
ответ дан 3 December 2019 в 15:06
поделиться

Я управляю примерно дюжиной сайтов Django на одном сервере, и вот как я настраиваю медиа-URL.

Каждый VirtualHost имеет следующую конфигурацию:

Alias /media /path/to/media/
<Directory /path/to/media>
    Include /etc/apache2/vhosts.d/media.include
</Directory>

Таким образом, я могу внести любые изменения в обработку мультимедиа в одном файле.

Затем мой файл media.include выглядит следующим образом:

Order allow,deny
Allow from all
SetHandler None
FileETag none
Options FollowSymLinks

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/gif "access plus 30 days"
    ExpiresByType image/jpg "access plus 30 days"
    ExpiresByType image/png "access plus 30 days"
    ExpiresByType image/jpeg "access plus 30 days"
    ExpiresByType text/css "access plus 30 days"
    ExpiresByType application/x-javascript "modification plus 2 years"
</IfModule>

<IfModule mod_headers.c>
    Header append Vary Accept-Encoding
</IfModule>

AddOutputFilterByType DEFLATE text/html text/css text/plain

Это очень хорошо сработало для меня, и получает оценку A от YSlow (также см. Джефф Этвуд на YSlow ).

Также обратите внимание, что для корневого каталога я использую следующую конфигурацию:

WSGIScriptAlias / /path/to/app.wsgi
<Directory /path/to>
    Options +ExecCGI
    Allow from all
</Directory>

... которое должно быть после псевдонима / носителя в вашем файле конфигурации (потому что Apache просматривает псевдонимы по порядку)

17
ответ дан 3 December 2019 в 15:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: