首先Vs打开解决方案
在Global.asax中加入下列代码,否则会出现CSS JS失效
BundleTable.EnableOptimizations = false;
用户 ‘NT AUTHORITY\SYSTEM’ 登录失败
需要设置为ID PWD登录 不能采用windows身份验证
重新生成网站
发布
选择接下来发布网站的存放位置 Publish method选择为File System
现在去D/Website查看是否有文件 有文件表示发布成功但是现在仅仅成功一半 接下来还要配置IIS
此时发布的网站无法访问数据库 在D/Website中创建目录App_Data 之后运行网站会自动生成数据库 !!! 与最开始的本地解决方案那个D/Project中的App_Data无关!!!
现在打开IIS 添加应用程序池 选择v4.0 然后再添加网站
网站名称任意 选择之前添加的应用程序池 物理路径为D/Website IP地址为本机的IP地址 端口使用80端口 点击确定后
会发现我们的网站处于停止状态 点击启用会提示
“另一个程序正在使用此文件,进程无法访问”
此时有程序正在占用80端口 现在要找到这个程序并且把它通过任务管理器关闭 或者配置时选择8080端口 以后输入网址后面要加:8080
解决方法:
IIS中网站服务所占用的是80端口,出现这样的提示我们可以判定是端口冲突造成的,故,查看真正运行的占用80端口的程序,在“运行”输入“cmd”,进入命令行,输入netstat -abn > c:/port80.txt此命令既是查询当前运行的程序所占用的端口状况,然后到c盘port80.txt文件中找到占用80端口的程序pid,记下pid。打开任务管理器,点击“查看”,选择列,勾选“PID(进程标识符)”,然后单击“进程”标签,找到80端口对应的pid,就可以看到是那个程序占用的了,更改这个程序的port,再重启这个程序,使更改生效。
再次启动iis,一切ok。
我的prot80.txt打开显示
活动连接
协议 本地地址 外部地址 状态
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
[httpd.exe]
说明httpd.exe占用了80端口 在任务管理器中找到该项删除即可 此时再次将我们的网站启用
然后浏览测试网站能否正常使用
如果仍然有问题 可以看看
网站可以正常打开后可能还会有一些问题 会提示你没有权限访问D/Website此时需要找到该文件夹右键属性
Everyone 读取/写入
一些问题:
在数据库 ‘master’ 中拒绝了 CREATE DATABASE 权限。
无法将文件 ‘D:\Website\App_Data\OnlinePrint.mdf’ 作为数据库 ‘OnlinePrint’. 附加
此时经查阅资料得知,运行 SQL Server 数据库,就必须在实例下创建数据库,不管是直接创建、还是附加、还是还原,总之都得在实例下创建。
于是,修改连接字符串,
<add name=”SE_DBConnectionString” connectionString=”Data Source=.\sqlexpress;Initial Catalog=SE_DB;Integrated Security=True;Pooling=False;User Instance=True” providerName=”System.Data.SqlClient” />
添加User Instance=True,即可使用实例成功创建数据库。
未能将文件 obj\Scripts\bootstrap.js 复制到 obj\Release\Package\PackageTmp\ob
将不能复制的文件在项目解决方案中排除!