微信如何搭建自己的服务器资源
第一步:申请帐号
1创建新浪云计算应用
我们使用SAE新浪云计算平台作为服务器资源,并且申请PHP环境+MySQL数据库作为程序运行环境。使用新浪微博账号可以直接登录SAE,登录后SAE将赠送500个免费云豆。
第二步:创建新应用22
1登录后点击顶部我的首页
2点击下侧的创建新应用,这时会弹出提示, 禁止放置违法违规内容,点击继续创建,弹出如下窗口。
3选择一个未使用的appid,如果老是已经被使用不知道该什么好,就填写你的QQ号或者手机号吧。
填写二级域名AppID、应用名称、验证码,开发语言选择PHP,应用类型选择web应用。然后点击创建应用
4应用创建成功。并自动跳转到应用列表中,可以看到已经有刚才创建的CCTV-7
第三步:创建新版本33
1选择CCTV-7右侧的应用管理下面的代码管理,
2跳转到代码管理
3点击右侧的“创建一个新版本”
4版本号默认为1,点击创建,成功后如下图所示:
5到这里,就成功创建了一个域名应用了
第四步:上传代码44
将以下代码复制下来,另存为indexphp。必须使用专业的开发编辑软件操作,例如Notepad++,不要使用Windows自带的记事本等。
然后将indexphp文件压缩成ZIP格式,注意不能用RAR格式
这样会生成一个indexzip的文件。
在代码管理界面中,选择操作按钮。
选择上传代码包。
点击上传文件,选择刚才压缩好的indexzip文件,点击上传,上传成功后如下所示,如果上传有问题,请在Chrome浏览器下重试一下。
点击操作按钮下的代码编辑,
有时候需要输入自己的安全密码,如果不记得了就点击“找回密码”。
安全验证成功后继续之前的操作。
我们可以看到indexphp已经上传成功,双击可以查看编辑里面的代码
8新浪云应用的创建就成功了。
参考资料:
sae是严格区分文件名大小写的,这个要注意一切,如果你要引入同文件夹下的一个aaaphp文件,
你可以试试用
require_once "aaaphp";//绝对不可以是AAAphp
sae文档
运行环境
基本环境
新浪云 PHP 运行环境目前的 Web 服务器使用的是:
CentOS-6x
Apache-22x
PHP-53x / PHP-56x
Web 服务器运行在 64 位 Linux 环境下。
Apache 运行在 Prefork 模式下,即每个请求都会对应一个 Apache 进程,请求结束后该进程才能服务于下一个请求。平台通过模块方式扩展了 Apache 和 PHP 的相关功能。
禁用函数和类
出于平台安全性考虑,我们禁用了以下函数和类,禁用的标准主要有四点:
出于对安全性的考虑
出于对资源管理的考虑
不常用的 API
我们提供更好替代方案的 API
禁用的函数:
symlink
link
exec
system
escapeshellcmd
escapeshellarg
passthru
shell_exec
proc_open
proc_close
proc_terminate
proc_get_status
proc_nice
dl
pclose
popen
stream_socket_server
stream_socket_accept
stream_socket_pair
stream_wrapper_restore
mb_send_mail
posix_kill
apache_child_terminate
apache_lookup_uri
apache_reset_timeout
apache_setenv
virtual
socket_create
socket_create_pair
realpath_cache_get
禁用的类:
SQLiteDatabase
SQLiteResult
SQLiteUnbuffered
SQLiteException
沙箱
代码和数据的隔离:每个应用在运行期间,只能“看”到自己的代码和数据,即 A 应用无法访问 B 应用的代码和数据。注意,这里提到的在 Web 服务器上的数据,往往指一些中间处理过程的临时数据,并非最终落地的数据,比如用户上传照片会临时存储到 TmpFS。
连接数的隔离:我们知道,程序写的不好,很容易导致阻塞,并进一步导致连接数的飙升。单个应用过多占用 Apache 连接数,原因往往是多方面的,应用请求外部资源被阻塞是一个最为常见的因素,另外应用页面过大浏览器下载慢也是常见因素之一。公有云平台同一时刻往往运行着大量的应用,如果某一应用出现连接数异常,最直接的后果是整个平台上的所有应用都将陷入瘫痪。新浪云平台目前有设置“应用最大 HTTP 并发连接数”,目前这个值是 500,如果应用平均单个请求处理时长是 100ms,那么该应用每秒的 HTTP 并发连接将可以到达 5000,每天的请求超过 1 亿没有问题。但如果您的应用平均每个请求处理时长 2 秒,那么该应用每秒的 HTTP 并发连接只能到达 250,每天支撑的请求数将在千万。总体而言,尽量迅速处理完请求对应用是有利的,而且也是平台所鼓励的。
内存隔离:目前新浪云平台上对单个 PHP 脚本的处理,设置了 128MB 的上限 (max_memory,ini_set 不可修改),我们认为这个设置是一个相对很高的值,可以说能够满足绝大部分应用的需求。设想一台服务器 8G 内存,如果每个 PHP 处理都消耗 64M 内存,那么该服务器最多只能同时运行 128 个 PHP 脚本。新浪云引入了”应用最大并发内存数“的概念,目前的设置是 4GB。如果应用程序单个请求的内存消耗平均在 16MB,那么可同时运行 256 个请求,这和上面的并发连接数的设定是基本一致的。
CPU 隔离:这主要是通过新浪云的配额系统来达到 CPU 时间的隔离。每个应用都有 CPU 时间消耗的分钟速度限制,避免了某一应用过多非法获取 CPU 资源导致其它应用响应慢的问题。
目前新浪云平台上允许的“单请求最大存活时长”是 300 秒 。
注解
当应用并发超过限制,系统会返回 508 错误,并显示 Connections out of quota。当应用内存占用超过限制,系统会返回 509 错误,并显示 Memory usage out of quota。
环境变量
您可以通过打印 PHP 的全局变量 $_SERVER 来获取跟新浪云相关的环境变量信息,每个环境变量的信息如下:
变量名
说明
HTTP_APPNAME 标志该请求属于哪个应用
HTTP_APPVERSION 标志该请求对应该应用的哪个版本
HTTP_ACCESSKEY 该应用访问各种服务资源的帐号
HTTP_SECRETKEY 该应用访问各种服务资源的密码
HTTP_APPCOOKIE 一些和 app 管理相关信息
警告
不要直接打印出 $_SERVER 变量,这样可能会造成应用的 AccessKey 和 SecretKey 的泄露。为了应用的安全考虑,请保护好自己的 AccessKey 和 SecretKey。
常用字体文件路径:
constant SAE_Font_Sun
宋体字体文件路径
constant SAE_Font_Kai
楷体字体文件路径
constant SAE_Font_Hei
文泉驿正黑字体文件路径
constant SAE_Font_MicroHei
文泉驿微米黑字体文件路径
全局函数
is_https()
判断客户端是以 http 还是以 https 的方式连接。
返回:
如果是 https 连接返回 true,否则返回 false。什么云都可以。我之前用过腾讯云后来用的阿里云。开发主要是你最好有一个备案的网址。因为纯IP的有些功能你是用不了。代码的话你可以下载一下PHP版本的demo。然后做网址或者域名的解析,解析完之后,把你的代码上传到对应网址解析的文件夹。你先写个小程序,可以测试一下网址访问有没有问题,最后再部署微信的其他功能。
自动生成的html文件肯定是可以用的,不过你的html文件还可以操作数据库??这个不对吧?
html是静态网页,对seo等方面有很大好处,但是它不能读取数据库等。
同时sae不能实时生成html文件,他们生成后会放到临时存储里面,你看不到,也下载不下来
少见这种格式的文件啊而且现在很多格式都是可以自己定的
就像WORD文档是DOC,文本文件是TXT,
如果你用的软件是特殊软件,被SAE也是可能是自己创造出来的,并不是公认的什么格式(当一个软件成为众所周知的软件的时候,它所使用的格式就很容易查到了)
如果这个文件不太的,你可以用记事本打开它试试
0条评论