2016-06-01 7 views
0

Я настраиваю моно сервер с использованием Apache и mod_mono на Raspberry PI 3, работающем с Raspbian Jesse. У меня уже установлены и функционируют моно и mod_mono.Настройки Apache mod_mono для нескольких приложений MVC без редактирования конфигурации apache

Это моя желаемой структуры папок

  • /вар/WWW/HTML
    • App1
    • App2

Я хотел бы настроить Apache так, что я может просто скопировать новое приложение .NET mvc3 в папку непосредственно под/var/www/html (т.е./va r/www/html/App1), и каждое из этих приложений автоматически начнет работать как приложения MVC3 без необходимости добавлять запись в конфигурацию apache для каждого приложения.

MonoAutoApplication enabled не работает в этом случае, потому что я не обслуживаю страницы .aspx (или любой другой .net-файл), а скорее это приложения MVC.

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

Любые идеи о том, как с этим справиться?

ответ

0

Здесь сделаны некоторые предположения.

  • Приложения будут публиковаться непосредственно под/var/www/html. Например,/var/www/html/app1,/​​var/www/html/app2
  • Каждое приложение предоставит файл mod_mono.conf в своей корневой папке. Например, /var/www/html/app1/mod_mono.conf
  • mod_mono.conf для каждого приложения должно знать абсолютный путь к приложению.
  • После развертывания нового приложения сервер apache необходимо перезагрузить. На самом деле это не так.

В конце apache2.conf добавьте следующее:

/etc/apache2/apache2.conf

#define the default mono server 
MonoServerPath default /usr/bin/mod-mono-server4 
#include all config files from all mono apps 
IncludeOptional "/var/www/html/*/mod_mono.con[f]" 
#prevent web access to mod_mono.conf files 
<Files ~ "mod_mono.conf"> 
    Order allow,deny 
    Deny from all 
</Files> 

, а затем для каждого приложения, добавить mod_mono.conf, изменение путь к папке соответственно /var/www/html/app1/mod_mono.conf

AddMonoApplications default "/app1:/var/www/html/app1" 
<Location /app1> 
    SetHandler mono 
</Location> 
Смежные вопросы