Tôi đã cài đặt song song Mono (2.11.3) theo các hướng dẫn sau: http://www.integratedwebsystems.com/2012/04/install-mono-2-11/ Bây giờ tôi muốn chạy trang ASP.NET của tôi trên ví dụ Mono này. Tôi đã tạo một trang MVC 4 trống bằng cách sử dụng mẫu "Internet site" trong VS 2010 và xuất bản nó lên hộp Linux chạy Mono.Mono 2.11 với nginx hoặc apache
Tôi đã chạy thành công thông qua xsp4 theo các hướng dẫn này (http://www.integratedwebsystems.com/2011/06/get-mvc3-razor-running-on-mono/) để thiết lập biến môi trường trước khi chạy xsp4. Nó hoạt động mà không có vấn đề lớn (tôi thấy rằng một số tính năng mới, như CSS bó, không làm việc, nhưng tôi sẽ đối phó với nó sau này).
Bây giờ, tôi muốn sử dụng máy chủ sản xuất như apache hoặc nginx. Tuy nhiên, có vẻ như gần như không thể, và có vẻ như tôi không phải là người duy nhất có vấn đề này. Ví dụ, sử dụng cấu hình nginx đơn giản này
server
{
listen 80;
server_name mvctest.mono;
access_log /var/www/mvctest/log/access.log;
error_log /var/www/mvctest/log/error.log debug;
location/
{
root /var/www/mvctest/;
index index.html index.htm default.aspx Default.aspx;
fastcgi_index /Home;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
}
kết quả trong 502 lỗi Bad Gateway, và các tập tin log nói "ngược dòng gửi kỷ lục FastCGI bất ngờ: 3 trong khi đọc tiêu đề phản hồi từ phía thượng lưu". Đối với Apache + mod_mono_server4, tôi đã không di chuyển quá khứ lỗi
Exception caught during reading the configuration file:
System.MissingMethodException: Method not found: 'System.Configuration.IConfigurationSectionHandler.Create'.
at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <filename unknown>:0
at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in <filename unknown>:0
at System.Configuration.ConfigurationManager.get_AppSettings() [0x00000] in <filename unknown>:0
at Mono.WebServer.Apache.Server.get_AppSettings() [0x00001] in /opt/mono-2.11/build/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:208
at Mono.WebServer.Apache.Server+ApplicationSettings..ctor() [0x0002a] in /opt/mono-2.11/build/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:63
Có rất nhiều bài viết về chủ đề này, ngay cả ở đây trên Stackoverflow, nhưng không có câu trả lời thực sự. Tuy nhiên, một số người dùng báo cáo rằng họ đã thành công trong việc chạy các trang MVC4 trên mono với các máy chủ này, vì vậy tôi đã tự hỏi liệu có ai muốn chia sẻ cài đặt cấu hình của họ hoặc hướng dẫn từng bước không?