日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux操作系統(tǒng)中運行ASP.NET4

《在openSUSE下ASP.NET 4開發(fā)環(huán)境配置》中已經(jīng)配置好了 openSUSE 11.3 操作系統(tǒng)。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,衡南企業(yè)網(wǎng)站建設,衡南品牌網(wǎng)站建設,網(wǎng)站定制,衡南網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,衡南網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

現(xiàn)在,我們進入“GNOME 終端”,使用 ifconfig 命令驗證一下本虛擬的 IP 地址就是一開始我們在寬帶路由器中為它分配的靜態(tài)地址。

 
 
 
 
  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. lo        Link encap:Local Loopback  
  11.           inet addr:127.0.0.1  Mask:255.0.0.0
  12.           inet6 addr: ::1/128 Scope:Host
  13.           UP LOOPBACK RUNNING  MTU:16436  Metric:1
  14.           RX packets:22 errors:0 dropped:0 overruns:0 frame:0
  15.           TX packets:22 errors:0 dropped:0 overruns:0 carrier:0
  16.           collisions:0 txqueuelen:0 
  17.           RX bytes:1300 (1.2 Kb)  TX bytes:1300 (1.2 Kb)
  18. ben@linux-nyhn:~> sudo vim /etc/hosts

如上所示,再使用 vim 編輯器編輯 /etc/hosts 文件,增加一個域名 ben.skyiv.com,如下圖所示:

注意上圖中的 IP 地址必須是 127.0.0.1,而不能是 192.168.1.251。在宿主機的 Windows Vista 操作系統(tǒng)中以管理員身份進入命令提示符,使用記事本編輯 C:\Windows\System32\drivers\etc\hosts 文件,增加一個同樣的域名 ben.skyiv.com,注意此時 IP 地址必須是 192.168.1.251,而不能是 127.0.0.1,如下圖所示:

我們的 openSUSE 11.3 操作系統(tǒng)已經(jīng)安裝好了 apache 軟件,但尚未啟用,如下所示:

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

那么,現(xiàn)在,讓我們設置 apache 為開機隨系統(tǒng)啟動,并且現(xiàn)在就啟動它吧:

 
 
 
 
  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

現(xiàn)在讓我們在宿主機的 Windows Vista 操作系統(tǒng)的谷歌瀏覽器中打開 ben.skyiv.com 網(wǎng)站試試看吧:

如上圖所示,我們的 Apache 2.2.15 已經(jīng)正常工作在 Linux/SUSE 操作系統(tǒng)上了。只不過現(xiàn)在該網(wǎng)站還沒有內(nèi)容而已。

在 openSUSE 操作系統(tǒng)中,Apache 的默認文檔是放在 /srv/www/htdocs 目錄下的。

openSUSE 操作系統(tǒng)已經(jīng)為每個用戶建立了 public_html 目錄,例如我的用戶就是 /home/ben/public_html 目錄,用以放置該用戶的網(wǎng)站的內(nèi)容??梢酝ㄟ^ 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 操作系統(tǒng)中訪問 ben.skyiv.com/~ben 網(wǎng)頁:

現(xiàn)在讓我們來看看 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 的版本太低了。根據(jù) 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. ben@linux-nyhn:~> sudo zypper refresh --repo mono-stable
  8. Retrieving repository 'mono-stable' metadata [done]
  9. 正在構(gòu)建 'mono-stable' 安裝源緩存 [done]
  10. Specified repositories have been refreshed.
  11. ben@linux-nyhn:~> zypper dist-upgrade --repo mono-stable
  12. =================> 在這里進行漫長的升級 <=================
  13. 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

果然已經(jīng)升級到最新的 mono 2.8.1 版本了。

在 Apache mod_mono configuration tool 網(wǎng)頁可以生成運行 ASP.NET 所需要的 Apache 軟件的配置文件,如下圖所示:

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

 
 
 
 
  1.   ServerName ben.skyiv.com
  2.   DocumentRoot /home/ben/www
  3.   # MonoServerPath can be changed to specify which version of ASP.NET is hosted
  4.   # mod-mono-server1 = ASP.NET 1.1 / mod-mono-server2 = ASP.NET 2.0
  5.   # For SUSE Linux Enterprise Mono Extension, uncomment the line below:
  6.   # MonoServerPath ben.skyiv.com "/opt/novell/mono/bin/mod-mono-server2"
  7.   # For Mono on openSUSE, uncomment the line below instead:
  8.   MonoServerPath ben.skyiv.com "/usr/bin/mod-mono-server2"
  9.   # To obtain line numbers in stack traces you need to do two things: 
  10.   # 1) Enable Debug code generation in your page by using the Debug="true" 
  11.   #    page directive, or by setting  in the 
  12.   #    application's Web.config
  13.   # 2) Uncomment the MonoDebug true directive below to enable mod_mono debugging
  14.   MonoDebug ben.skyiv.com true
  15.   
  16.   # The MONO_IOMAP environment variable can be configured to provide platform abstraction
  17.   # for file access in Linux.  Valid values for MONO_IOMAP are:
  18.   #    case
  19.   #    drive
  20.   #    all
  21.   # Uncomment the line below to alter file access behavior for the configured application
  22.   MonoSetEnv ben.skyiv.com MONO_IOMAP=all
  23.   #
  24.   # Additional environtment variables can be set for this server instance using 
  25.   # the MonoSetEnv directive.  MonoSetEnv takes a string of 'name=value' pairs 
  26.   # separated by semicolons.  For instance, to enable platform abstraction *and* 
  27.   # use Mono's old regular expression interpreter (which is slower, but has a
  28.   # shorter setup time), uncomment the line below instead:
  29.   # MonoSetEnv ben.skyiv.com MONO_IOMAP=all;MONO_OLD_RX=1
  30.   MonoApplications ben.skyiv.com "/:/home/ben/www"
  31.   
  32.     Allow from all
  33.     Order allow,deny
  34.     MonoSetServerAlias ben.skyiv.com
  35.     SetHandler mono
  36.     SetOutputFilter DEFLATE
  37.     SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
  38.   
  39.   
  40.     AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
  41.   

這個 ben.skyiv.com.conf 文件需要放在 /etc/apache2/conf.d 目錄下:

 
 
 
 
  1. ben@ben:~> ll /etc/apache2/conf.d
  2. 總計 8
  3. -rw-r--r-- 1 ben  users 2037 01-04 01:21 ben.skyiv.com.conf
  4. -rw-r--r-- 1 root root  1239 10-01 02:12 mod_mono.conf

然后創(chuàng)建 /home/ben/www 目錄,并重啟 Apache 服務:

 
 
 
 
  1. ben@ben:~> mkdir www
  2. ben@ben:~> sudo /etc/init.d/apache2 restart
  3. Syntax OK
  4. Shutting down httpd2 (waiting for all children to terminate)      done
  5. Starting httpd2 (prefork)                                         done
  6. ben@ben:~> 

現(xiàn)在讓我們建立一個網(wǎng)站:

 
 
 
 
  1. ben@ben:~> cd www
  2. ben@ben:~/www> vim index.html

在 openSUSE 11.3 操作系統(tǒng)中訪問 ben.skyiv.com 網(wǎng)站,如下圖所示:

點擊上圖中的“服務器信息”,出現(xiàn)“The resource cannot be found”錯誤:

這是預料之中的,因為我們還沒有編寫 info.aspx 文件呢。從上圖中可以看出,ASP.NET 是 2.0 版的。

現(xiàn)在,我們修改 /etc/apache2/conf.d/ben.skyiv.com.conf 文件,如下所示:

 
 
 
 
  1. ben@ben:~/www> sudo vim /etc/apache2/conf.d/ben.skyiv.com.conf

如上圖所示,將 mod-mono-server2 改為 mod-mono-server4 。然后重啟 Apache 服務:

 
 
 
 
  1. ben@ben:~> sudo /etc/init.d/apache2 restart
  2. Syntax OK
  3. Shutting down httpd2 (waiting for all children to terminate)      done
  4. Starting httpd2 (prefork)                                         done
  5. ben@ben:~> 

然后重新訪問 ben.skyiv.com/aspx/info.aspx 網(wǎng)頁:

從上圖中可以看出,已經(jīng)運行在 ASP.NET 4 了。

現(xiàn)在,讓我們來編寫 info.aspx 程序吧:

 
 
 
 
  1. ben@linux-nyhn:~/www> mkdir aspx src bin
  2. ben@linux-nyhn:~/www> vim aspx/info.aspx
  3. ben@linux-nyhn:~/www> vim src/info.aspx.cs
  4. ben@linux-nyhn:~/www> vim src/info.rsp

網(wǎng)頁文件 aspx/info.aspx 的內(nèi)容如下所示:

 
 
 
 
  1.  <%@ Page Language="C#" inherits="Skyiv.Ben.Web.InfoPage" %>
  2.  
  3.  
  4.  
  5.    
  6.   服務器信息
  7.  
  8.   返回
  9.  
  10.  
  11.  
  12.      
  13.    
  14.    
  15.  
  16.  

對應的 C# 源程序 src/info.aspx.cs 的內(nèi)容如下所示:

 
 
 
 
  1. using System;
  2. using System.Data;
  3. using System.Web.UI;
  4. using System.Web.UI.WebControls;
  5.  namespace Skyiv.Ben.Web
  6.  {
  7.   public class InfoPage : Page
  8.  {
  9.  protected GridView dgMain;
  10.    public void Page_Load(object sender, EventArgs e)
  11.    {
  12.      if (IsPostBack) return;
  13.       dgMain.DataSource = GetInfo();
  14.       dgMain.DataBind();
  15.      }
  16.    DataTable GetInfo()
  17.      {
  18.       DataTable dt = new DataTable();
  19.       dt.Columns.Add("項目", typeof(string));
  20.        dt.Columns.Add("內(nèi)容", typeof(string));
  21.      AddRow(dt, "操作系統(tǒng)", Environment.OSVersion);
  22.      AddRow(dt, "公共語言運行庫", Environment.Version);
  23.       return dt;
  24.      }
  25.     void AddRow(DataTable dt, string name, object value)
  26.    {
  27.      DataRow dr = dt.NewRow();
  28.      dr[0] = name;
  29.      dr[1] = value.ToString();
  30.     dt.Rows.Add(dr);
  31.     }
  32.    }
  33.   }

編譯響應文件 src/info.rsp 的內(nèi)容如下所示:

 
 
 
 
  1. -out:../bin/info.dll
  2. -t:library
  3. -r:System.Data
  4. -r:System.Web
  5. info.aspx.cs

然后就是使用以下命令進行編譯了:

 
 
 
 
  1. ben@linux-nyhn:~/www> cd src
  2. ben@linux-nyhn:~/www/src> dmcs @info.rsp

編譯完成,網(wǎng)站的運行效果如下圖所示:

至此,我們成功地在 Linux 操作系統(tǒng)中運行 ASP.NET 4。


標題名稱:Linux操作系統(tǒng)中運行ASP.NET4
網(wǎng)頁鏈接:http://m.5511xx.com/article/coseoss.html