.net網站發布-允許更新此預編譯站點 及修改發布后內容


我們可以通過如下的方法發布VS2010的網站:

 

  “生成”→“發布網站”;彈出對話框!

 

  在打開的對話框中,有一個選項是至關重要的,那就是“允許更新此預編譯站點”;

 

  “允許更新此預編譯站點”這一項,默認情況下,前面是打上一個√的,至於要不要打上一個√,是可選的,那么,打勾與不打勾,有何區別呢?

 

  也許大家都曾經發布過net網站,一般情況下,網站項目中的所有CS文件,會自動生成一個DLL動態鏈接庫,這就能夠很好的保護網站的源代碼,因為代碼一般都是放在CS文件里面的,既然都生成了DLL文件,那么,上傳到虛擬空間,別人就不能打開來看了!

 

  但是,其它的文件,諸如ashx、aspx等文件,里面原來有什么,就是什么,別人可以打開這些文件來查看,盡管別人看不見CS代碼,但是仍然能夠看見ASPX文件里面的HTML代碼或部分服務器控件及相關的屬性;

 

  還有,ashx這樣的文件,就相當於一個cs文件,里面的代碼也是能夠看見的。

 

  因此,cs文件倒是安全了,但是網站中的ASPX、asxh等文件,是不安全的;對於整個網站而言,只有局部的安全,而沒有整體的安全。

 

  那么,到底有沒有一種辦法,讓上傳到虛擬空間的網站文件,都安全呢?方法是有的,通過“允許更新此預編譯站點”這一項前面的√,就能實現;

 

  ①給“允許更新此預編譯站點”打√

 

  如果您給此項打勾,然后發布網站,那么,結果是這樣的,整個網站文件,除了所有的CS文件編譯成為一個DLL文件之外,其它的文件,和原來的沒有任何變化,里面是什么,還是什么,只要別人通過記事本一打開,里面的代碼、HTML代碼等,都可以讓別人一覽無余。

  除此之外,通過此種方式發布的網站,當用戶第一次訪問某個頁面的時候,需要經過編譯,查找BUG,之后,如果沒有任何錯誤,才能正常訪問,因此,速度會變得比較慢。(第二次、第三次……訪問,速度就正常了)

 

  ②取消“允許更新此預編譯站點”前面的√

  如果您在發布網站的時候,取消了“允許更新此預編譯站點”前面的勾,那么,結果是這樣的:

  1、網站里面的所有CS文件,都被編譯成為一個DLL文件;

  2、除了cs文件,其它的文件,諸如ASPX、ASHX等文件,也一同被編譯起來,每個文件都在BIN目錄里面生成一個對應的*.compiled文件;

  之后,如果您通過記事本查看ASPX、ASHX等文件,里面不會看到任何的代碼,就連HTML代碼標記都看不見,打開這樣的文件,里面只有一行文字,內容為“這是預編譯工具生成的標記文件,不應被刪除!”

 

  但是,網站的訪問卻是正常的,不會出現任何不良的問題。

 

  所以呢,使用這種方式發布網站,什么文件都不能通過記事本打開,里面顯示的都是一行文字,因此,網站文件就非常安全了。

 

  此外,通過此種方法發布的網站,所有內容都編譯好了,打開的速度是很快的。

 

 

已經發布網站了要修改一個單頁的CS內容怎么修改?

aspx 直接改頁面 或者 復制 新文件

cs 你在發布網站的時候把允許更新此預編譯站點和使用固定命名和單頁程序集這兩個選項都選上,下次再修改了以后發頁網站后只用上傳你修改了的那一個文件就可以了

cs 每個頁面變成了dll ,重新發布后,復制新的dll 粘貼

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM