问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php的laravel框架sae能支持吗

发布网友 发布时间:2022-04-06 06:04

我来回答

2个回答

热心网友 时间:2022-04-06 07:34

支持的。
改造本地项目使其支持 SAE 运行环境
接下来我会简要介绍本地项目的基本改造过程,从而使我们在不影响本地开发的情况下,做到本地开发和 SAE 线上运行环境的无痛切换。
1. 修改 app/config/app.php
<?php

$app = array(

'debug' => false,

'url' => 'http://www.dilicms.com',

'timezone' => 'PRC',

'locale' => 'zh-cn',

'key' => 'x1RYfs4ArTE12sz7879mdvse471epPAA',

'providers' => array(

'Illuminate\Foundation\Providers\ArtisanServiceProvider',
'Illuminate\Auth\AuthServiceProvider',
'Illuminate\Cache\CacheServiceProvider',
'Illuminate\Foundation\Providers\CommandCreatorServiceProvider',
'Illuminate\Session\CommandsServiceProvider',
'Illuminate\Filesystem\FilesystemServiceProvider',
'Illuminate\Foundation\Providers\ComposerServiceProvider',
'Illuminate\Routing\ControllerServiceProvider',
'Illuminate\Cookie\CookieServiceProvider',
'Illuminate\Database\DatabaseServiceProvider',
'Illuminate\Encryption\EncryptionServiceProvider',
'Illuminate\Filesystem\FilesystemServiceProvider',
'Illuminate\Hashing\HashServiceProvider',
'Illuminate\Html\HtmlServiceProvider',
'Illuminate\Foundation\Providers\KeyGeneratorServiceProvider',
'Illuminate\Log\LogServiceProvider',
'Illuminate\Mail\MailServiceProvider',
'Illuminate\Foundation\Providers\MaintenanceServiceProvider',
'Illuminate\Database\MigrationServiceProvider',
'Illuminate\Foundation\Providers\OptimizeServiceProvider',
'Illuminate\Pagination\PaginationServiceProvider',
'Illuminate\Foundation\Providers\PublisherServiceProvider',
'Illuminate\Queue\QueueServiceProvider',
'Illuminate\Redis\RedisServiceProvider',
'Illuminate\Auth\Reminders\ReminderServiceProvider',
'Illuminate\Foundation\Providers\RouteListServiceProvider',
'Illuminate\Database\SeedServiceProvider',
'Illuminate\Foundation\Providers\ServerServiceProvider',
'Illuminate\Session\SessionServiceProvider',
'Illuminate\Foundation\Providers\TinkerServiceProvider',
'Illuminate\Translation\TranslationServiceProvider',
'Illuminate\Validation\ValidationServiceProvider',
'Illuminate\View\ViewServiceProvider',
'Illuminate\Workbench\WorkbenchServiceProvider',

'Lavender\Cloud\Sina\Patcher\SaePatcherServiceProvider',
),

'manifest' => storage_path().'/meta',

'aliases' => array(

'App' => 'Illuminate\Support\Facades\App',
'Artisan' => 'Illuminate\Support\Facades\Artisan',
'Auth' => 'Illuminate\Support\Facades\Auth',
'Blade' => 'Illuminate\Support\Facades\Blade',
'Cache' => 'Illuminate\Support\Facades\Cache',
'ClassLoader' => 'Illuminate\Support\ClassLoader',
'Config' => 'Illuminate\Support\Facades\Config',
'Controller' => 'Illuminate\Routing\Controllers\Controller',
'Cookie' => 'Illuminate\Support\Facades\Cookie',
'Crypt' => 'Illuminate\Support\Facades\Crypt',
'DB' => 'Illuminate\Support\Facades\DB',
'Eloquent' => 'Illuminate\Database\Eloquent\Model',
'Event' => 'Illuminate\Support\Facades\Event',
'File' => 'Illuminate\Support\Facades\File',
'Form' => 'Illuminate\Support\Facades\Form',
'Hash' => 'Illuminate\Support\Facades\Hash',
'HTML' => 'Illuminate\Support\Facades\HTML',
'Input' => 'Illuminate\Support\Facades\Input',
'Lang' => 'Illuminate\Support\Facades\Lang',
'Log' => 'Illuminate\Support\Facades\Log',
'Mail' => 'Illuminate\Support\Facades\Mail',
'Paginator' => 'Illuminate\Support\Facades\Paginator',
'Password' => 'Illuminate\Support\Facades\Password',
'Queue' => 'Illuminate\Support\Facades\Queue',
'Redirect' => 'Illuminate\Support\Facades\Redirect',
'Redis' => 'Illuminate\Support\Facades\Redis',
'Request' => 'Illuminate\Support\Facades\Request',
'Response' => 'Illuminate\Support\Facades\Response',
'Route' => 'Illuminate\Support\Facades\Route',
'Schema' => 'Illuminate\Support\Facades\Schema',
'Seeder' => 'Illuminate\Database\Seeder',
'Session' => 'Illuminate\Support\Facades\Session',
'Str' => 'Illuminate\Support\Str',
'URL' => 'Illuminate\Support\Facades\URL',
'Validator' => 'Illuminate\Support\Facades\Validator',
'View' => 'Illuminate\Support\Facades\View',
),

);

$app['sae'] = false;

if (defined('SAE_ACCESSKEY') && (substr(SAE_ACCESSKEY, 0, 4 ) != 'kapp')) {

$removeProviders = array(
'Illuminate\Cache\CacheServiceProvider',
'Illuminate\View\ViewServiceProvider',
'Illuminate\Session\SessionServiceProvider',
);

foreach ($app['providers'] as $key => $provider) {

if (in_array($provider, $removeProviders)) {

unset($app['providers'][$key]);

}

}

$app['providers'] = array_merge($app['providers'], array(
'Lavender\Cloud\Sina\Cache\CacheServiceProvider',
'Lavender\Cloud\Sina\Storage\StorageServiceProvider',
'Lavender\Cloud\Sina\View\ViewServiceProvider',
'Lavender\Cloud\Sina\Session\SessionServiceProvider',
));

$app['aliases']['Storage'] = 'Lavender\Cloud\Sina\Storage\Storage';

$app['sae'] = true;

}

return $app;

以上代码主要作用:在判断程序运行在 SAE 运行环境下的时候,自动注入相应的类取代 Laravel 自带的类实现。
2. 修改 app/config/database.php
使用 SAE 数据库设置常量配置我们的数据库设置。
'mysql' => array(
'driver' => 'mysql',
'host' => SAE_MYSQL_HOST_M,
'database' => SAE_MYSQL_DB,
'username' => SAE_MYSQL_USER,
'password' => SAE_MYSQL_PASS,
'charset' => 'utf8',
'collation' => 'utf8_general_ci',
'prefix' => '',
),

3. 配置 app/config/cache.php 和 app/config/session.php
'driver' => 'memcache',

使用 SAE 提供的 memcache 驱动。
4. 配置本地开发环境
Laravel 支持自定义开发环境,一般本地开发就是 local 配置啦,这里可以在bootstrap/start.php 中设置。
然后我们在 app/config/local 文件夹下配置本地开发环境配置。
经过以上配置,我们搭建了本地开发和SAE运行环境的配置分离。
然后就是尽情开发啦~~~~~~~~~
上传代码到 SAE

热心网友 时间:2022-04-06 08:52

SAE主要还是不支持本地IO操作,其他的 应该没什么问题。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我在石家庄我的显卡坏了过了保修期我想问一下哪里可以修? 梦见蹲了半天的茅房 2016寒假小结作文怎么写 荣耀9,为什么电量现在越来越不耐用,之前更 哪些是易燃易爆场所 加油站有哪些消防安全隐患 说美国和苏联可以毁灭地球若干次的说法是怎么算出来的? 上证指数的年线怎么看? 早教中心需要什么证件 开办早教中心需要哪些许可证 cookie设置的queue方式是什么意思,和Cookie:Make有什么区别 Laravel 单元测试中怎样运行 Request laravel csrf token值存在cookie里有什么意义 laravel怎么获取cookie 如何共享laravel的session跟cookie laravel取的加密cookie怎么解密 laravel设置Cookies不生效怎么解决 为什么我Epic下载GTA5提示请稍后,过了一会又提示错误,网络问题。这是怎么回事? windows10下如何关闭硬件加速 windows10怎么关闭独立显卡的硬件加速 win10怎么关闭硬件加速? windows系统如何打开显卡的硬件加速呢? win10怎么查看硬件加速配置 win10怎么开启显卡硬件加速 win10 10586更新了什么内容 win10build10586修复了哪些问题bug 电脑蓝屏代码的原因? 安装好win10 2004系统后,N卡更新最新驱动出现这种蓝屏解决方法 求解,win10错误记录 win10系统诡异bug,文件属性显示异常 win10 2004版 WiFi图标问题? windows下怎么通过composer安装yiiw 怎么安装yii2.0.4 使用Composer安装Yii框架的方法 windows下安装yii框架,在命令行模式下输入:yiic webapp ..&#47;demo没响应 怎么解决阿? yii2 怎么安装和使用PHPExcel? 买了个网站源码YII框架的,不知道怎么安装,哪位大大教下 怎样知道yii框架安装配置成功 我在window7下安装好了yii框架,为何在浏览器上不能运行 如何在 yii2框架加入 百度编辑器 有一套yii框架源码不会搭建,大神们有没有教程啊? win 8.1 下 easyphp的环境 在配置yii时提示这个 但是还能生成 就是想问一下大神是什么问题 yii框架怎么在eclipse下搭建 php yii框架怎么安装百度编辑器 通过composer安装yii2问题 win10玩cf。 出现error missing fonts的字样!怎么解决!兼容性试了不顶事_问一问 怎么Win10不兼容CF(穿越火线)的? win10玩不了穿越火线 怎么办? win10如何兼容穿越火线 win10玩穿越火线一般directx版本? 怎么在win10里面设置穿越火线游戏的16色