使用composer安裝yii2高階版
要求
1、PHP 5.4.0及以上
2、composer安裝完成
3、有網
安裝
在安裝完composer後,可以執行以下命令:
composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced yii-application
這個命令是指將yii2安裝在當前資料夾的yii-application資料夾中,資料夾的名字可以自定義,然後等著就行。
它使用asset-packagist通過composer管理bower和npm包依賴關係。
提示:安裝過程中可能會出現需要token的場景,訪問GitHub【generate new token】 新建一個tokne,選擇預設新建就行,然後就會得到一個token,然後輸入這個值就ok了
安裝完成:
準備申請
進入安裝的專案目錄(yii-application),找到init指令碼
執行init指令碼
init
選擇開發環境(dev)
0
是否確定選擇
yes
如圖:
以上是開發環境的選擇與初始化。
yii2高階版分為前後臺,可以直接配置兩個域名訪問到前後臺的web目錄
設定Web伺服器的文件根目錄:
- 用於前端
/path/to/yii-application/frontend/web/
和使用URLhttp://frontend.test/
- 用於後端
/path/to/yii-application/backend/web/
http://backend.test/
對於Apache,可以是一下內容:
< VirtualHost *:80> ServerName frontend.test DocumentRoot “ / path / to / yii-application / frontend / web / ” < Directory “/ path / to / yii-application / frontend / web /”> # use mod_rewrite for pretty URL support RewriteEngine on #如果目錄或檔案存在,請直接使用請求 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond % {REQUEST_FILENAME} !-d #否則將請求轉發給index.php RewriteRule 。 的index.php #使用的index.php作為索引檔案 的DirectoryIndex index.php檔案 # ...其他設定... #阿帕奇2.4 要求的所有批准 ## Apache 2.2 #訂單允許,拒絕 #允許來自所有 </ Directory > </ VirtualHost > < VirtualHost *:80> ServerName backend.test DocumentRoot “ / path / to / yii-application / backend / web / ” < Directory “/ path / to / yii-application / backend / web /”> # use mod_rewrite for pretty URL support RewriteEngine on #如果目錄或檔案存在,請直接使用請求 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond % {REQUEST_FILENAME} !-d #否則將請求轉發給index.php RewriteRule 。 的index.php #使用的index.php作為索引檔案 的DirectoryIndex index.php檔案 # ...其他設定... #阿帕奇2.4 要求的所有批准 ## Apache 2.2 #訂單允許,拒絕 #允許來自所有 </ Directory > </ VirtualHost >
對於Nginx,可以是以下內容:
伺服器 {
charset utf-8;
client_max_body_size 128M ;
聽 80 ; ## listen for ipv4
#listen [::]:80 default_server ipv6only = on; ##聽ipv6
server_name frontend.test;
root / path / to / yii-application / frontend / web /;
index index.php;
access_log /path/to/yii-application/log/frontend-access.log;
error_log /path/to/yii-application/log/frontend-error.log;
location / {
#將所有不是真實檔案的內容重定向到index.php
try_files $ uri $ uri / /index.php $ is_args $ args ;
}
#uncomment
避免處理對Yii #location~ \的不存在的靜態檔案的呼叫。(js | css | png | jpg | gif | swf | ico | pdf | mov | fla | zip | rar)$ { #try_files $ uri = 404;
#}
#error_page 404 /404.html;
#deny訪問/ assets目錄
位置的php檔案〜^ / assets /.* \ .php $ {
deny all ;
}
location ~ \ .php $ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name ;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
try_files $ uri = 404 ;
}
位置〜* / \。{
全部否認 ;
}
}
伺服器 {
charset utf-8;
client_max_body_size 128M ;
聽 80 ; ## listen for ipv4
#listen [::]:80 default_server ipv6only = on; ##聽ipv6
server_name backend.test;
root / path / to / yii-application / backend / web /;
index index.php;
access_log /path/to/yii-application/log/backend-access.log;
error_log /path/to/yii-application/log/backend-error.log;
location / {
#將所有不是真實檔案的內容重定向到index.php
try_files $ uri $ uri / /index.php $ is_args $ args ;
}
#uncomment
避免處理對Yii #location~ \的不存在的靜態檔案的呼叫。(js | css | png | jpg | gif | swf | ico | pdf | mov | fla | zip | rar)$ { #try_files $ uri = 404;
#}
#error_page 404 /404.html;
#deny訪問/ assets目錄
位置的php檔案〜^ / assets /.* \ .php $ {
deny all ;
}
location ~ \ .php $ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name ;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
try_files $ uri = 404 ;
}
位置〜* / \。{
全部否認 ;
}
}
更改hosts檔案以將域指向伺服器
Windows:c:\Windows\System32\Drivers\etc\hosts
linux:/etc/hosts
分別新增:
127.0.0.1 frontend.test
127.0.0.1 backend.test
配置專案資料庫
首先建立資料庫yii-application,然後編輯yii-application\common\config\main-local.php,定義資料庫名稱,使用者名稱密碼等
然後進入專案根目錄yii-application執行命令
yii.bat migrate
遇到是否詢問輸入yes
migrate是yii2y使用者資料遷移的指令。執行完這個指令,資料庫會出現兩個表,如圖:
migration表用來記錄資料遷移,user表用來儲存使用者資訊。