真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

輕松搭建基于Serverless的ThinkPHP應用-創(chuàng)新互聯(lián)

輕松搭建基于 Serverless 的 ThinkPHP 應用

首先介紹下在本文出現(xiàn)的幾個比較重要的概念:

公司主營業(yè)務:成都做網(wǎng)站、網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出高昌免費做網(wǎng)站回饋大家。

函數(shù)計算(Function Compute): 函數(shù)計算是一個事件驅(qū)動的服務,通過函數(shù)計算,用戶無需管理服務器等運行情況,只需編寫代碼并上傳。函數(shù)計算準備計算資源,并以彈性伸縮的方式運行用戶代碼,而用戶只需根據(jù)實際代碼運行所消耗的資源進行付費。函數(shù)計算更多信息 參考。
Fun: Fun 是一個用于支持 Serverless 應用部署的工具,能幫助您便捷地管理函數(shù)計算、API 網(wǎng)關(guān)、日志服務等資源。它通過一個資源配置文件(template.yml),協(xié)助您進行開發(fā)、構(gòu)建、部署操作。Fun 的更多文檔 參考。

備注: 本文介紹的技巧需要 Fun 版本大于等于 3.6.3。

輕松搭建基于 Serverless 的 ThinkPHP 應用

ThinkPHP 是什么?

ThinkPHP 是一個免費開源的,快速、簡單的面向?qū)ο蟮妮p量級 PHP 開發(fā)框架,是為了敏捷 WEB 應用開發(fā)和簡化企業(yè)應用開發(fā)而誕生的。ThinkPHP 從誕生以來一直秉承簡潔實用的設(shè)計原則,在保持出色的性能和至簡代碼的同時,更注重易用性。遵循 Apache2 開源許可協(xié)議發(fā)布,意味著你可以免費使用 ThinkPHP,甚至允許把你基于 ThinkPHP 開發(fā)的應用開源或商業(yè)產(chǎn)品發(fā)布/銷售。

效果預覽

本文涉及到的兩個應用示例部署后的鏈接,點擊預覽效果:

  1. ThinkPHP 官方示例: http://13492727-1986114430573743.test.functioncompute.com
  2. ThinkPHP 博客示例: http://13500180-1986114430573743.test.functioncompute.com
  3. ThinkPHP 博客示例管理后臺: http://13500180-1986114430573743.test.functioncompute.com/admin

環(huán)境準備

首先按照 Fun 的 安裝文檔里介紹的方法將 Fun 安裝到本機。

PS: 本文介紹的方法,不需要安裝 Docker,僅僅安裝 Fun 即可,最簡單的方式就是直接下載可執(zhí)行的二進制文件。

安裝完成后,可以執(zhí)行 fun —version 檢查 Fun 是否安裝成功。

第一個示例:快速初始化并部署一個 ThinkPHP 示例應用

初始化一個 thinkphp 示例:

composer create-project topthink/think tp

將該示例在本地運行測試:

php think run

可以在本地看到效果:

輕松搭建基于 Serverless 的 ThinkPHP 應用

傳統(tǒng)的開發(fā)方式是,本地開發(fā)完成后,就要進行部署工作了,通常我們部署一個 PHP 應用可能需要如下幾步:

  1. 購買一臺物理機器,比如 ECS
  2. 在物理機器上綁定公網(wǎng) ip、安裝 php、nginx、php-fpm
  3. 配置 nginx、php-fpm 以及上傳應用到該機器上
  4. 運行測試

其中最復雜的就要數(shù)第 2、3 步了,因為可能不同的環(huán)境的配置方法還不一樣,會有比較多的坑。我們演示下如何將應用部署到函數(shù)計算上。

fun deploy

僅需要一個命令,F(xiàn)un 會自動進入部署流程,在該流程中,用戶僅僅需要按下一系列的回車即可。流程細節(jié)如下:

  1. Fun 檢測到這不是一個 Fun 項目,會提示協(xié)助創(chuàng)建(直接回車或者輸入 y 即可)
    輕松搭建基于 Serverless 的 ThinkPHP 應用
  2. Fun 項目自動創(chuàng)建成功,提示是否進行部署?可以直接回車,或者輸入 y 進行確認
    輕松搭建基于 Serverless 的 ThinkPHP 應用
  3. 然后 Fun 會直接將應用部署到線上了
    輕松搭建基于 Serverless 的 ThinkPHP 應用

部署完成后,我們可以根據(jù)部署成功的日志看到,函數(shù)計算為我們生成了臨時域名 13492727-1986114430573743.test.functioncompute.com,我們可以通過這個臨時域名直接訪問我們剛剛部署的應用。

備注:臨時域名僅僅用作演示以及開發(fā),是有時效的,如果用作生產(chǎn),請綁定已經(jīng)備案的域名。

第二個示例:快速遷移一個已有的 ThinkPHP 應用

這里我們拿一個開源的 ThinkPHP 博客做示例: https://github.com/wolf-leo/Wolf-Blog

首先我們需要將 blog 克隆下來:

git clone https://github.com/wolf-leo/Wolf-Blog.git

使用 composer 安裝依賴:

composer install

在要使用的 mysql 數(shù)據(jù)庫上新建一個名為 blog_test 的 database。然后編輯 config/database.php 文件,修改其中的數(shù)據(jù)庫地址、用戶名、密碼信息。

// ... ...
return [
    // ... ...
    // 服務器地址
    'hostname' => '192.168.17.104',
    // 數(shù)據(jù)庫名 測試數(shù)據(jù)庫名稱 不用修改 否則默認安裝會出錯
    'database' => 'blog_test',
    // 用戶名  需要修改的地方
    'username' => 'root',
    // 密碼     需要修改的地方
    'password' => 'root',
    // ... ...
];

修改完成后,就可以本地啟動查看效果了:

$ php think run
ThinkPHP Development server is started On 
You can exit with `CTRL-C`
Document root is: /examples/php/Wolf-Blog/public

然后打開 http://localhost:8000 可以直接看到效果。

輕松搭建基于 Serverless 的 ThinkPHP 應用

本地測試沒問題后,就要進行部署了。部署前,我們需要知道,由于函數(shù)計算運行時代碼目錄本身是不可以修改的,而 ThinkPHP 會在代碼目錄下的 Runtime 這個目錄寫一些緩存文件,我們需要將這個緩存文件放到 /tmp 下面。在我們的例子中就是將 thinkphp/library/think/App.php 這個文件的第 174 行做如下修改:

- $this->runtimePath = $this->rootPath . 'runtime' . DIRECTORY_SEPARATOR;
+ $this->runtimePath = DIRECTORY_SEPARATOR . 'tmp' . DIRECTORY_SEPARATOR;

修改完成后可以直接使用以下命令進行部署:

fun deploy

經(jīng)歷與第一個示例一樣的步驟后,我們可以得到一個可以訪問的臨時域名進行測試: 13500180-1986114430573743.test.functioncompute.com。打開該臨時域名,可以預覽到與本地運行一樣的效果。

還可以訪問 13500180-1986114430573743.test.functioncompute.com/admin 打開該應用的管理后臺:

輕松搭建基于 Serverless 的 ThinkPHP 應用

總結(jié)

本文主要介紹了如何將 ThinkPHP 應用部署到函數(shù)計算。相比較與傳統(tǒng)的部署方法,不僅沒有更復雜,還省略了購買機器、安裝配置 Nginx、安裝配置 php-fpm 等步驟??梢詫崿F(xiàn),將傳統(tǒng)的 ThinkPHP 應用在本地開發(fā)完成后,一鍵部署到遠端直接用于生產(chǎn),并擁有了彈性伸縮、按量付費、免運維等特性。

如果您在遷移您的應用過程中遇到了問題,歡迎加入我們的 dingding 群 11721331 反饋。

“ 阿里巴巴云原生關(guān)注微服務、Serverless、容器、Service Mesh 等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢、云原生大規(guī)模的落地實踐,做最懂云原生開發(fā)者的技術(shù)圈?!?/p>


文章題目:輕松搭建基于Serverless的ThinkPHP應用-創(chuàng)新互聯(lián)
URL地址:http://weahome.cn/article/dieiej.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部