ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置

    公司網站因各種原因轉移。選擇的是阿里雲ECS,使用方面感覺和VPS沒什麼區別,不過選擇更詳細更靈活。選擇的系統是window2003,32位。

一、IIS安裝

    初始系統自帶“管理您的服務器”工具,點擊“添加或刪除角色”,等待一會後選擇“應用程序服務器(IIS,ASP.NET)”,然後下一步完成配置。這樣在“我的電腦”---“管理”裏面多了“Internet信息服務”,下圖所示:

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

二、配置FTP

    首先要能上傳網站,所以先來配置FTP吧

    我們用IIS自帶的FTP來配置,當然你也可以用server-U什麼的軟件。一開始在IIS中是沒有FTP選項的。打開“控制面板”---“添加刪除程序”---“添加刪除WINDOWS組件”---“應用程序服務器”(點擊詳細信息)---“Internet信息服務(IIS)”(點擊詳細信息)---“FTP服務”,如下圖:

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    再打開計算機管理,就會出現FTP站點的選項。我們用新建虛擬目錄的方式來建立FTP,這樣端口還是21,如下圖。其實就是新建FTP站點也是沒問題的,只不過端口不一樣而已,感覺會更簡單。(話說我沒試過啊)

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    根據提示填寫下圖中的內容:別名的用途是你在C:\Inetpub\ftproot(FTP默認根目錄)中新建一個test的空文件夾,從FTP上傳文件時是不會上傳到C:\Inetpub\ftproot\test中的,而是會上傳到D:\www(你打算網站放置的地方)中,所以叫虛擬路徑。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    以上完成後,會在默認FTP站點下面多一個文件。下面我們需要設置權限,讓有賬戶密碼的才能訪問。

    1、首先建立一個FTP賬號管理的組,“計算機管理”---“本地用戶和組”---“組”(右鍵)---“新建組”如下圖:

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    設置FTP默認根目錄“C:\Inetpub\ftproot”的權限,在電腦中右鍵ftproot文件夾---“屬性”---“安全”---“高級”將除“Administrator”的用戶全都刪除掉,如果刪除不了,將“允許父項。。。”那個勾點掉---“複製”就能刪除了。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

     再將ftp_user添加進去,“添加”---“高級”---“立即查找”找到ftp_user點確定,由於我們只想在D:\www中寫入,所以,在權限裏只給ftp_user“讀取”的權限就可以了。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    2、設置FTP的賬號密碼。(window裏的FTP賬號密碼就是目錄訪問權限)

    “計算機管理”---“本地用戶和組”---“用戶”(右鍵)---“新建用戶”,設置帳戶名和密碼,如下圖。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    創建完成後,點擊右鍵---“屬性”---“隸屬於”---“添加”---“高級”---“立即查找”將組“ftp_user”添加進去。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    再回到“計算機管理”的FTP站點---“test”(右鍵)---“權限”(或者是打開D:\www右鍵屬性--安全是一樣的),跟上面根目錄的權限設置一樣,只保留Administrator和添加上面創建的賬號(不是組的,是用戶的)。這次給它全部的權限。因爲需要寫入什麼的。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    以上FTP配置就完成了。(別忘了在C:\Inetpub\ftproot中新建一個test空目錄)在遠程中用FlashFXP,輸入IP,賬號密碼鏈接下。順便上傳個測試下,(根目錄應該是沒法上傳,因爲你只給了讀權限),如果上傳不順暢,改下主動模式或者被動模式。

三、asp.net網站配置

    首先要看下你原網站是.netframework版本是多少(在網站右鍵---屬性---ASP.NET中下圖),我的是2.0.而默認只有1.0的的,只能自己下然後安裝:微軟官方網址http://www.microsoft.com/zh-cn/download/details.aspx?id=1639

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    通過FTP將網站上傳上去。然後開始新建網站,按提示下一步

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    這樣網站就建好了,當然你用類似於FTP的虛擬目錄什麼的也可以。如果網站運行不了提示有衝突,那就將默認網站先關了,這樣80端口就空出來了。下面進行相關配置

    1、先進行屬性設置:網站右鍵---屬性。打開下圖所示,你也可以在IP地址裏直接填寫IP,但是填寫域名更好的,以免IP更該無法訪問。“高級”---“添加”---“主機頭值”填寫你的網站域名。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    其他需要注意的如下圖:

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    “執行權限”選擇“純腳本”,“應用程序池”可以用默認的這個,當然也可以自己新建一個(網站多的時候可以用獨立的應用池,一個出錯另一個不影響,但是別無限建,併發進程數量太多也會影響處理速度)。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    這裏選擇相應的2.0版本。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    這裏添加你主頁文檔的名稱。

    大部分網站有後臺,需要修改上傳文件夾的權限。我的是Uploads,找到後右鍵---屬性---目錄,將執行權限設置爲“無”,這樣就算是上傳代碼有漏洞,上傳上去的木馬等文件也無法執行。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

        

    2、現在進行訪問權限設置,asp.net的和asp的不一樣,不僅僅需要來賓賬戶,還需要asp.net賬戶或者network service賬號。步驟同樣,在網站上點擊右鍵---權限,因爲你原先ftp時設置過一次,此時應該只有Administrator和ftp賬號這兩個用戶(如果不是,請參照前面刪除至只剩這兩個用戶),添加下圖的兩個賬戶IUSR_*****(這個是來賓賬戶)和NETWORK SERVICE(或者IIS_WPG這個也行,測試過這兩個本地網站都可以運行)

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    給這兩個用戶讀取權限(存疑,只有讀取權限用127.0.0.1測試時同樣能在後臺寫入。如果無法後臺寫入,添加寫入權限)

後來實際測試過,需要給在upload目錄(或者全部,但最好是隻給上傳的文件目錄)下給NETWORK SERVICE賬戶寫入權限,否則後臺無法寫入(來賓賬戶可以只給讀權限就行)。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    以上,這個網站設置完畢,但還是無法在本地預覽,因爲數據庫還沒配置呢。

四、Microsoft SQL Server 2005配置

    需要先下載兩個免費軟件Microsoft SQL Server 2005 Express Edition(微軟官方網站下載地址:http://www.microsoft.com/zh-tw/download/details.aspx?id=21844)和SQL 2005視圖軟件Microsoft SQL Server Management Studio Express(微軟官網下載地址:http://www.microsoft.com/zh-CN/download/details.aspx?id=8961)。這是輕量級的數據庫,如果不滿足需求,請自己購買正版企業版什麼的。

    按順序安裝,需要注意的如下圖:

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    默認實例和命名實例需要看你原網站的是什麼(SQL Server Configuration Manager中查看),主要看名稱來區別,默認實例名字爲MSSQLSERVER,而名命名實例:如果實列名爲:benet,在服務中的名稱是:MSSQL$BENET,選擇和你原網站數據庫一樣的實例。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    身份驗證模式這裏選第一個或者第二個都可以,如果選了第一個,後面可以可以在studio中服務器右鍵---屬性---安全性這種選擇混合驗證模式來將它開啓。如下;

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

        

    全部安裝完成後,開始還原數據庫:先將原網站的數據庫備份,然後用FTP傳輸到新空間中。然後進行數據庫還原,打開studio軟件,數據庫右鍵---還原數據庫---源設備---添加。其中目標數據庫和你源數據庫同名。添加時如果找不到文件,請新建一個目錄例如D:\mydb,將備份的數據庫文件放到這(如果出現權限錯誤5什麼的也同樣處理)。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    如果以上不成功(出現錯誤3什麼的),可以試下下面方法,先新建一個同名的數據庫,然後右鍵新建的數據庫---任務---還原---數據庫,在選項中選擇覆蓋現有數據庫。應該就沒問題了。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    成功還原後,由於原先的數據庫帶有一個登陸賬號,而新系統中是沒有的,這樣就會產生孤立賬戶,所以數據庫是無法連接的。下面解決此問題:

    1、首先查看孤立賬戶,數據庫右鍵---新建查詢,然後輸入命名,右鍵運行,會在下方列出孤立的賬戶。命令爲 exec sp_change_users_login 'REPORT'

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    2、知道哪個是孤立賬戶後,將添加同名的賬戶到系統中,可以用以下命令  EXEC sp_change_users_login 'Auto_Fix', 'AAA', NULL, '***';其中AAA是你孤立賬戶的名稱,***是這個賬號的密碼(密碼需要在網站文件Web.config中的數據庫連接字符串中查看,如下圖)

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    如果這個命令不起作用,可以如下圖所示,在安全性---新建登錄名,登陸名填寫你孤立賬戶名稱,密碼填寫上面說的,默認數據庫選擇你的數據庫

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

    3、最後,進行用戶映射,命令如下:exec sp_change_users_login 'UPDATE_ONE','AAA','AAA',其中AAA都寫你的孤立賬戶名字就行。這樣孤立賬號就消失了,可以再用exec sp_change_users_login 'REPORT'命令測試下。

    還有不要忘記,要將將下圖所示的TCP/IP啓用,然後重啓數據庫,否則打開後是空白頁。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

五、本地測試

    以上設置完成後,需要在本地測試網站是否能運行。在網站右鍵---屬性---IP地址中輸入127.0.0.1。,然後在瀏覽器中輸入127.0.0.1或者localhost(或者在網站右鍵---“瀏覽”中查看)。便可以打開網站了。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

     上面的東西都是自己參考網上大神的相關文章,然後進行實際測試的。還是有些原理不是特別明白或者有些無用操作。還需繼續努力。

--------------------------------------------------------------------------------------

更新MSSQL2005 Express自動備份數據庫

     由於express版本精簡,所以沒有作業自動備份的功能,需要自己寫腳本。

     先參照了這位博主寫的http://www.cnblogs.com/ryanding/archive/2010/11/19/1881428.html,但是不起作用,很怪啊,應該是可以正常連接數據庫,但是懷疑存儲過程有問題。需要說明的是文章中提到“sqlcmd -S .\SQLEXPRESS -E -i e:\Backup\Backup.sql”這段命令行的實例名稱在下面紅框內看,-E的作用是可以用WINDOW身份驗證登陸,也就是不用輸入用戶名密碼餓了。

ASP.NET網站轉移之IIS6.0、FTP及Microsoft SQL Server 2005 Express的相關配置 - clzhl_2004 - 白的共享空間

      用另一種方法:http://blog.csdn.net/zhutulang/article/details/8611262是這位仁兄寫的2008的,不過2005也可以用。

      1、  新建一個sql腳本,我用backup.sql,放在了D:\mydb文件夾下了,@fileName裏是你生成備份的位置及命名,可修改。

            GO   
            DECLARE   
            @backupTime VARCHAR(20)  
            DECLARE   
            @fileName VARCHAR(1000)    
            SELECT  
            @backupTime=(CONVERT(VARCHAR(8), GETDATE(), 112) +REPLACE(CONVERT(VARCHAR(5), GETDATE(), 114), ':', ''))    
            SELECT  
             @fileName='D:mydb\DB_'+@backupTime+'.bak'  
            backup database 填寫你想備份的數據庫 to disk=@fileName

       2、創建一個可以執行上面sql的bat腳本。例如我叫backup_db.bat。內容如下:

            sqlcmd -S . -i D:\mydb\backup.sql

       3、新建widows計劃任務,將backup_db.bat加入計劃任務中。OK完成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章