16019
![]() |
|
|
|
|
|||||||
| Howtos & FAQs (Moderated) Would you like to share some of your solutions for certain problems? Tips or tricks? Post here. All new topics are automatically moderated. |
![]() |
|
|
Thread Tools | Display Modes |
|
#1
|
|||
|
|||
|
1. Install Mono
Code:
# cd /usr/ports/lang/mono # make config-recursive # make install clean Code:
using System;
class Program {
static void Main ()
{
Type t = Type.GetType ("Mono.Runtime");
if (t != null)
Console.WriteLine ("You are running with the Mono VM");
else
Console.WriteLine ("You are running something else");
}
}
Code:
# cd /tmp # mcs test.cs # mono test.exe You are running with the Mono VM Code:
# cd /usr/ports/www/nginx # make config-recursive # make install clean # echo "nginx_enable=YES" >> /etc/rc.conf Last edited by vand777; August 17th, 2011 at 21:17. |
|
#2
|
|||
|
|||
|
3. Install Xsp
Code:
# cd /usr/ports/www/xsp # make config-recursive # make install clean Edit /usr/local/etc/nginx/nginx.conf file: Code:
...
user asp;
worker_processes 4; # should be equal to number of cores on your server
...
location / {
fastcgi_pass 192.168.1.100:9000; # change this IP to the IP and port of your fastcgi-mono-server (see below)
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
#location / {
# root /usr/local/www/nginx;
# index index.html index.htm;
#}
...
Code:
# adduser ... # mkdir /home/asp/www # chown asp:asp /home/asp/www/ # chmod 555 /home/asp/www/ # touch /var/log/mono-server4.log # chown asp:asp /var/log/mono-server4.log |
|
#3
|
|||
|
|||
|
5. Configure startup scripts
Create a new file /home/asp/fcgi: Code:
fastcgi-mono-server4 /socket=tcp:9000 /address=192.168.1.100 /applications=/:. /root=/home/asp/www /logfile=/var/log/mono-server4.log & Code:
# chmod ug+x /home/asp/fcgi Code:
#!/usr/local/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:$HOME/bin:; export PATH
PID=`/bin/ps waux | /usr/bin/grep mono | /usr/bin/grep -v grep | /usr/bin/awk '{ print $2 }'`
if ps waux | grep mono | grep -v grep > /dev/null
then
echo "fastcgi-mono-server4 seems to run on PID $PID"
exit
else
echo "fastcgi-mono-server4 is not running. Starting it"
/home/asp/fcgi
fi
Code:
# chmod ug+x /home/asp/fcgi_startup Code:
# crontab -uasp -e Code:
* * * * * /home/asp/fcgi_startup > /home/asp/mono_laststate Code:
# /usr/local/etc/rc.d/nginx start Last edited by vand777; August 17th, 2011 at 21:25. |
|
#4
|
|||
|
|||
|
Test it
Create a new file /home/asp/www/hello.aspx: Code:
<html> <body> <p>It works! <% =Environment.OSVersion.ToString() %></p> </body> </html> Code:
It works! Unix 8.2.2.0 |
|
#5
|
|||
|
|||
|
Asp.Net Web Forms and MVC2 applications
Asp.Net Web Forms and MVC2 applications should work automatically under this setup (Mono 2.10.2). Just copy files into the /home/asp/www/ folder. Asp.Net MVC3 applications In order to make Asp.Net MVC3 applications working under Mono 2.10.2, you have to copy additional files from your Windows development workstation into your project's bin directory (these files will finally end up in /home/asp/www/bin folder):
Also you have to delete EntityFramework.xml and EntityFramework.dll from /home/asp/www/bin folder after you have copied your project there. Please read the section "ASP.NET MVC3 Support" on Mono 2.10 Release Notes for the details. Last edited by vand777; August 17th, 2011 at 21:19. |
|
#6
|
|||
|
|||
|
Should you have any problems when building or running mono, please do not forget to read /usr/ports/lang/mono/pkg-message message. Maybe you will find the solution to your problem.
For example, this part might be important: Code:
* If you are in a jailed environment, ensure System V IPC are enabled.
You can rely on the security.jail.sysvipc_allowed sysctl to check
this status. The following enables this feature on the host system:
# echo "jail_sysvipc_allow=\"YES\"" >> /etc/rc.conf
|
|
#7
|
|||
|
|||
|
Reserved
|
|
#8
|
|||
|
|||
|
Reserved2
|
|
#9
|
|||
|
|||
|
Hello,
Excelent tutorial thanks, First, i don`t have bash as a default shell script fomr my user and it seems that the startup script needs some adjustemts or it will return bash pid olso , so the script that worked for me was: Code:
#!/usr/local/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:$HOME/bin:; export PATH
PID=`/bin/ps waux | /usr/bin/grep mono | /usr/bin/grep -v grep | /usr/bin/grep -v /bin/bash | /usr/bin/awk '{ print $2 }'`
if ps waux | grep mono | grep -v grep | grep -v /bin/bash > /dev/null
then
echo "fastcgi-mono-server4 seems to run on PID $PID"
exit
else
echo "fastcgi-mono-server4 is not running. Starting it"
/home/asp/fcgi
fi
Last edited by DutchDaemon; November 30th, 2011 at 01:12. Reason: re-read: proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#10
|
|||
|
|||
|
Thank you, Claud!
|
|
#11
|
||||
|
||||
|
Quote:
Code:
PID=`/usr/bin/pgrep mono` |
![]() |
| Tags |
| asp.net, fastcgi-mono-server4, mono, mvc2, mvc3 |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [Solved] Problem building net-mgmt/net-snmp | jkcarrol | Installation and Maintenance of FreeBSD Ports or Packages | 4 | August 5th, 2010 23:53 |
| bsnmp vs. net-mgmt/net-smtp | ondra_knezour | Web & Network Services | 1 | April 26th, 2010 04:26 |
| PDF forms | Oko | Installation and Maintenance of FreeBSD Ports or Packages | 5 | April 20th, 2010 22:18 |
| howto install freeBSD on iMac/howto boot from CD | leizhenhua | Other Architectures | 1 | June 15th, 2009 06:09 |
| How to set and run net-flow | DEViATIO | Installation and Maintenance of FreeBSD Ports or Packages | 5 | March 31st, 2009 13:32 |