步骤:

  第一步:注册新浪SAE账号(即新浪微博),下载TortoiseSVN

  第二步:部署代码

      使用SAE来部署代码,SAE提供的是PAAS层的云服务,即不是给你一个虚拟主机而是直接上传应用。进入SAE的控制台,下图所示:

      

      1. 创建新应用:

      

      2. 选择python2.7后,创建新项目成功后,回到控制台,点击项目就可以进入对项目进行管理。这里可以用git和svn来上传代码,这里推荐用svn。

      3. 创建一个版本,版本号为1。创建成功后,可以看到如下信息。

      

      4. 使用svn部署代码

       首先在合适的位置创建一个svn文件夹,比如 E:\svn。

       然后,在svn下面再创建一个文件夹,名字是在创建应用时填在二级域名里的名字,如lcnet。

       鼠标右击文件夹pylabsite,选择SVN  Checkout,填写URL,其他默认,点击OK,之后填写注册邮箱和密码,填写时选上save authentication。

      

      完成之后在lcnet文件夹里会多出2个文件夹,1和.svn,.svn里的东西不用管,重点看1,刚检出来的时候 1 目录下只有config.yaml

      和index.wsgi两个文件,然后将本地项目lcnet复制到1文件夹里,由于SAE最多支持Django1.4版本,这里要把python安装位置(例

      如C:\Python27\Lib\site-packages)的Django包拷贝过来,新建一个site-packages文件夹,记得将site-packages\django

      \contrib\admin下的static放在1文件夹下,文件目录结构如下:

      

  三、修改文件信息:

      修改config.yaml和index.wsgi这两个文件。

      

#--config.yaml--#
name: lcnet2
version: 2 libraries:
- name:"django"
version:"1.8.3" handlers:
- url: /foo
static_dir: foo

      

#--index.wsgi--#
import os
import sys root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root, 'site-packages'))
os.environ.setdefault("DJANGO_SETTINGS_MODULE" , "lcnet_blog.settings") from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

      1/lcnet_blog/wsgi.py修改如下:

      

import os
import sys
from django.core.wsgi import get_wsgi_application
root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root,'.','site-packages'))
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lcnet_blog.settings") application = get_wsgi_application()

      1/lcnet_blog/urls.py修改如下:

#--urls--#
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'',include('blog.urls'))
]
admin.autodiscover()
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns += staticfiles_urlpatterns()

      1/lcnet_blog/settings.py修改:

      

EBUG = True
TEMPLATE_DEBUG = False
ALLOWED_HOSTS = ['.sinaapp.com',] debug = not environ.get("APP_NAME","") if debug:
MYSQL_DB = 'lcnet'
MYSQL_USER = 'root'
MYSQL_PASS = 'root'
MYSQL_HOST_M = '127.0.0.1'
MYSQL_HOST_S = '127.0.0.1'
MYSQL_PORT = '3306'
else:
import sae.const
MYSQL_DB = sae.const.MYSQL_DB
MYSQL_USER = sae.const.MYSQL_USER
MYSQL_PASS = sae.const.MYSQL_PASS
MYSQL_HOST_M = sae.const.MYSQL_HOST
MYSQL_HOST_S = sae.const.MYSQL_HOST_S
MYSQL_PORT = sae.const.MYSQL_PORT DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': MYSQL_DB, ## 数据库名称
'USER': MYSQL_USER,
'PASSWORD': MYSQL_PASS, ## 安装 mysql 数据库时,输入的 root 用户的密码
'HOST': MYSQL_HOST_M,
'PORT': MYSQL_PORT,
}
}

  第四步、上传代码:

      

    将所有要修改的东西修改完,就可以通过svn上传到SAE了,操作方法,右键1,选择SVN Commit…

Django包有个十几M,不过上传速度很慢,这个过程可以休息会(sae偶尔会抽,多尝试上传几次)。

 第五步、配置Mysql:

    以上配置完成了,现在数据库还是空的,有一种方法是在本地部署SAE环境然后 python manage.py migrate

      同步到服务器,不过这样搞很折腾。

第二种方法是在本地执行 python manage.py migrate,然后从本地Mysql导出SQL语句文件,然后在SAE的Mysql

      运行SQL语句,我这里是用 Navicat for MySQL 导出的SQL语句文件,很方便。

    

    然后就可以访问 yourAppName.sinaapp.com 来看我们的劳动成果了。

    参考:

       1.  http://www.sinacloud.com/doc/sae/python/tutorial.html

         2.  http://www.mamicode.com/info-detail-471552.html

         3.  http://my.oschina.net/u/877170/blog/314459?fromerr=nY9nBubm

 

  

      

      

      

新浪SAE部署django博客的更多相关文章

  1. 使用 Nginx 和 Gunicorn 部署 Django 博客(转)

    原文:http://zmrenwu.com/post/20/  http://www.siar.me/post/9/ 针对很多朋友反映按照教程的做法始终只能看到 Nginx 欢迎页面的问题,Tian ...

  2. 全站之路一路坑(2)——在Apache下部署django博客

    上一篇博客:全栈之路一路坑之使用django开发博客 开发完博客之后,很多后续应用需要博客部署之后才可以使用,这篇文章就来尝试一下将开发好的博客部署到服务器上. 开发阶段,一直使用的是virtuale ...

  3. 新浪SAE部署 503 JDK版本冲突解决

    上午把本地调试好的微信应用部署到SAE上,结果访问503错误.关键日志:—————————————————————————————————org.eclipse.jetty.servlet.Servl ...

  4. 在新浪sae上部署WeRoBot

    花了整整一个下午,终于在新浪sae部署完成WeRoBot,现在将其中的曲折记录下来. 首先下载WeRoBot-SAE-demo,按照README.md中的要求,执行下述命令: git clone gi ...

  5. 国内云引擎平台概览——新浪SAE,阿里ACE,百度BCE

    新浪SAE 平时大家的測试server都是执行在自己的PC上面,用Tomcat或者IIS搭建的本机server. 事实上新浪云平台SinaAppEngine也是挺好用的. 今天总结一下我使用过程中的一 ...

  6. Django 博客开发教程目录索引

    Django 博客开发教程目录索引 本项目适合 0 基础的 Django 开发新人. 项目演示地址:Black & White,代码 GitHub 仓库地址:zmrenwu/django-bl ...

  7. 【网站开发】在新浪SAE上搭建一个博客

    概述 在新浪SAE上搭建一个博客 1.访问新浪SAE站点 http://sae.sina.com.cn/ 2.注册新浪SAE 3.选择应用仓库 4.选择WordPress 5.安装WordPress ...

  8. 部署新浪SAE web.py Session及图片上传等问题注意事项

    1.以下几条代码解决编码问题 import sysreload(sys)sys.setdefaultencoding('utf-8') 2.图片上传问题 需要开通sina的Storage服务,随便建个 ...

  9. [SVN Mac自带SVN结合新浪SAE进行代码管理]

    前一篇我转载了别人SVN的使用方法,前面的配置和服务器我不是很明白,自己尝试后发现我需要使用到的核心命令是下面一些. 新浪SAE提供了SVN代码管理仓库,只要进入相应应用,然后点击左侧代码管理,到最下 ...

随机推荐

  1. web.xml filter 顺序

    The order the container uses in building the chain of filters to be applied for a particular request ...

  2. 编译安装-Apache

    一.配置选项说明 二.安装apache 1.环境准备 2.安装apr 3.安装apr-util 4.安装pcre 5.安装httpd 6.修改配置文件 7.开机自启动 8.注册为服务 9.测试 一.配 ...

  3. JQery icheck 插件

    <script type="text/javascript"> $(document).ready(function(){ var callbacks_list = $ ...

  4. android开发中关于VersionCode和VersionName

    Google为APK定义了两个关于版本属性:VersionCode和VersionName,他们有不同的用途. VersionCode:对消费者不可见,仅用于应用市场.程序内部识别版本,判断新旧等用途 ...

  5. Linux环境下oracle创建和删除表空间及用户

    #su - oracle $ sqlplus /nolog SQL> connect / as sysdba --//创建临时表空间 create temporary tablespace te ...

  6. MHA高可用+VIP 集群故障转移(已测试成功)

       服务器部署说明192.168.158.201 mha管理,mysql主服192.168.158.202 mha节点,mysql从服192.168.158.203 mha节点,mysql从服Man ...

  7. 使用jQuery-AJAX–读取获得跨域JSONP数据的示例

    在项目开发中,如果在同一个域名下就不存在跨域情况,使用$.getJSON()即可实现.但是需要跨域请求其他域名下面的Json数据就需要JSONP的方式去请求,跨域写法和getJSON有差异.如下:   ...

  8. 无法将类型为 excel.applicationclass 的 com 强制转换为接口类型 的解决方法。

    今天碰到客户的电脑在导出EXCEL的时候提示,无法将类型为 excel.applicationclass 的 com 强制转换为接口类型 excel._application 的问题 最后用下面的方法 ...

  9. C++之vector中元素删除

    今天在删除vector中的元素中遇到一个问题,这里记录下来以便以后查阅. 预备知识:用到了erase()函数,对于一个容器c来说,假设迭代器为p,那么执行: c.erase(p)之后就删除了容器c中p ...

  10. 【JavaScript】父子页面之间跨域通信的方法

    由于同源策略的限制,JavaScript跨域的问题,一直是一个比较棘手的问题,为了解决页面之间的跨域通信,大家煞费苦心,研究了各种跨域方案.之前也有小网同学分享过一篇“跨域,不再纠结” 开始照着尝试时 ...