在Linux(Ubuntu/openSUSE/CentOS)下布署ASP.NET(Apache + Mono)

今非昔比的系统使用不一致的软件包管理程序,SUSE则提供了2个叫zypper的软件包管理程序,使用也特别方便(那里运用的openSUSE是Azure上提供的openSUSE
12.3)。

sudo vim /etc/apache2/mods-available/mod_mono.conf

与Ubuntu安装过程不相同的是,在设置达成后并未运营Apache的唤起。所以还索要手动配置服务自运营。

今后用浏览器就足以访问服务器了。

sudo systemctl restart apache2.service

http://www.bkjia.com/Linuxjc/447125.htmlwww.bkjia.comtruehttp://www.bkjia.com/Linuxjc/447125.htmlTechArticle【题外话】
闲的无聊竟然想尝尝测试本人做的项目在分化操作系统上的性质表现,所以决定尝试在Linux上布署Apache和Mono的条件。由于一贯很…

sudo vim /etc/apache2/mods-available/mod_mono.conf

需求专注的是,那样形成后不像Ubuntu把许多依靠库都装上了,若是按上述命令的话唯有以下部件被设置:

sudo yum install httpd

 

sudo unzip 压缩文件名.zip -d /var/www
sudo chkconfig --levels 235 httpd 

图片 1

现行反革命再用浏览器访问服务器地址就足以健康访问Http服务器了。

sudo chkconfig --levels 235 httpd on
sudo yum install gcc gcc-c++ bison pkgconfig glib2-devel gettext make freetype-devel fontconfig-devel libX11-devel libpng-devel libjpeg-devel libtiff-devel giflib-devel libexif-devel cairo-devel httpd-devel

签到后默许的路径为/home/用户名/,就跟命令行下私下认可的目录壹致。Apache的暗中认可路径在/var/www/,可以在这之下找到index.html,相当于格外“It
works”的网页。然而这几个目录一般用户的权限为不能够写入,所以不恐怕将网址一直配置到那一个目录下。当然你能够在PuTTY下将以此目录的权能修改后再上传,不超过实际在还是能够有更简便的措施,即是将包裹文件上传到用户目录下然后再解压缩到这些目录下。

不驾驭为何,安装到结尾会卡在这几个地点

修改完后按Ctrl+C截止编辑方式,然后按冒号键(:)进入命令方式,输入w保存文件,然后再度按冒号键,再按q键退出vim。

本来,未来用你的浏览器访问你的服务器地址仍旧是“It
works”,大家还要删除index.html就能够了。

若果服务器上还安装了ASP.NET
四.0的补助(mono-apache-server四),并且供给切换成ASP.NET
四.0,那么仅必要修改最后1行,将二改为4即可。

sudo rm /var/www/index.html

图片 2

或是会提醒须要进步kernel-headers,不过系统大概暗中认可禁止了着力的包,所以一旦出现上述命令无法实施安装的话,还索要在上一条命令之后附加“ –disableexcludes=main”,即如下的花样。

 

下一场使用zypper安装Mono了(个中System.Drawing会用到libgdiplus,多语言援救会用到mono-locale-extras,可是便是那样还有一对零部件未有设置,后面会表明):

图片 3

 

下一场将配备文件复制到Apache的布署文件目录中: 

下一场再修改“/etc/httpd/conf/mod_mono.conf”那么些文件,与Ubuntu上同名的安顿文件配置相同。可是是因为不像Ubuntu下有现成的配备文件,所以要求在文件中添加如下两行,由于设置的时候自动安装了二.0和4.0的协理,所以能够将如下的二换为四即可启用ASP.NET
四.0:

cd /usr/src/mod_mono-2.10
sudo ./configure --prefix=/usr
sudo make ; sudo make install

设置完后能够输入“mono
-V”查看安装的mono的本子(注意V是大写的),当然也足以写个C#的ConsoleApp看看,可以用下列命令编写翻译C#代码。

亟待留意的是,那样形成后不像Ubuntu把众多借助库都装上了,借使按上述命令的话唯有以下部件被设置:

sudo systemctl enable apache2.service

sudo systemctl  apache2.service 

设置完后得以输入“mono
-V”查看安装的mono的版本(注意V是大写的),当然也足以写个C#的ConsoleApp看看,能够用下列命令编写翻译C#代码。

sudo cp /etc/httpd/conf/mod_mono.conf /etc/httpd/conf.d/

图片 4

【三、在Ubuntu下部署ASP.NET网站】

【一、在Ubuntu下安装Apache】

sudo yum install gcc gcc-c++ bison pkgconfig glib2-devel gettext make freetype-devel fontconfig-devel libX11-devel libpng-devel libjpeg-devel libtiff-devel giflib-devel libexif-devel cairo-devel httpd-devel --disableexcludes=main
sudo apt-get install libapache2-mod-mono

第三配置好编写翻译的条件。

sudo apt-get install zip

壹经程序未有有失水准态的话则会生成test.exe,能够因而如下命令执行。当然也得以在Windows上编写翻译好exe文件后复制到Linux上推行也是足以的。

  1. 在Ubuntu下安装Apache
  2. 在Ubuntu下安装Mono
  3. 在Ubuntu下部署ASP.NET网站
  4. 在openSUSE下的操作
  5. 在CentOS下的操作
  6. 连锁链接

与Ubuntu安装进程区别的是,在设置完结后并未运行Apache的提醒。所以还索要手动配置服务自运营。

编写翻译并安装libgdiplus。

sudo unzip 压缩文件名.zip -d /var/www

只要全数安装成功,能够执行下列语句下载需求安装组件的源码包并解压缩。

sudo systemctl restart apache2.service

下一场编辑/etc/ld.so.conf文件,添加壹行“/usr/lib/”,如下图所示,保存之后再履行如下命令,从而使系统能够将libgdiplus.dll自动映射到相应的so文件中。(原作见:http://www.mono-project.com/DllNotFoundException

【4、在openSUSE下的操作】

在Ubuntu下安装软件其实尤其便利,Ubuntu提供了apt-get工具,能够利用该工具直接下载安装软件。

若是全部安装成功,能够执行下列语句下载要求安装组件的源码包并解压缩。

sudo apt-get install apache2

不等的连串采纳不一致的软件包管理程序,SUSE则提供了一个叫zypper的软件包管理程序,使用也丰硕有利(那里运用的openSUSE是Azure上提供的openSUSE
1二.三)。

唯独CentOS官方未有打包好的mono的rpm包,所以比较好的措施是和谐编写翻译。

后来能够像Ubuntu一样给openSUSE安装上zip解压缩工具(sudo zypper install
zip),将压缩文件解压缩到安装的网址根目录后即可。之后只需求重启Apache服务器后就足以即刻访问ASP.NET网址了:

不过安装完假使打开网站发现依旧心有余而力不足履行,其实是未曾配备ASP.NET应用程序。尽管将来协理电动配置应用程序,可是依旧须求修改/etc/apache2/mods-available/mod_mono.conf文件。(原文见:http://www.mono-project.com/AutoConfiguration)当然借使你会手动配置应用程序的话也得以在该公文中手动配置应用程序(下同)。

-/configure --prefix=/usr



-./configure --prefix=/usr

-/configure --prefix=/usr

-/configure --prefix=/usr

想必会唤起要求升级kernel-headers,但是系统只怕默许禁止了基本的包,所以只要出现上述命令不能推行安装的话,还索要在上一条命令之后附加“ –disableexcludes=main”,即如下的样式。

MonoServerPath 
sudo zypper install apache2

闲的无聊竟然想尝试测试本人做的档次在分歧操作系统上的质量表现,所以决定尝试在Linux上安插Apache和Mono的条件。由于一直很少接触Linux,所以从网上找了几篇小说(附在相关链接中)尝试,布置的历程也毫不八面后珑,所以就依照本身在Azure上布置的情事重新展开了整治,希望对很少接触Linux的同桌有所支持。以下有所操作均在Azure上的虚拟机里布置,假若在地头恐怕虚拟机里布置,可能率先还供给配置网卡设置等。

连年后输入设置的用户名和密码即可登录Ubuntu系统,会现出如下图的命令行,大家所做的大致全数工作都是因而命令行操作的。

接下去依据自个儿索要的本子选择设置Apache对ASP.NET 贰.0要么ASP.NET
四.0的帮忙,mono-apache-server二为ASP.NET
2.0的支撑,mono-apache-server肆是ASP.NET
4.0,两者可以而且存在,切换要求在Apache的安插文件中切换。软件包详情:http://packages.ubuntu.com/quantal/mono-apache-server2

率先大家设置Apache,输入下列命令,之后会提示是还是不是安装等,输入Y继续。软件包详情:http://packages.ubuntu.com/quantal/apache2

 

接下来立即运营Apache。

接下去必要配备mod_mono,那里推荐使用官方提供的http://go-mono.com/config-mod-mono/,页面打开后如下图所示:

是因为CentOS自带的SELinux的因由,使得Apache不恐怕连接到mod-mono-server,所以大家未来还必要配备SELinux。当然,那里为了不难就只有禁止使用SELinux,有趣味的能够团结创办安全策略,使mod-mono-server能够生效。那里修改/etc/sysconfig/selinux文件。将“SELINUX=enforcing”修改为“SELINUX=permissive”或“SELINUX=disabled”,例如下图,保存重启系统即可。

率先是设置Apache。

闲的无聊竟然想尝试测试自身做的品类在不一致操作系统上的习性表现,所以决定尝试在Linux上配备Apache和Mono的环境。由于一贯很少接触Linux,所以从网上找了几篇小说(附在相关链接中)尝试,布署的经过也不用一帆风顺,所以就遵照自身在Azure上安插的情事再度进行了整治,希望对很少接触Linux的同桌有所帮助。以下有所操作均在Azure上的虚拟机里计划,假若在地头也许虚拟机里安插,概率先还索要配备网卡设置等。

在Windows上铺排网址能够透过远程桌面直接把网址或打包好的网址复制过去,在Linux下实际SSH不光能够接济命令行,仍是能够援救文件传输,我那边运用免费开源的Filezilla(https://filezilla-project.org/),Filezilla支持FTP和SSH两种协议,在站点管理器中选择SFTP协议,然后把登陆类型设置为正常,输入用户名和密码即可登录。

为此恐怕还有不少亟待的零部件未有设置,比如要求连接Oracle数据库时,恐怕提示找不到System.Data.OracleClient程序集,需求设置“mono-data-oracle”,到时候能够依照出现的荒谬再安装。其实也足以依照通配符安装“mono*”,把跟mono有关的都设置上,不过如此也会装很多不要求的机件。

【一、在Ubuntu下安装Apache】

比方程序没十分的话则会生成test.exe,能够通过如下命令执行。当然也得以在Windows上编写翻译好exe文件后复制到Linux上执行也是可以的。

Ubuntu
Server安装以往,暗许未有图形界面,其实在Linux不用图形界面也很不难就足以开始展览配置。在Azure上配备好Ubuntu
Server(那里运用Azure上提供的Ubuntu Server 1贰.0肆LTS,201八分之四/贰4)今后,会自行配置好SSH的2二端口,大家能够直接利用SSH工具连接服务器,那里运用免费开源的PuTTY(http://www.putty.org/)。如果在Azure上配置的使用密码连接主机则这里直接输入地址点击“Open”即可,如果还上传了SSH密钥,则还应在Connection/SSH/Auth里选择对应的密钥才可以连接。

cd /usr/src/libgdiplus-2.10
sudo ./configure --prefix=/usr
sudo make ; sudo make install
sudo apt-get install mono-apache-server2
sudo apt-get install mono-gmcs

1、配置linux(apache) + mono 下运行
asp.net:http://www.cnblogs.com/hcl0208/archive/2010/10/25/1860173.html
2、openSUSE上安装Mono并发布ASP.Net程序:http://www.linuxidc.com/Linux/2011-04/34872.htm
3、CentOS 6.0 安装 MONO
2.10.8:http://www.cnblogs.com/aquilahkj/archive/2011/11/03/2234380.html
4、Mono环境下不扶助粤语的解决措施:http://www.cnblogs.com/shanyou/archive/2010/10/08/1846198.html

只可以经过Ctrl+Z强制退出,然后输入“sudo
reboot”重启服务器,可是Linux服务器极快就能重启完

【小说索引】

【陆、相关链接】

sudo zypper install apache2
MonoServerPath "/usr/bin/mod-mono-server2"
MonoAutoApplication enabled

 

sudo systemctl enable apache2.service

 

mono test.exe
sudo zypper install mod_mono libgdiplus mono-locale-extras

 

只是CentOS官方尚未打包好的mono的rpm包,所以比较好的不二法门是祥和编写翻译。

【三、在Ubuntu下部署ASP.NET网站】

gmcs test.cs

图片 5

与openSUSE类似,安装完须要协调手动配置服务自运维。

在Linux里,系统最高权力账户为root账户,而暗中同意登录的账户并非root账户,例如不享有安装程序等权力,可是同Windows1样都提供了晋级权限的方法,正是sudo命令,在履行的每条命令前拉长“sudo
”,即能够root账户的权位履行。在率先次接纳sudo时会要求输入当前账户的密码,确认后即可在1段时间(暗中同意4分钟)内使用sudo命令都不须要输入密码,1段时间未有应用后则须求再行输入密码。

【题外话】

接下来再修改“/etc/httpd/conf/mod_mono.conf”那么些文件,与Ubuntu上同名的布局文件配置相同。可是鉴于不像Ubuntu下有现成的布置文件,所以要求在文书中添加如下两行,由于设置的时候自动安装了二.0和肆.0的支撑,所以能够将如下的二换为4即可启用ASP.NET
四.0:

mono test.exe

Ubuntu
Server安装未来,暗中认可未有图形界面,其实在Linux不用图形界面也很不难就足以展开安排。在Azure上配置好Ubuntu
Server(这里运用Azure上提供的Ubuntu Server 1二.0四LTS,20一百分之五10/二四)现在,会活动配置好SSH的22端口,我们得以直接使用SSH工具连接服务器,那里运用免费开源的PuTTY(http://www.putty.org/)。假诺在Azure上安插的使用密码连接主机则这里直接输入地点点击“Open”即可,即便还上传了SSH密钥,则还应在Connection/SSH/Auth里挑选相应的密钥才足以延续。

cd /usr/src/
sudo wget http:
sudo wget http:
sudo wget http:
jxf libgdiplus-jxf mono-.--.tar.bz2

先是安装zip解压缩程序,软件包详情:http://packages.ubuntu.com/quantal/zip

 

sudo rm /var/www/index.html
sudo /etc/init.d/httpd 
sudo zypper install mod_mono libgdiplus mono-locale-extras

然后随即启动Apache服务。

cd /usr/src/
sudo wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
sudo wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
sudo wget http://download.mono-project.com/sources/xsp/xsp-2.10.tar.bz2
sudo wget http://download.mono-project.com/sources/mod_mono/mod_mono-2.10.tar.bz2

sudo tar jxf libgdiplus-2.10.tar.bz2
sudo tar jxf mono-2.10.8.tar.bz2
sudo tar jxf xsp-2.10.tar.bz2
sudo tar jxf mod_mono-2.10.tar.bz2

【陆、相关链接】

sudo cp /etc/httpd/conf/mod_mono.conf /etc/httpd/conf.d/

编写翻译并安装libgdiplus。

 

接下来将索要上传的网址打包为zip文件,然后上传到用户目录下(/home/用户名/),然后在命令行中输入就能够了。

不知道干什么,安装到最后会卡在那些位置

接下来将索要上传的网址打包为zip文件,然后上传到用户目录下(/home/用户名/),然后在命令行中输入就能够了。

接下去依照自身需求的版本选取设置Apache对ASP.NET 二.0要么ASP.NET
肆.0的援救,mono-apache-server2为ASP.NET
2.0的支撑,mono-apache-server4是ASP.NET
4.0,两者能够而且存在,切换要求在Apache的配置文件中切换。软件包详情:http://packages.ubuntu.com/quantal/mono-apache-server2

先是是设置Apache。

今后就能够经过SSH将网址打包上传上去就可以直接待上访问了。但是需求注意的是,CentOS上的Apache默许的根路径在“/var/www/html”下,当然也足以在“/etc/httpd/conf/httpd.conf”文件中期维修改存放网站根目录的途径。

export PKG_CONFIG_PATH=/usr/lib/pkgconfig
cd /usr/src/xsp-2.10
sudo ./configure --prefix=/usr
sudo make ; sudo make install

与openSUSE类似,安装完供给团结手动配置服务自运行。

今昔用浏览器就足以访问服务器了。

【文章索引】

【二、在Ubuntu下安装Mono】

sudo yum install gcc gcc-c++ bison pkgconfig glib2-devel gettext make freetype-devel fontconfig-devel libX11-devel libpng-devel libjpeg-devel libtiff-devel giflib-devel libexif-devel cairo-devel httpd-devel --disableexcludes=main
sudo cp 配置文件名.conf /etc/apache2/conf.d/

最后执行下述命令重启Apache服务器即可。

按键盘上的i键启用vim的编辑撰写方式,由于mono-server二-hosts.conf文件中曾经对众多参数进行了配备,所以仅必要按图中的添加“MonoAutoApplication
enabled”1行即可。其余,假诺你的网址中还有别的的文件格式(比如HttpHandler平日使用.axd),请添加在第1行后面,其它假诺网址暗中认可文件不是index.aspx还须要修改第3行后的文件名。注意,由于Linux是分别轻重缓急写的,所以切记不要把大小写搞错。

然后安装mod_mono。

日后方可像Ubuntu1样给openSUSE安装上zip解压缩工具(sudo zypper install
zip),将压缩文件解压缩到安装的网址根目录后即可。之后只供给重启Apache服务器后就能够及时访问ASP.NET网址了:

然后是Mono。

率先配置好编写翻译的环境。

CentOS的软件管理程序是yum(那里运用的CentOS是Azure上提供的CentOS 陆.三)。

第二依旧设置Apache。

sudo apt-get install mono-apache-server2
sudo yum install gcc gcc-c++ bison pkgconfig glib2-devel gettext make freetype-devel fontconfig-devel libX11-devel libpng-devel libjpeg-devel libtiff-devel giflib-devel libexif-devel cairo-devel httpd-devel

图片 6

照例按上述措施输入下列命令安装Mono及C#编写翻译器,软件包详情:http://packages.ubuntu.com/quantal/mono-gmcs

sudo systemctl start apache2.service 

然后采取zypper安装Mono了(当中System.Drawing会用到libgdiplus,多语言扶助会用到mono-locale-extras,然而固然那样还有1对零部件未有安装,前边会表明):

gmcs test.cs

接下去安装xsp。

【伍、在CentOS下的操作】

sudo ldconfig

Linux有个开源的.NET运转时,叫做Mono(http://www.mono-project.com/),可以支撑在Linux上运营.NET应用程序。

1、配置linux(apache) + mono 下运行
asp.net:http://www.cnblogs.com/hcl0208/archive/2010/10/25/1860173.html 2、openSUSE上安装Mono并发布ASP.Net程序:http://www.linuxidc.com/Linux/2011-04/34872.htm 3、CentOS 6.0 安装
MONO
2.10.8:http://www.cnblogs.com/aquilahkj/archive/2011/11/03/2234380.html 四、Mono环境下不帮衬汉语的化解办法:http://www.cnblogs.com/shanyou/archive/2010/10/08/1846198.html

【题外话】

图片 7

 

接下来随即运转Apache服务。

事后再安装Apache的模块libapache二-mod-mono即可。当然,mono-gmcs、mono-apache-server2、libapache-mod-mono都以能够同步安装的,可是要注意mono-apache-server贰和libapache-mod-mono的相继,若是mono-apache-server二在libapache-mod-mono之后的话,由于依赖项的原因,libapache-mod-mono会以后自行采纳设置mono-apache-server四。而且,若是1起装的话,在上述卡住的岗位Ctrl+Z重启后,libapache-mod-mono并未安顿实现导致众多操作不可能履行,还亟需执行“sudo
dpkg –configure
-a”这句发号施令才行。软件包详情:http://packages.ubuntu.com/quantal/libapache2-mod-mono

等候一段时间后,Apache就会自行安装配置好,那时候能够计划好Azure上的80端口,配置好后采纳浏览器访问服务器的地址能够看到如下图的提醒,表达安装成功。

sudo /etc/init.d/apache2 restart 

【四、在openSUSE下的操作】

在Windows上布置网址能够通过远程桌面直接把网址或打包好的网址复制过去,在Linux下实际SSH不光能够帮衬命令行,还足以支撑文件传输,作者那里运用免费开源的Filezilla(https://filezilla-project.org/),Filezilla援助FTP和SSH三种协议,在站点管理器中选取SFTP协议,然后把登陆类型设置为正规,输入用户名和密码即可登录。

sudo /etc/init.d/httpd start

 

可以选用Virtual
Host或许Application二种形式,第一种能够依据请求的服务器地址设置ASP.NET网址的根路径,第三种能够依照请求的虚拟目录设置ASP.NET网址的根路径。除此而外页面下方还有多少个设置可以自定义,设置完后增选页面下方的Download下载.conf文件,将文件上传到openSUSE服务器后采用如下命令复制到Apache配置文件夹下:

 

现行反革命再用浏览器访问服务器地址就足以健康访问Http服务器了。

图片 8

接下去必要安顿mod_mono,这里推荐应用官方提供的http://go-mono.com/config-mod-mono/,页面打开后如下图所示:

cd /usr/src/mono-2.10.8
sudo ./configure --prefix=/usr
sudo make ; sudo make install

图片 9

图片 10

图片 11

 

本来,以后用你的浏览器访问你的服务器地址还是是“It
works”,大家还要删除index.html就能够了。