博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在GoDaddy上部署SubText
阅读量:4568 次
发布时间:2019-06-08

本文共 4389 字,大约阅读时间需要 14 分钟。

 

引子:

 

本人原先使用的虚拟主机是一家叫的公司提供的,半年里面出现了好几次问题,基本都是Server Application Unavailable,每次都要联系他们才能恢复,这个问题我在平时也经常碰到,因为我们公司的项目有些是1.1,有些是2.0,如果将1.1的项目和2.0的项目使用一个进程池部署的话,可能就会出现Server Application Unavailable错误。所以我怀疑他们的服务器上的不同版本framework的应用程序是混在一起部署的。前天,同样的情况又发生了,于是我又向他们反映,说这样的情况出现了很多次了,问他们是不是将1.1和2.0混在一起部署。那人很不耐烦,我问进程池的问题,他说“我想忙其他的,有空再和你讨论这些”。经我一番追问,按照他的说法,他们的”进程池是随机分配的,几个网站一个进程池”。我说那这样会产生问题,可以参考。想不到他态度极其恶劣,引用他的原话”对于你的问题,不好意思,我不想回答。请不要搞得好像我们欠你的一样,对于处理凡是,我看也不用你来教”,“很简单,你觉得我们这里不行,那你就换其他人的空间就是了。”。要知道,我是付钱的啊!对于这种公司,我真是无语了。。。我想这种公司,这种对待客户的态度,估计被淘汰是迟早的事吧,现在虚拟主机满天飞。。。

 

正文:

 

好,你说换,我马上就换给你看。。。我想估计国内的虚拟主机都不太靠谱,我决定搞个国外的试试。。。经过一番比较,还是觉得GoDaddy的比较好,4.99刀一个月,一年折合人民币的话大概400左右(按照汇率1:7来算)。提供的功能还是比较满意的,列举主要几点:

空间:

Disk Space:10 GB
Monthly Data Transfer :300 GB
FTP Users:50
数据库:(同时有3种数据库)
MS Access:Yes
MS SQL:1X200M
MYSql:2X200M

域名:

External Domains:Unlimited
Subdomains:25

支持语言:

Frontpage Server Ext.                
Server Side Includes (SSI)                
ASP                
ASP.NET v1.0/2.0/3.0/3.5                
ASP.NET AJAX                
PHP4 or PHP5°

特别提一下,这个空间还支持虚拟目录,所以可以同时部署很多应用程序。

更详细的功能列表请参考: 注意,请选择正确的Operating System,.net的话,当然要选Windows:

 

对于我这么一个小博客来说,这些是绰绰有余了,马上申请了2个月(先试试看,因为先前在now.cn申请了空间,结果subtext部署不上去。。。),一共9刀多,信用卡付钱马上开通使用。

以下是博客迁移过程,遇到了一些问题,现在记录下来,希望对遇到同样问题的朋友有所帮助。

1. 首先要用GoDaddy的Wizard对空间做一些基本设置,很简单,按照提示照做就行。

2. 将域名转向到新的空间。

3. 用FTP把所有文件从搬到GoDaddy。GoDaddy空间开通以后,ftp帐号会在右边页面的panel显示:

4. 用GoDaddy的向导创建数据库。

5. 迁移数据库。

这里要详细说一下迁移数据库的问题,可能由于安全原因,GoDaddy是不支持恢复从其他数据库备份的文件的。但是GoDaddy提供了一个很好的接口——通过 来发布数据库。我从海意把数据库下载下来,在本地的sql server上恢复好,然后用发布,在这个过程中,遇到了一个问题,由于本地的数据库的Collation是ChineseXXX而GoDaddy上的是SQL_LatinXXX,所以在发布过程中会遇到Collation不匹配而失败,所以如果遇到这个错误,则需要用先生成Schema的脚本,拿到GoDaddy的DataBase Web Administration上运行。之后再用发布数据。

6. 修改Web.Config,将ConnectionString指向新的数据库。

7. 运行网站,可能会遇到报错,我遇到了两个问题:

(a)

 

Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: This configuration section cannot be used at this path.  This happens when the site administrator has locked access to this section using <location allowOverride="false"> from an inherited configuration file.
Source Error:

这个问题是由于GoDaddy的Trust Level是Medium,所以,要把WebConfig里的<trust level="Full" originUrl=".*" />注释掉。

(b)

Exception Details: System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.Stack Trace:[SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]   System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0   System.Security.CodeAccessPermission.Demand() +59   System.Reflection.Assembly.VerifyCodeBaseDiscovery(String codeBase) +118   System.Reflection.Assembly.get_CodeBase() +32   System.Web.Handlers.ScriptResourceHandler.GetCodeBaseWithAssert(Assembly assembly) +31   System.Web.Handlers.ScriptResourceHandler.GetLastWriteTime(Assembly assembly) +36   System.Web.Handlers.ScriptResourceHandler.GetAssemblyInfoInternal(Assembly assembly) +58   System.Web.Handlers.ScriptResourceHandler.GetAssemblyInfo(Assembly assembly) +59   System.Web.Handlers.RuntimeScriptResourceHandler.System.Web.Handlers.IScriptResourceHandler.GetScriptResourceUrl(Assembly assembly, String resourceName, CultureInfo culture, Boolean zip, Boolean notifyScriptLoaded) +336   System.Web.UI.ScriptManager.GetScriptResourceUrl(String resourceName, Assembly assembly) +114   System.Web.UI.ScriptRegistrationManager.RegisterClientScriptResource(Control control, Type type, String resourceName) +115   System.Web.UI.ScriptManager.RegisterClientScriptResource(Control control, Type type, String resourceName) +9

这个问题是由于SubText自带了一个1.0的Ajax Extension,在有3.5 framework的机器上需要用GAC里的那个,因为那个是full trusted的。

所以要在Web.Config里加上:

8. 解决了上述问题之后,网站就运行起来了!

因为是国外的空间,速度具体还没测过,大家可以试试看:,另外我还尝试着部署了一个应用在虚拟目录下:

 

总结:在GoDaddy上部署subtext是稍微有些困难的,国外很多朋友也遇到过很多的问题,主要集中在trust level和数据库发布上,所以今天记一笔,希望遇到同样问题的朋友有帮助。

 

ps: 另外,借此机会向 同学说声抱歉,上次可能在回复里说了一些伤到你的话 :)

转载于:https://www.cnblogs.com/jinweijie/archive/2009/09/11/deploy_subtext_on_godaddy.html

你可能感兴趣的文章
Mysql主从配置,实现读写分离
查看>>
ES6中的Symbol
查看>>
1.8小结
查看>>
浅谈C#关于AOP编程的学习总结
查看>>
无障碍阅读
查看>>
bzoj1494 生成树计数 (dp+矩阵快速幂)
查看>>
关于Java的Daemon线程的理解
查看>>
Android开发之WebService介绍
查看>>
多线程死锁发生情景之一:同步的嵌套
查看>>
RestFramework之解析器
查看>>
Redis安装异常解决办法
查看>>
Jsonp post 跨域方案
查看>>
python字典操作和内置方法
查看>>
【Windows】Windows Restart Manager 重启管理器
查看>>
vim切换编程语言_一步步将vim改造成C/C++开发环境(IDE) (转自:Figthing)
查看>>
cascade sqlite 数据库_SQLITE ON UPDATE操作
查看>>
python是动态数据类型语言_[Python basic]Python basic数据类型;强类型动态脚本语言,基础,基本...
查看>>
apache 代理 图片无法展示_Apache中间件漏洞详解
查看>>
android 底部上滑菜单_底部工作表
查看>>
linux查看显卡型号p4卡或者t4卡_装机宝典二十三式 | 为什么你直播那么卡?小老弟试试双卡推流吧...
查看>>