Вы всегда можете сказать EF об этом с условностями в классе Context в функции OnModelCreating следующим образом:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
// <... other configurations ...>
// modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
// modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>();
// modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
// Configure Decimal to always have a precision of 18 and a scale of 4
modelBuilder.Conventions.Remove<DecimalPropertyConvention>();
modelBuilder.Conventions.Add(new DecimalPropertyConvention(18, 4));
base.OnModelCreating(modelBuilder);
}
Это относится только к Code First EF fyi и применяется ко всем десятичным типам, сопоставленным с db.
Apache обычно будет выбирать первый виртуальный хост чей ServerName
или ServerAlias
соответствия имя хоста, обеспеченное в Host
HTTP-заголовок. В Вашем случае, так как у Вас нет никакого ServerName
директивы, Apache, предположительно, использует обратный поиск DNS на IP-адресе для фальсифицирования имени сервера, и предполагая, что обратный DNS приводит к domain.com, который не соответствует, Apache затем значения по умолчанию к первому виртуальному хосту. Звуки усложнили, я знаю..., что нижняя строка, необходимо использовать ServerName
и ServerAlias
для создания конфигурации явной. Попробуйте что-то больше как это:
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
ServerName domain.com
ServerAlias www.domain.com
VirtualDocumentRoot /var/www/%0
</VirtualHost>
<VirtualHost 127.0.0.1>
ServerName sub.domain.com
ServerAlias *.domain.com
VirtualDocumentRoot /var/www/%2.%3_%1
</VirtualHost>
, Который должен использовать /var/www/domain.com
для [1 111] http://domain.com и /var/www/www.domain.com
для [1 112] http://www.domain.com , оба из которых подаются первым vhost, и /var/www/sub.domain.com
для [1 113] http://sub.domain.com , /var/www/blah.domain.com
для [1 114] http://blah.domain.com , и так далее.
В этой конфигурации я заметил, что $ _SERVER ['DOCUMENT_ROOT'] указывает на / var / www / html, а не на корень документации виртуального хоста. . странно.
Обновление (2010-07-24):
Я только что написал в блоге сообщение о том, как настроить HTTP-сервер проверки http://www.devcha.com/2010/07/ как настроить-ваш-http-proof-server.html
Относительно OP и проблемы с установкой "/ var / www / html":
Проблема, с которой я столкнулся, заключалась в использовании% 1 вместо% 2. Вот мой рабочий пример:
ServerAlias www.*.org.au
UseCanonicalName Off
VirtualDocumentRoot /path/to/sites/%2/pub
Надеюсь, это кому-то поможет!
Я читал документы по «Интерполяции имен каталогов» в документах mod_vhost_alias .
Вы должны указать обратные ссылки, если хотите поставить '.' в пути к файлу. Итак, вам нужно, чтобы это было так:
VirtualDocumentRoot /var/www/%2.0.%3_%1