小編給大家分享一下EpiiServer是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,公司以成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、系統(tǒng)開(kāi)發(fā)、網(wǎng)絡(luò)推廣、文化傳媒、企業(yè)宣傳、平面廣告設(shè)計(jì)等為主要業(yè)務(wù),適用行業(yè)近百種。服務(wù)企業(yè)客戶成百上千,涉及國(guó)內(nèi)多個(gè)省份客戶。擁有多年網(wǎng)站建設(shè)開(kāi)發(fā)經(jīng)驗(yàn)。為企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、創(chuàng)意設(shè)計(jì)、宣傳推廣等服務(wù)。 通過(guò)專業(yè)的設(shè)計(jì)、獨(dú)特的風(fēng)格,為不同客戶提供各種風(fēng)格的特色服務(wù)。
更快捷更方便的php+nginx多應(yīng)用部署環(huán)境。
https://github.com/epaii/epii-server
https://gitee.com/epii/epii-server
先不說(shuō)怎么安裝,先看看你是否需要本應(yīng)用。
也許你會(huì)說(shuō)直接用 http://localhost/app1
和 http://localhost/app2
來(lái)訪問(wèn)兩個(gè)網(wǎng)站不就行了。
確實(shí)可以。但如果各自設(shè)定自己的域名呢?比如 http://app1.loc.com
和 http://app2.loc.com
,如果你有這個(gè)想法,本軟件很輕松可幫你實(shí)現(xiàn)。
如下目錄
web -- App集合目錄 app3 index.php --入口文件 app4 application public index.php --入口文件 app5 dir1 dir2 dir3 index.php --入口文件
域名自動(dòng)為
http://app3.loc.com http://public.app4.loc.com http://dir3.dir2.app5.loc.com
你需要做的事情(唯一要做的)僅僅是在host文件中讓
app3.loc.com
和public.app4.loc.com
,dir3.dir2.app5.loc.com
指向你的ip
web
目錄為app的項(xiàng)目集合目錄,只要你把你的app放進(jìn)這個(gè)目錄,自動(dòng)會(huì)生成上述的域名。上面中域名loc.com
是什么?
他是你所有app
的根域名。任何一個(gè)app將子對(duì)轉(zhuǎn)化為域名 {appname}.loc.com
,目錄訪問(wèn)自動(dòng)為 dir3.dir2.dir1.{appname}.loc.com
。
如果想設(shè)置自己的根域名只需在config.ini
(下載后請(qǐng)復(fù)制config.ini.example
為 config.ini
)在[server]
下設(shè)置
[server] domain_this=you.domain.com
hosts
文件中設(shè)置域名指向。app
均以根域名
為基礎(chǔ)產(chǎn)生的多級(jí)域名。其它格式的域名不支持。如果某個(gè)app有另一個(gè)域名如www.web.com
那么您可以在dns服務(wù)商使用cname的方式解析到本app的本地域名。
也許你會(huì)問(wèn),我的項(xiàng)目都在另個(gè)目錄下面,是不是必須復(fù)制到EpiiServer根目錄下的web
目錄下才行呢?當(dāng)然不是。
只需在config.ini
的[server]
下設(shè)置
[server] www_dir=/path/to/your/www
www_dir為絕對(duì)路徑,一定不要包含中文
按照上述方法設(shè)置了我的app集合目錄,但仍有個(gè)別app(或很多)分布在其它目錄,是不是需要復(fù)制到app集合目錄下?當(dāng)然不是。
比如我的 app6
放在了另一個(gè)目錄 "c:\workplace\app6"
,只需在config.ini
的[app_dir]
下設(shè)置
[app_dir] app6=c:\workplace\app6 app7=/path/to/app7
目錄為絕對(duì)路徑,不包含中文。
這種情況下域名 app6.loc.com
,app7.loc.com
將指向你設(shè)置的路徑。同樣支持子目錄轉(zhuǎn)化為域名 ,
如 app6
的入口文件為 c:\workplace\app6\public\index.php
,則訪問(wèn)
http://public.app6.loc.com
其實(shí)上述設(shè)置是不科學(xué)的,直接把a(bǔ)pp6的目錄指向public
更好
[app_dir] app6=c:\workplace\app6\public
這樣你的域名將簡(jiǎn)化為app6.loc.com
在上面web下app5中,為了訪問(wèn)入口文件 我們需要 訪問(wèn) `http://dir3.dir2.app5.loc.com` 這個(gè)域名才可以,如果想簡(jiǎn)化為 `http://app5.loc.com`, 只需把 dir3的絕對(duì)路徑設(shè)置為`app5`的路徑即可。app5=/path/to/app5/dir2/dir3
直接訪問(wèn)ip會(huì)怎么樣?
直接訪問(wèn)ip和其它繼承環(huán)境一樣了。
http://127.0.0.1/app1 http://127.0.0.1/app2/dir1/dir2/index.php
能不能當(dāng)我訪問(wèn)ip的時(shí)候,默認(rèn)指定一個(gè)app
呢。比如訪問(wèn)ip直接訪問(wèn) app1
,
只需在config.ini
的[server]
下設(shè)置
[server] default_app=app1
設(shè)置完后,當(dāng)訪問(wèn) http://127.0.0.1/
時(shí)候?qū)⒅苯又赶蛄?code>app1。
ip 訪問(wèn)的作用在于別人對(duì)你電腦的訪問(wèn)。當(dāng)然別人也可以在他
hosts
文件中綁定 app1.loc.com 到你的ip,直接訪問(wèn)域名也可以
多年的php工作者,對(duì)著php技術(shù)更新,及php版本的更新。你的項(xiàng)目分別設(shè)置了不同的php的最低版本。
例如
app8
支持版本為php5.6
app9
支持版本為php7.1
app10
支持版本為php7.2
如果這些應(yīng)用共存,您有什么解決方法。
解決方法很簡(jiǎn)單。首先下載多個(gè)版本的php。然后在config.ini
的[php]
模塊設(shè)置。
window
使用的是php-cgi.exe
,所以只需要指定每一個(gè)php版本的php-cgi.exe
路徑,及端口即可。
[php] php_cgi[0] = c:\path\to\php5.6\php-cgi.exe port[0] = 9000 php_cgi[1] = c:\path\to\php7.1\php-cgi.exe port[1] = 9001 php_cgi[2] = c:\path\to\php7.3\php-cgi.exe port[2] = 9002
linux
,unix
下使用的是php-fpm
(php-cgi,fastcgi,php-fpm的區(qū)別,大家自己查)
[php] php_cgi[0] = /path/to/php5.6/sbin/php-fpm port[0] = 9000 php_cgi[1] =/path/to/php7.1/sbin/php-fpm port[1] = 9001 php_cgi[2] = /path/to/php7.2/sbin/php-fpm port[2] = 9002
注意:php-fpm的配置文件
php-fpm.conf
里設(shè)置了端口。上面設(shè)置的端口一定要和各個(gè)版本的php-fpm.conf
中的端口一致。而php-cgi
只需設(shè)置端口即可。
通過(guò)上述設(shè)置php
多版本后,默認(rèn)的所有應(yīng)用都設(shè)置為第一個(gè)php版本,即php_cgi[0]
的設(shè)置。
為了實(shí)現(xiàn)
app8
支持版本為php5.6
app9
支持版本為php7.1
app10
支持版本為php7.2
需在在config.ini
的[app_php_select]
模塊設(shè)置各自的php版本id
[app_php_select] app9=1 app0=2
app8無(wú)需設(shè)置,因?yàn)樗械膽?yīng)用默認(rèn)都使用第一個(gè)php版本
大家肯定會(huì)遇到這些問(wèn)題
git
作為團(tuán)隊(duì)合作方式。如何讓重要的賬號(hào)和密碼不受版本控制。上述問(wèn)題,有很多解決方案,但更方便更科學(xué)的方式為通過(guò)環(huán)境變量
設(shè)置賬號(hào)和密碼,使得程序和重要賬號(hào)完全分離
。
在不同的環(huán)境下(window,linux,iis,apache,nginx)設(shè)置php環(huán)境變量
的方式不一樣,
但
這樣使得我們的應(yīng)用程序代碼無(wú)需任何修改,只需在環(huán)境中設(shè)置了環(huán)境變量即可。
php中通過(guò) $_EVN,或者 getenv() 來(lái)獲取指定的環(huán)境變量值。
現(xiàn)有的方式設(shè)置的環(huán)境變量,往往是針對(duì)所有app都生效的。這意味著如果我有多個(gè)項(xiàng)目,每一個(gè)項(xiàng)目都是共享這些環(huán)境變量,這樣的結(jié)果為:
app11
,app12
的數(shù)據(jù)庫(kù)名稱,我們必須設(shè)置兩個(gè)環(huán)境變量,如 DBNAMA_APP11
, DBNAMA_APP12
。然后分別獲取。app11
中仍然可以獲取到app12
的環(huán)境變量。EpiiServer
這些問(wèn)題將變得很容易解決。我們的需求是:
1、app11
需要把數(shù)據(jù)庫(kù)信息設(shè)置為環(huán)境變量 分別為
DB_HOST=192.168.1.100 DB_NAME=ceshi DB_USER=username DB_PWD=password
2、app12
需要把數(shù)據(jù)庫(kù)信息設(shè)置為環(huán)境變量 分別為
DB_HOST=192.168.1.102 DB_NAME=ceshi2 DB_USER=username2 DB_PWD=password2
我們只需在config.ini
的[php_env]
模塊設(shè)置各自的環(huán)境變量
[php_env] app11[DB_HOST] = 192.168.1.100 app11[DB_NAME] = ceshi app11[DB_USER] = username app11[DB_PWD] = password app12[DB_HOST] = 192.168.1.102 app12[DB_NAME] = ceshi2 app12[DB_USER] = username2 app12[DB_PWD] = password2
在程序中使用 $_ENV['DB_HOST'] 即可獲取到相應(yīng)的 DB_HOST
阿里云和微軟云等云平臺(tái)都有設(shè)置環(huán)境變量的方法。
EpiiServer
側(cè)重的是nginx
php
安裝后的靈活配置,而非 nginx
php
本身的安裝。
所以在安裝EpiiServer
之前你需要(必須)
1、根據(jù)自己的系統(tǒng)下載nginx
,并且明白安裝路徑及配置文件路徑。
2、根據(jù)自己的需要下載安裝php
,可下載多個(gè)版本。
3、window 用戶須知道安裝的各個(gè)php版本路徑及php-cgi
的位置,并且每個(gè)版本可以成功運(yùn)行
/path/to/php-cgi.exe -b 127.0.0.1:9000
4、linux,unix 用戶須知道安裝的各個(gè)php版本路徑及php-fpm
的位置和php-fpm.conf
的路徑,分別修改php-fpm.conf
文件 ,并成功運(yùn)行
/path/to/php-fpm
EpiiServer
倉(cāng)庫(kù)首頁(yè)
https://gitee.com/epii/epii-server
https://github.com/epaii/epii-server
下載或clone到本地后,
1、請(qǐng)復(fù)制config.ini.example
為 config.ini
,按照配置文件的提示配置自己的項(xiàng)目。
2、請(qǐng)運(yùn)行項(xiàng)目下install/install.php
文件進(jìn)行安裝
path/to/php ./install/install.php
安裝只需一次,安裝后,會(huì)自動(dòng)生成啟動(dòng),停止運(yùn)行文件。
window自動(dòng)生成的文件為:
linux unix 自動(dòng)生成的文件為:
配置文件修改后記得 先關(guān)閉服務(wù),再啟動(dòng)。
[server] ;本機(jī)ip地址和端口 this_ip = 192.169.0.169 this_port = 6688 ;本機(jī)域名前綴 domain_this = this.jt ;web項(xiàng)目路徑,此路徑下每一個(gè)文件夾會(huì)當(dāng)做一個(gè)應(yīng)用,如果某一個(gè)項(xiàng)目不想放在此目錄下,可以再app_dir中單獨(dú)設(shè)置 ;www_dir 為網(wǎng)站根目錄,默認(rèn)為web目錄,如果設(shè)置請(qǐng)?jiān)O(shè)置絕對(duì)路徑 ;www_dir = /Users/mrren/Documents/phpworkspace/EpiiWeb/web ;default_app = web1 ;本程序以php為腳本安裝和啟動(dòng)服務(wù),指定php命令地址,一般為php.exe的文件路徑 php_cmd=php [nginx] ;nginx 文件地址; linux or unix 請(qǐng)指定nginx文件地址即可 cmd = /usr/local/Cellar/nginx/1.15.0/bin/nginx nginx_config_file = /usr/local/etc/nginx/nginx.conf [php] ;window下 php-cgi.exe 的路徑,linux 下 php-fpm 路徑 php_cgi[0] = /usr/local/Cellar/php\@7.1/7.1.19/sbin/php-fpm ;如果使用php-cgi,設(shè)置的端口將被啟用。如果是php-fpm 請(qǐng)確保此端口和php-fpm.conf中一致(php-fpm.conf 需手動(dòng)修改,多個(gè)php版本一定要設(shè)置不同的端口) port[0] = 9000 php_cgi[1] = php-fpm port[1] = 9001 [app_dir] ;如果你的應(yīng)用不在www_dir下,請(qǐng)指定項(xiàng)目路徑(必須為絕對(duì)路徑) ;app1 = /Users/mrren/Documents/phpworkspace/jianguan ;epiiadmin=/Users/mrren/Documents/phpworkspace/EpiiWeb/web/epiiadmin/public [app_php_select] ;默認(rèn)所有的php版本自動(dòng)為php_cgi[0] 的版本,如果有特殊需求請(qǐng)?jiān)谶@里設(shè)置 epiiadmin = 1 [php_env] epiiadmin[db_hostname] = zhengxin
大部分參數(shù)在上述教程已經(jīng)涉及到。重點(diǎn)介紹
[server]
下的 php_cmd
[server] php_cmd=php
EpiiServer
本身是基于php的(并非你的網(wǎng)站),如果你的php在環(huán)境變量PATH下,則直接為默認(rèn)配置即可。 如果不是。linux,unix 用戶 為path/to/php
,window用戶為paht/to/php.exe
以上是EpiiServer是什么的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享文章:EpiiServer是什么
本文地址:http://jinyejixie.com/article22/jojjjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開(kāi)發(fā)、ChatGPT、網(wǎng)站設(shè)計(jì)、域名注冊(cè)、品牌網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)