当前位置:首页 » 编程语言 » saephp

saephp

发布时间: 2023-08-31 19:39:08

php部署到新浪云sae不能正常运行了,求解

sae文档

运行环境

基本环境

新浪云 PHP 运行环境目前的 Web 服务器使用的是:

  • CentOS-6.x

  • Apache-2.2.x

  • PHP-5.3.x / PHP-5.6.x

  • 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

  • mail

  • 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。

    常用字体文件路径:

  • constantSAE_Font_Sun

  • 宋体字体文件路径

  • constantSAE_Font_Kai

  • 楷体字体文件路径

  • constantSAE_Font_Hei

  • 文泉驿正黑字体文件路径

  • constantSAE_Font_MicroHei

  • 文泉驿微米黑字体文件路径

  • 全局函数

  • is_https()

  • 判断客户端是以 http 还是以 https 的方式连接。

    返回:

    如果是 https 连接返回 true,否则返回 false。
热点内容
副编译 发布:2025-02-04 02:05:25 浏览:613
解压按摩师 发布:2025-02-04 01:21:31 浏览:424
linuxssh限制 发布:2025-02-04 01:20:40 浏览:697
脚本式是什么 发布:2025-02-04 01:06:24 浏览:248
手机wps密码怎么取消密码 发布:2025-02-04 00:51:44 浏览:596
算法逻辑表 发布:2025-02-04 00:51:44 浏览:241
零售股票如何配置主线 发布:2025-02-04 00:51:07 浏览:948
预算法施行时间是 发布:2025-02-04 00:50:30 浏览:342
世界ol上传照片 发布:2025-02-04 00:34:13 浏览:63
有初始化的数组编译提示重复定义 发布:2025-02-04 00:33:21 浏览:584