1. 程式人生 > >在centos部署yii2 advanced框架

在centos部署yii2 advanced框架

手頭閒置了一個阿里雲的雲伺服器,乾脆拿來部署一個yii2 advance框架,之後也可以在上面搭建自己的個人部落格。話不多說,擼起袖子開幹。

本次部署需要達到的目標:

a、可訪問的網站正式環境埠10080(因域名還沒準備,就先用ip地址+埠訪問)。

b、可訪問的網站測試環境埠10081。

c、可通過git進行版本管理與迭代。git推入到遠端時,程式碼即時更新至測試環境。

php執行環境提前備好,安裝apache、php、Mysql,composer、git等, 此類的教程很多可以盡情百度,保證php能正常在網頁中執行,就可以開始安裝yii2了,開工!

1、首先從yii2官網獲取yii2_advanced的框架檔案,解壓至特定資料夾:


解壓後的目錄如上圖。

2、建立空的git倉庫,為承載框架內容做準備。

      a、進入到準備存放git的倉庫:cd /mnt/git

      b、初始化git倉庫:git init --bare project.git

      c、建立可以使用git的使用者:useradd gituser ; passwd gituser

      d、之後賦予git使用者訪問git倉庫的許可權:chown -R gituser:gituser project.git/

3、建立測試環境:

      a、進入測試環境的目錄:cd /mnt/test

      b、clone剛剛建立的空git倉庫:git clone /mnt/git/project.git

      c、將正式環境目錄下的檔案拷貝至測試環境目錄:cp -a /www/project/. project/     #注意這裡的/www/project/後有一個點號,代表連同隱藏檔案一併複製,-a則可以連同檔案許可權屬性一併複製。

4、以上即填充好了測試環境的資料,但此時git倉庫還是空的,我們將測試目錄下的檔案提交至git。

      a、進入測試環境的目錄:cd /mnt/test/project

      b、提交當前所有檔案:

            git add .

            git commit -m "first init"

            git push

      c、等提交完成之後用git log看看日誌,已經提交成功:


      d、另外,為了讓本地推入到遠端的程式碼能自動同步至測試服,這裡將test/project目錄更改為git使用者所有,以讓git的hooks指令碼可以更新此目錄下的檔案,執行:chown -R gituser:gituser /mnt/test/project

4、以上即完成了正式環境資料、測試環境資料及git環境的初始化。現在嘗試在本地檢出程式碼。在Windows的G:/xmapp/htdocs/執行git命令:

git clone [email protected]:/mnt/git/project.git project/


等待clone完成,本地的檔案即同步完成。

5、現在所有的基礎資料都準備好了。離目標還有三件事:1、讓正式服和測試服目錄可以通過瀏覽器訪問。2、正式服或測試服的yii框架初始化。3、當本地更改程式碼並通過git 完成push之後,程式碼需要自動同步至測試服。先來讓正式服和測試服可訪問:

      a、修改伺服器apache的http.conf,增加對10080及10081埠的監聽。目前只需要yii2的前臺部分可訪問,將網站根目錄定至frontend/web。如下為測試環境的apache配置,具體情況根據個人伺服器環境進行配置:


         b、同時更改fpm的配置,在php_admin_value[open_basedir後面加上正式環境及測試環境的目錄。

       c、完成以上工作,重啟apache和fpm,理論上就可以通過外部訪問正式服和測試服。這時訪問xxx.xxx.xxx.xx:10080就可以看到yii2輸出的網頁了,但因為yii框架並沒有初始化,此時會提示錯誤。

6、初始化正式服和測試服的資料。如有必要,本地也可以初始化,方法都是一樣,非常簡單,此處以初始化正式服為例。進入正式服的project目錄,執行:php init ,之後選擇1(測試環境可選擇0,便於開發過程中定位問題),二次確認“yes”,之後輸入“all”,初始化即完成。此時訪問正式環境的10080埠,就可以看到正常的yii2框架了:


測試環境或本地的初始化也是一樣,1個“php init”命令搞定初始化。

最後一個任務,git自動提交。當本地提交併push程式碼後,要可以在測試服立刻看到效果:

a、在/mnt/git/project.git/hooks中,新建post-receive檔案:執行“cp -a post-update.sample post-receive“,開啟post-receive,刪除已有的所有內容,並寫入以下3行命令:

git --work-tree=/mnt/test/project checkout -f

cd /mnt/test/project

composer dump-autoload


儲存後退出文件就ok了。之後只需在本地修改檔案,用git推入遠端即可在測試服看到效果,待測試服穩定,再發布至正式服。

後續需要使用資料庫,則還要在project/common/config/main-local.php裡填寫資料庫相關資訊,可參考yii2的官方文件進行。

以上,作為本次操作的記錄,希望對大家有所幫助

相關推薦

centos部署yii2 advanced框架

手頭閒置了一個阿里雲的雲伺服器,乾脆拿來部署一個yii2 advance框架,之後也可以在上面搭建自己的個人部落格。話不多說,擼起袖子開幹。 本次部署需要達到的目標: a、可訪問的網站正式環境埠10080(因域名還沒準備,就先用ip地址+埠訪問)。 b、可訪問的網站

yii2高階版advanced框架 域名配置 (Apache)

1 進入advanced目錄,執行init初始化指令碼,設定安裝的環境,開發環境or生產環境。 . 2 設定域名,在C:\Windows\System32\drivers\etc目錄下找到hosts檔案進行配置 3 設定域名與本地路徑的對應關係,在apache目錄下的ht

Yii2.0框架的介紹和簡單部署

Yii是什麼?         高效能,基於元件 Yii適合做什麼?         大型應用,門戶,社群,OMS,電子商務等 Yii與其他框架相比         1:和其他PHP框架相比,Yii實現了MVC(Model-View-Controller)設計模式並基於該

IIS 部署 python web框架 Flask

python windows flask IIS的安裝就不說了吧,然後運行:inetmgr ,打開iis管理器,打開 Web平臺安裝程序,(如果沒有,百度下載安裝一下吧),然後是安裝--IIS:CGI 這個包。 接下來,添加網站,添加處理程序模塊映射:

CentOS 部署Etcd集群

etcd etc flannel k8s kubernets docker 一、環境介紹 操作系統信息:CentOS 7 64位 服務器信息: 192.168.80.130 Etcd-master 192.168.80.131 Etcd-node1 192.

centos部署airflow工作流, 本地web界面不顯示

per flow tcp 重啟 本地 部署 wal -a nbsp 關閉防火墻: service firewalld stop 發現關閉防火墻後可以訪問 填加端口8080到防火墻: firewall-cmd --zone=public --add-port=808

centos部署配置gerrit+gitlab實現代碼的review與自動同步

gerrit gitlab 編者按: 近期項目需要進行gerrit的調研工作,於是才有了這篇整理性的文章,當然網絡上面還有很多其他比較優秀的帖子值得借鑒,這裏推薦幾個:Gerrit代碼審核服務器搭建全過程Jenkins+Ansible+Gitlab自動化部署三劍客構建基於Jenkins + Gi

CentOS部署NetCore - 3. 部署站點

-h ftpd user_list 分享 yum ima 其他 ftp服務 ftp 一. CentOS 安裝FTP linux 安裝 ftp第一步 使用如下命令#rpm -qa |grep vsftpd可以檢測出是否安裝了vsftpd軟件, rpm -qa |gr

.NET CORE+CENTOS部署+supervisor守護

查看 sof restart chmod directory 自動運行 ble ash load 一、安裝.NetCore和發布項目1、要開始安裝.NET,您需要註冊微軟簽名密鑰並添加微軟產品提要。這只需要每臺機器做一次。打開命令提示符並運行以下命令sudo rpm --i

CentOS部署Django----安裝數據庫環境

更改 服務 報錯 password 查詢 技術分享 自己 detail django CentOS部署Django----安裝數據庫環境 一、MySQL環境:   此處安裝了MySQL-8.0.11版本,嘗嘗鮮~   原本在網上搜了幾篇簡單的教程,不過安裝完之後,啟動服務器

centos 部署.netcore 開發環境

-c ref core \n rhel onf rhel7.3 校驗 con .netcore 2.0的安裝,安裝前,先參考官方文檔 https://www.microsoft.com/net/core#linuxcentos 先做微軟的簽名校驗工作 # sudo rpm

centos部署jenkins

false utl 並且 support 生效 內容 用戶數據 source 相對 下載jenkins + jdk + tomcat下載地址: https://jenkins.io/ 點擊Generic Java package (.war) 下載war包 tomca

18.Yii2.0框架模型修改記錄 和 修改點擊量

out home one done class eal llc use app 目錄 修改數據 修改點擊量 修改數據 上面要 use app\models\Article; //修改 //http://yii.com/?r=home/Edit

Django2.0+uwsgi+Nginx+阿里雲centos部署網站問題總結

部署過程中主要發生一下幾個事情,個人認為也是經常出現的問題難點,所以這裡以問題的形式程序說明。 1. centos系統的python3-mysql-虛擬環境的安裝及相關配置 這個就不再詳細說明,具體參考之前寫的文章: 阿里雲Linux系統配置python3-虛擬環境-mysql --踩坑實踐(Ubuntu

Centos部署MariaDB資料庫伺服器

資料庫伺服器在企業中特別常見,本文介紹Centos部署MariaDB資料庫伺服器。 第一步:確保YUN源已經配置好; 第二步:安裝資料庫軟體包,mariadb-server、mariadb 軟體包; yum -y install mari

Centos部署MariaDB數據庫服務器

啟動數據庫 分享圖片 alt mct 設置 庫服務器 iad mariadb size 數據庫服務器在企業中特別常見,本文介紹Centos部署MariaDB數據庫服務。 第一步:確保YUN源已經配置好; 第二步:安裝數據庫軟件包,mariadb-

CentOS 部署RabbitMQ叢集

1. 準備兩臺CentOS,資訊如下: node1:10.0.0.123 node2:10.0.0.124 修改hostname請參照: $ hostname # 檢視當前的hostname $ hostname node1 # 設定當前的hostname(立即生效)

centos部署oracle rac單例項11.2.0.3資料庫(使用asm磁碟)

部署oracle rac單例項資料庫,需要安裝grid和datavase兩部分,所以首先建立兩個使用者oracle和grid,因為不能使用root使用者進行安裝,在安裝之前首先需要修改一些系統引數和安裝一些庫。 1.建立使用者和使用者組   首先是官方推薦的使用者和使用者組清單:

centos-部署多個tomcat

更新CentOS系統 sudo yum install epel-release sudo yum install -y && sudo reboot #重啟機子 安裝Java yum install java-1.x.x(Java版本號) #檢視

centos部署redis主從

start slow level filename 個數字 table pac 從服務器 一個 安裝環境 CentOS 6.5 、CentOS 7.4 主Redis:10.159.44.175 從Redis: 10.159.44.176、10.159.44.177 R