tp5 1 配置多個專案共用同乙個核心庫

2022-02-28 13:12:57 字數 2371 閱讀 9605

需求:多個專案共用乙個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。不過奇怪的是,今天上午登入的時候,...