需求:多個專案共用乙個tp5.1核心庫(原來的thinkphp 是在專案的根目錄下面,現在需要提出來)
如:
要保證其他的專案正常執行,需要配置那些東西呢?
你按照需求將thinkphp
移到上一級目錄,這時候你進入到專案目錄開啟命令列視窗執行
php think route:list
檢視路由,你會發現它會警告你base.php
找不到,如
要解決這個問題,需要將think
檔案裡面的一處內容修改下
內容如下:
require __dir__ . '/thinkphp/base.php';
改成require __dir__ . '/../thinkphp/base.php';
將目錄往上跳一級
再次執行,就不會出現剛剛的警告
沒改之前你訪問路由你會發現
還是說base.php,找不到,進入index.php
require __dir__ . '/../thinkphp/base.php';
改成require __dir__ . '/../../thinkphp/base.php';
進入apache\conf\extra
目錄下的httpd-vhosts.conf
檔案,配置**的跟目錄到虛擬主機的最外層目錄
例如原來的配置是:專案根路徑/public
d:/php_code/tp5.1/public
想在需要配置成: 多個專案的根目錄
參考配置
# 設定虛擬主機
# 設定**根目錄
#documentroot "d:/php_code/tp5.1/public"
documentroot "d:/php_code"
# 設定**網域名稱
servername www.tp5.com
# 錯誤日誌
#errorlog "d:/php_code/tp5.1//logs/error.log"
# 成功日誌
#customlog "d:/php_code/tp5.1//logs/access.log" combined
# 設定目錄訪問許可權
## 指定目錄啟用特懷
options indexes followsymlinks
# 是否允許使用.htaccess檔案
allowoverride all
# 訪問目錄許可權
require all granted
配置到最外層目錄,你訪問我們的虛擬主機,你會發現,其實就是進了我們在虛擬主機配置的目錄
只不過之前我們配置虛擬主機的時候一直將根目錄配置到專案的public
目錄下
那麼我們現在該如何訪問,我們的各個子專案,和路由呢?
主機:埠(80可不寫)/子專案名/public
例:
主機:埠(80可不寫)/子專案名/public/子專案配置的路由點
例:
多個專案如何共用同乙個外網IP埠?
今天被問到這樣乙個問題 q 如果只有乙個外網埠,如何使用這乙個埠跑多個專案?a 使用nginx 目前我只會用這個方法,哈哈哈 加入訪問的ip為 172.168.27.215 8000 我們可以讓 172.168.27.215 8000 proa 去訪問a專案,a專案占用7777埠 172.168.2...
Nginx 同乙個網域名稱配置多個專案
使用nginx要在同乙個網域名稱下配置多個專案有兩種方式 nginx按不同的目錄分發給不同的專案 啟用二級網域名稱,不同的專案分配不同的二級網域名稱 1.nginx按不同的目錄分發給不同的專案 server location project2 location 這裡配置了三個專案 路徑分發到http...
多個子站點共用同乙個Cookies驗證
公司的 最近新增加一欄目 互動社群 站點網域名稱為 使用者驗證全站使用cookies,由於以前沒有涉及到過這種多站點同時驗證,最初就是到網上搜尋多個子站點共用cookies的文章,也找了不少,但是放在本 用,都沒有效果,主站登入了,但是子站老是取不到cookies。不過奇怪的是,今天上午登入的時候,...