Mono est une plateforme de développement complète basée sur une mise en oeuvre de l’environnement d’exécution de code .Net.
Ainsi Mono permet d’exécuter des applications développées avec le framework Microsoft .Net sur d’autres environnements que Windows.
Toutes les fonctionnalités du framework ne sont pas encore disponibles. Plus d’informations sont disponibles sur la page du projet dédiée à la compatibilité avec le framework .Net.
Sommaire
Prérequis
Mono nécessite l’activation du serveur web du NAS Synology.
Vous devez également activer le protocole SSH sur votre NAS pour accéder au shell.
Comment installer Mono sur le NAS Synology
La version de DiskStation Manager utilisée dans cet article est la 5.1
Mono est actuellement (en mars 2015) en version bêta. Pour l’installer sur votre NAS, vous devez au préalable autoriser votre serveur à accéder à des paquets en version Bêta.
Pour se faire, ouvrez le centre de paquet puis cliquez sur le bouton Paramètres. Dans la nouvelle fenêtre, accédez à l’onglet Bêta. Cochez la case Oui, je veux voir les version Bêta ! et validez en cliquant sur le bouton OK.
Ensuite, affichez la catégorie Utilitaires. Recherchez l’application Mono et lancez l’installation.
Vérifier l’installation de Mono sur le NAS Synology
Connectez-vous au serveur (via SSH) et exécutez la commande suivante pour vérifier l’installation de Mono :
mono --version
Hello World Mono !
Il est de coutume dans l’informatique d’afficher à l’écran le célèbre Hello World lorsque l’on teste un nouvel environnement de développement.
Copiez le code suivant dans un fichier et enregistrez le dans un dossier de votre NAS. Nommez le hello.cs.
using System; public class HelloWorld { static public void Main () { Console.WriteLine ("Hello World !"); } }
Connectez-vous ensuite au shell et accédez au dossier où est stocké le fichier. Dans cet article, les fichiers sont enregistrés dans le dossier /volume1/Projets/Mono.
cd /volume1/Projets/Mono
Lancez ensuite la compilation du code en utilisant la commande mcs :
mcs hello.cs
Le compilateur va générer un fichier exécutable : hello.exe.
Exécutez le via mono :
mono hello.exe
La phrase Hello World ! s’affiche alors !
Et ASP.Net dans tout ca ?
Mono permet également d’exécuter des applications web (Webforms).
Reprenons notre exemple précédent et convertissons le en version web.
Copiez le code suivant dans un fichier et enregistrez le dans le même dossier que l’exemple précédent. Nommez le hello.aspx.
<%@ Page Language="C#" %> <html> <head> <title>Hello World</title> </head> <body> <asp:Label runat="server">Hello World !</asp:Label> </body> </html>
Accédez au dossier où est stocké le fichier :
cd /volume1/Projets/Mono
Puis démarrez le serveur web autonome livré avec Mono :
xsp2 --port 9000
Le port 80 étant utilisé par Web Station, il faut utiliser un autre port, 9000 pour cet exemple.
Connectez vous via un navigateur sur le port 9000 de votre NAS : http://[IP-du-nas]:9000/
Attention : Si le pare feu est activé, vous devez créer une règle pour autoriser le trafic sur ce port.
Thank you very much. Maybe its good to also have an english verzion of this page. I was searching the internet and this was the best/easiest explanation.
« xsp2 –port 9000 » ne me donne aucun resultat. Est ce que tu sais pourquoi? Merci Emilie
Merci pour ce tutoriel. J’ai bien installé Mono sur mon NAS, j’ai créé un fichier aspx comme dans l’exemple et l’ai placé dans un dossier d’un volume du NAS. J’ai ensuite lancé le serveur Web sans souci mais lorsque j’entre l’url http://[IP]:9000/ (en remplaçant [IP] par l’IP de mon NAS) dans un navigateur (j’ai testé avec plusieurs navigateurs et plusieurs postes) la page se charge indéfiniment et rien ne s’affiche. Savez-vous d’où peut venir le problème ? (J’ai regardé les règles du pare-feu et rien n’empêche la connexion)
Chez moi il n’y a pas de redirection de port.
http://192.168.0.40/Default.aspx
Bonjour,
Un beau tuto (pour info sur la nouvelle version on est en xsp4)
par contre une question … une fois putty fermé le xsp ne tourne plus
même en étant sous le compte root via la fonction ( sudo -i )
a t on une solution ?
excellent tuto ! merci
pour les versions récentes de mono , si xsp2.exe ne fonctionne pas , essayez xsp4.exe