mod_mono на SLES 12.1 не может зашифровать ASP.Net web.config

Я пытаюсь перенести веб-приложение ASP.Net (2.0) VB с сервера SLES 11 на новый сервер SLES 12. К сожалению, mono больше не поддерживается Novell / SUSE / NetIQ folk.

Это моя первая разработка для сочетания Apache mono / mod_mono. Это был довольно учебный опыт. Я не уверен, что у меня есть все (моно версии / repos / configs), которые выстраиваются правильно. С Visual Studio 2008 многое изменилось. Я надеюсь, что экс-Novell или другой моно-эксперт поможет мне разобраться в ситуации.

Поэтому, после больших усилий, мне удалось получить несколько рабочих решений, но я не могу зашифровать web.config. Вместо создания зашифрованного раздела connectionString web.config вызов защиты ест большую часть файла и выводит страницу с сообщением об ошибке

System.Xml.XmlException

Отсутствует элемент корня.

неудивительно, поскольку веб-конфиг сводится к …

<?xml version="1.0" encoding="utf-8"?> <configuration><appSettings> </appSettings></configuration> 

из

 ?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> </appSettings> <connectionStrings> <add name="websalesConnectionString" connectionString="server=192.168.85.15;User Id=zzzz;password=zzzz;Persist Security Info=True;database=websales" providerName="MySql.Data.MySqlClient"/> </connectionStrings> <system.data> <DbProviderFactories> <remove invariant="MySql.Data.MySqlClient" /> <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories> </system.data> <system.web> <authentication mode="Windows" /> <httpRuntime maxRequestLength="1048576" executionTimeout="3600" /> <compilation debug="true" strict="false" explicit="true"> <assemblies> <add assembly="*" /> </assemblies> </compilation> <customErrors mode="Off" /> <pages> <namespaces> <clear /> <add namespace="System" /> <add namespace="System.Collections" /> <add namespace="System.Collections.Generic" /> <add namespace="System.Collections.Specialized" /> <add namespace="System.Configuration" /> <add namespace="System.Text" /> <add namespace="System.Text.RegularExpressions" /> <add namespace="System.Web" /> <add namespace="System.Web.Caching" /> <add namespace="System.Web.SessionState" /> <add namespace="System.Web.Security" /> <add namespace="System.Web.Profile" /> <add namespace="System.Web.UI" /> <add namespace="System.Web.UI.WebControls" /> <add namespace="System.Web.UI.WebControls.WebParts" /> <add namespace="System.Web.UI.HtmlControls" /> </namespaces> </pages> </system.web> </configuration> 

Вот метод, который вызывается для шифрования (файла питания)

 Public Sub webencrypt(ByVal lEncrypt As Boolean) Dim config As Configuration = WebConfigurationManager.OpenWebConfiguration("~") Dim configSection As ConfigurationSection = config.GetSection("connectionStrings") If lEncrypt Then If Not configSection.SectionInformation.IsProtected Then configSection.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider") config.Save() End If End If End Sub 

Я пробовал код с: http://www.developersalley.com/blog/post/2011/11/22/How-To-Protect-Webconfig-File.aspx

и от: http://devproconnections.com/aspnet/encrypting-configuration-file-sections

Информация о версии

  • Apache2 (2.4.16)
  • Apache2-mod-mono (3.12-1)
  • Моно (4.2.2.30)
  • ASP.Net (2.0)

мод-моно-serverX.exe

Еще одна загадка заключается в том, что ошибки mod-mono-server2.exe появляются в журнале apache. Почему mod-mono-server2.exe (его обертка в / usr / bin) вызывается?

Невозможно открыть сборку /usr/lib/mono/2.0/mod-mono-server2.exe: нет такого файла или каталога.

Я специально использую директиву apache mod_mono MonoServerPath для вызова mod-mono-server4.exe.

… MonoServerPath webtest "/ usr / bin / mod-mono-server4" …

Какие звонки

/usr/lib/mono/4.5/mod-mono-server4.exe

что указывает на

mod-mono-server4.exe -> ../gac/mod-mono-server4/4.2.0.0__0738eb9f132ed756/mod-mono-server4.exe

mod-mono-server2.exe не установлен с последним моно AFAIK. Многие комбинации / тесты необходимы, чтобы понять это, поскольку документы все еще относятся к mod-mono-server для ASP 1 и mod-mono-server2 для ASP 2 …. и не о слове mod-mono-server4.

Я могу игнорировать ошибки и / или переопределять моно-обертки, чтобы все указывали на mod-mono-server4 … но это тоже не так.

Interesting Posts

Как получить простые скрипты, которые, как представляется, нуждаются в корневых привилегиях для запуска через пользователя www-data?

Почему блок-разделитель (ASCII 31) невидим в выводах терминала?

Влияют ли параметры и имя на команду в Linux?

Измените выход (приемник) с помощью терминала

В tmux.conf задайте опцию по-другому, если window_index равно 0?

Не удалось выполнить немедленную настройку на 'libstdc ++ 6' на Nexenta

Насколько совместимым является / var / cache?

Как ядро ​​информирует демон OSPF о статусе физического интерфейса?

Добавьте содержимое файла XML другому, используя скрипт bash

Пакет установлен и не установлен одновременно

Черный экран при возобновлении от приостановки до ОЗУ

У вас есть окно, отображаемое на обоих экранах в настройке с двумя мониторами

Счетчик ошибок с высоким RX-пакетом с модемом – как анализировать?

создать LVM VG для корня / dev / sda2

Внешний USB-накопитель fsck не работает при загрузке

Linux и Unix - лучшая ОС в мире.