您现在的位置:主页 > 服务器 > Linux服务器 >

Linux操作系统中运行ASP.NET 4

来源:建站吧 责任编辑:Jzq8 发表时间:2011-12-15 点击:

《》中已经配置好了 openSUSE 11.3 。

现在,我们进入“GNOME 终端”,使用 ifconfig 命令验证一下本虚拟的 IP 地址就是一开始我们在宽带路由器中为它分配的静态地址。

  1. ben@linux-nyhn:~> /sbin/ifconfig  
  2. eth0      Link encap:Ethernet  HWaddr 08:00:27:51:5B:0B    
  3.           inet addr:192.168.1.251  Bcast:192.168.1.255  Mask:255.255.255.0  
  4.           inet6 addr: fe80::a00:27ff:fe51:5b0b/64 Scope:Link  
  5.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
  6.           RX packets:853 errors:0 dropped:0 overruns:0 frame:0  
  7.           TX packets:807 errors:0 dropped:0 overruns:0 carrier:0  
  8.           collisions:0 txqueuelen:1000   
  9.           RX bytes:853227 (833.2 Kb)  TX bytes:90376 (88.2 Kb)  
  10.  
  11. lo        Link encap:Local Loopback    
  12.           inet addr:127.0.0.1  Mask:255.0.0.0  
  13.           inet6 addr: ::1/128 Scope:Host  
  14.           UP LOOPBACK RUNNING  MTU:16436  Metric:1  
  15.           RX packets:22 errors:0 dropped:0 overruns:0 frame:0  
  16.           TX packets:22 errors:0 dropped:0 overruns:0 carrier:0  
  17.           collisions:0 txqueuelen:0   
  18.           RX bytes:1300 (1.2 Kb)  TX bytes:1300 (1.2 Kb)  
  19.  
  20. ben@linux-nyhn:~> sudo vim /etc/hosts 

如上所示,再使用 vim 编辑器编辑 /etc/hosts 文件,增加一个域名 ben.skyiv.com,如下图所示:

注意上图中的 IP 地址必须是 127.0.0.1,而不能是 192.168.1.251。在宿主机的 Windows Vista 操作系统中以管理员身份进入命令提示符,使用记事本编辑 C:\Windows\System32\drivers\etc\hosts 文件,增加一个同样的域名 ben.skyiv.com,注意此时 IP 地址必须是 192.168.1.251,而不能是 127.0.0.1,如下图所示:

我们的 openSUSE 11.3 操作系统已经安装好了 apache 软件,但尚未启用,如下所示:

  1. ben@linux-nyhn:~> sudo /sbin/service apache2 status  
  2. Checking for httpd2:                                              unused 

那么,现在,让我们设置 apache 为开机随系统启动,并且现在就启动它吧:

  1. ben@linux-nyhn:~> sudo /sbin/chkconfig -add apache2  
  2. apache2                   0:off  1:off  2:off  3:on   4:off  5:on   6:off  
  3. ben@linux-nyhn:~> sudo /sbin/service apache2 start  
  4. Starting httpd2 (prefork)                                            done  
  5. ben@linux-nyhn:~> sudo /sbin/service apache2 status  
  6. Checking for httpd2:                                              running 

现在让我们在宿主机的 Windows Vista 操作系统的谷歌浏览器中打开 ben.skyiv.com 网站试试看吧:

如上图所示,我们的 Apache 2.2.15 已经正常工作在 Linux/SUSE 操作系统上了。只不过现在该网站还没有内容而已。

在 openSUSE 操作系统中,Apache 的默认文档是放在 /srv/www/htdocs 目录下的。

openSUSE 操作系统已经为每个用户建立了 public_html 目录,例如我的用户就是 /home/ben/public_html 目录,用以放置该用户的网站的内容。可以通过 ben.skyiv.com/~ben 访问,这里 ben 是我的用户名,如下图所示:

从上图中可以看出,这个目录是空的,需要用户自己放里放东东。那么,我们就编写如下一个 index.html 吧:

  1. ben@linux-nyhn:~> cd public_html  
  2. ben@linux-nyhn:~/public_html> vim index.html 

再次在 Windows Vista 操作系统中访问 ben.skyiv.com/~ben 网页:

现在让我们来看看 mono 的版本:

  1. ben@linux-nyhn:~> mono --version  
  2. Mono JIT compiler version 2.6.4 (tarball Mon Jul  5 13:53:45 UTC 2010)  
  3. Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com  
  4.     TLS:           __thread  
  5.     GC:            Included Boehm (with typed GC and Parallel Mark)  
  6.     SIGSEGV:       altstack  
  7.     Notifications: epoll  
  8.     Architecture:  amd64  
  9.     Disabled:      none  
  10. ben@linux-nyhn:~>   
  11. ben@linux-nyhn:~> gmcs --version  
  12. Mono C# compiler version 2.6.4.0 

这个 mono 2.6.4 的版本太低了。根据 mono 官方下载页面的指示,按如下步骤进行升级:

  1. ben@linux-nyhn:~> sudo zypper addrepo http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.3 mono-stable  
  2. 正在添加安装源 'mono-stable' [done]  
  3. Repository 'mono-stable' successfully added  
  4. Enabled: Yes  
  5. Autorefresh: No  
  6. URI: http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.3  
  7.  
  8. ben@linux-nyhn:~> sudo zypper refresh --repo mono-stable  
  9. Retrieving repository 'mono-stable' metadata [done]  
  10. 正在构建 'mono-stable' 安装源缓存 [done]  
  11. Specified repositories have been refreshed.  
  12. ben@linux-nyhn:~> zypper dist-upgrade --repo mono-stable 
  13. =================> 在这里进行漫长的升级 <=================  
  14. ben@linux-nyhn:~>  

升级完成,再次查看 mono 的版本:

  1. ben@linux-nyhn:~> mono --version  
  2. Mono JIT compiler version 2.8.1 (tarball Fri Nov 12 14:37:21 UTC 2010)  
  3. Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com  
  4.     TLS:           __thread  
  5.     SIGSEGV:       altstack  
  6.     Notifications: epoll  
  7.     Architecture:  amd64  
  8.     Disabled:      none  
  9.     Misc:          debugger softdebug   
  10.     LLVM:          yes(2.8svn-mono)  
  11.     GC:            Included Boehm (with typed GC and Parallel Mark)  
  12. ben@linux-nyhn:~> dmcs --version  
  13. Mono C# compiler version 2.8.1.0 

果然已经升级到最新的 mono 2.8.1 版本了。

Apache mod_mono configuration tool 网页可以生成运行 ASP.NET 所需要的 Apache 软件的配置文件,如下图所示:

生成的 ben.skyiv.com.conf 文件如下所示:

  1. <virtualhost *:80> 
  2.   ServerName ben.skyiv.com  
  3.   DocumentRoot /home/ben/www  
  4.   # MonoServerPath can be changed to specify which version of ASP.NET is hosted  
  5.   # mod-mono-server1 = ASP.NET 1.1 / mod-mono-server2 = ASP.NET 2.0  
  6.   # For SUSE Linux Enterprise Mono Extension, uncomment the line below:  
  7.   # MonoServerPath ben.skyiv.com "/opt/novell/mono/bin/mod-mono-server2"  
  8.   # For Mono on openSUSE, uncomment the line below instead:  
  9.   MonoServerPath ben.skyiv.com "/usr/bin/mod-mono-server2"  
  10.  
  11.   # To obtain line numbers in stack traces you need to do two things:   
  12.   # 1) Enable Debug code generation in your page by using the Debug="true"   
  13.   #    page directive, or by setting  in the   
  14.   #    application's Web.config  
  15.   # 2) Uncomment the MonoDebug true directive below to enable mod_mono debugging  
  16.   MonoDebug ben.skyiv.com true  
  17.     
  18.   # The MONO_IOMAP environment variable can be configured to provide platform abstraction  
  19.   # for file access in Linux.  Valid values for MONO_IOMAP are:  
  20.   #    case  
  21.   #    drive  
  22.   #    all  
  23.   # Uncomment the line below to alter file access behavior for the configured application  
  24.   MonoSetEnv ben.skyiv.com MONO_IOMAP=all 
  25.   #  
  26.   # Additional environtment variables can be set for this server instance using   
  27.   # the MonoSetEnv directive.  MonoSetEnv takes a string of 'name=value' pairs   
  28.   # separated by semicolons.  For instance, to enable platform abstraction *and*   
  29.   # use Mono's old regular expression interpreter (which is slower, but has a  
  30.   # shorter setup time), uncomment the line below instead:  
  31.   # MonoSetEnv ben.skyiv.com MONO_IOMAP=all;MONO_OLD_RX=1 
  32.  
  33.   MonoApplications ben.skyiv.com "/:/home/ben/www"  
  34.   <location "/"> 
  35.     Allow from all  
  36.     Order allow,deny  
  37.     MonoSetServerAlias ben.skyiv.com  
  38.     SetHandler mono  
  39.     SetOutputFilter DEFLATE  
  40.     SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)___FCKpd___7quot; no-gzip dont-vary  
  41.   </location> 
  42.   <ifmodule mod_deflate.c> 
  43.     AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript  
  44.   </ifmodule> 
  45. </virtualhost> 
    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    评价:
    表情:
    验证码:点击我更换图片

    今日头条

    更多>>

    推荐图文

    • CentOS 5.6(X64)下编译安装LNMP平台(Nginx1.0.4+PHP5.3.6+Mysql5
    • 巧用cfengine管理linux服务器(上)
    • 完美的服务器--Ubuntu 9.04 ISPconfig设置 (上)
    • 邮件中继在Linux服务器上的应用
    • RHEL5下Samba服务器的搭建配置
    • linux服务器使用Nginx提升网站访问速度
    • Linux空间用Gzip对网页内容进行压缩详解
    • RHEL 5.5+DRBD+heartbeat+Oracle10R2双机安装实例
    • 使用GFS和DRBD在CentOS 5.5上进行Samba CTDB集群部署
    Alexa - 客户服务 - 联系方法 - 招聘信息 - 友情链接 - 网站地图 - TAG标签 - RSS订阅
    Copyright © 2010-2012 JZQ8.COM. 建站吧|建站去吧 版权所有
    冀ICP备09002514号
    冀ICP备09002514号 网络报警 企业法人营业执照 中国互联网协会 支付宝付款 网银在线付款