2023年12月17日发(作者:)

使用Visual Studio 2010开发并发布网站的注意事项

一、基本事项

1、在Visual Studio 2010(以下简称VS2010)中,需先创建网站,再发布网站,才能对.aspx文件进行编译,否则.aspx文件的代码会被用户查看或修改。

2、网站在完成了“生成”操作后,会在Bin文件夹下产生.文件对应的.dll文件,这些文件可能会被反编译。

3、不选中“使用固定命名和单页程序集”项,(不选中“允许更新此预编译站点”),右击网站名后,选择“发布网站”。

(选中“使用固定命名和单页程序集”项,可能会导致“"/应用程序中的服务器错误"”、“尝试访问已卸载的 AppDomain”的错误。)

4、对.aspx文件进行编译后,不仅.aspx文件不可读,.rdlc报表文件也会不可读,这将导致在IIS中发布的网站进行报表预览时,出现“本地报表处理期间出错,根级别上的数据无效”的错误,这时,用未编译的.rdlc文件覆盖已被编译的.rdlc报表文件即可。

5、网站经发布后,在存放网站发布文件的Bin文件夹下,是.文件对应的.dll文件,使用Dotfuscator对.dll文件进行加密处理,加密后的同名.dll文件仍然放在Bin文件夹下。

(.Net reactor虽然也可以对.dll文件进行加密,但当报表中使用了较复杂的数据源时,加密可能导致报表运行错误)

6、在VS2010中,为网站指定的“虚拟路径”,如“/fstWebSite”。

二、在Windows 2003中的安装与配置

1、在IIS中,新建网站,网站命名为fstWebSite,属性对话框中“主目录”的“执行权限”指定为“脚本和可执行文件”。

2、部署时提示:未能加载文件或程序集“ms,

Version=10.0.0.0”的错误,下载Microsoft Report Viewer 2010 Redistributable Package并安装就可以了。

(Microsoft Report Viewer 2010 Redistributable Package 包含用于查看使用

Microsoft 报表技术设计的报表的控件。)

3、“对路径D:fstWebsiteBetaSetup1029TempFilesGaugePic_的访问被拒绝”问题的处理:

无权访问所请求的资源。请考虑对 请求标识授予访问此资源的权限。 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为

1

{MACHINE}ASPNET,在 IIS 6 和 IIS 7 上为网络服务,在 IIS 7.5 上为配置的应用程序池标识)。如果应用程序正在通过 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。

要将 访问权限授予某个文件,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 帐户,选中所需访问权限对应的框。

(在“安全”选项卡中,添加Everyone帐户,指定它的权限为:修改、读取、写入)。

三、在Windows 7中的安装与配置

1、环境配置

因在VS2010中开发时使用的Framework为4.0版本,在Windows7中先进行如下配置:

(1)在开始菜单里找到Microsoft Visual Studio 2010文件夹,在里面找到Visual

Studio Tools文件夹。

(2)点击打开。如果windows7的话以 管理员身份打开Visual Studio 命令提示(2010)这个选项。

(3)在里面输入一个命令就可以了。命令是“aspnet_regiis –r”,执行就OK了。

2、部署Web项目

Windows7中控制面板的“管理工具”中选择“Internet信息服务(IIS)管理器”进行网站创建。

经过步骤1之后,IIS默认的Framework为4.0版本。

3、报表添加

在VS2010中发布网站时,选择的是“文件系统”,发布时并未将报表文件进行发布。需手工添加。

将存放报表文件的“report”文件夹整体复制到网站对应的物理文件夹(如F:pbdglApp)中即可。

四、在Windows7中的服务器配置与防火墙设置

(一)默认情况下,Win7中Windows登录验证模式下的用户无法登录SQLserver2005,解决方法:

1、先用“sa”登入,然后找到安全性――登录名,右击选择新建登录名;

2、指定“Windows身份验证”,点“搜索”按钮;

3、在“选择用户或组”对话框中,点“高级”按钮;

4、在弹出的对话框中点击“立即查找”,会列出计算机中的所有用户,选择管理员用户2

(如Administrator),两次确定即可。

(其实归根到底是计算机权限的问题。)

(二)防火墙

Win7中防火墙默认不允许SQL Server的远程访问,可通过如下方法解决:

1、在 Windows7 防火墙中,点击左侧的“高级设置”;

2、在“高级安全Windows 防火墙”对话框中,点击“入站规则”;

3、在右侧的“操作”中,点击“新建规则...”;

4、在“要创建的规则类型”中,选择“程序”,单击“下一步”按钮;

5、默认选中“此程序路径”,点击右侧的“浏览”;

6、找到 C:Program FilesMicrosoft SQL

可执行程序,单击“打开”,然后单击“下一步”;

7、选中“允许连接”,单击“下一步”;

8、在“何时应用该规则”中,全选所有选项,单击“下一步”;

9、为该规则指定“名称”,单击“完成”。

(三)防火墙

Win7中防火墙默认不允许80端口被访问,可通过如下方法解决:

1、在 Windows7 防火墙中,点击左侧的“高级设置”;

2、在“高级安全Windows 防火墙”对话框中,点击“入站规则”;

3、在右侧的“操作”中,点击“新建规则...”;

4、在“要创建的规则类型”中,选择“端口”,单击“下一步”按钮;

5、默认选中“TCP”,在“特定本地端口”中输入“80”,单击“下一步”按钮”;

6、默认选中“允许连接”,单击“下一步”;

7、在“何时应用该规则”中,全选所有选项,单击“下一步”;

8、为该规则指定“名称”,单击“完成”。

3