首页 > 其他 > 详细

tp5.1 配置多个项目共用同一个核心库

时间:2020-06-05 23:26:34      阅读:234      评论:0      收藏:0      [点我收藏+]

需求

需求:多个项目共用一个tp5.1核心库(原来的thinkphp 是在项目的根目录下面,现在需要提出来)

如:

技术分享图片

要保证其他的项目正常运行,需要配置那些东西呢?

配置

项目的think文件配置

你按照需求将thinkphp移到上一级目录,这时候你进入到项目目录打开命令行窗口运行

php think route:list

查看路由,你会发现它会警告你base.php找不到,如

技术分享图片

要解决这个问题,需要将think文件里面的一处内容修改下

内容如下:

require __DIR__ . ‘/thinkphp/base.php‘;
改成
require __DIR__ . ‘/../thinkphp/base.php‘;

将目录往上跳一级

技术分享图片

再次运行,就不会出现刚刚的警告

技术分享图片

项目的public/index.php的配置

没改之前你访问路由你会发现

技术分享图片

还是说base.php,找不到,进入index.php

require __DIR__ . ‘/../thinkphp/base.php‘;
改成
require __DIR__ . ‘/../../thinkphp/base.php‘;

技术分享图片

apache虚拟主机的配置

进入apache\conf\extra目录下的httpd-vhosts.conf文件,配置网站的跟目录到虚拟主机的最外层目录

例如

原来的配置是:项目根路径/public

D:/php_code/tp5.1/public

想在需要配置成: 多个项目的根目录

D:/php_code/

技术分享图片

参考配置

# 设置虚拟主机
<VirtualHost *:80>
	# 设置网站根目录
	#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
	# 设置目录访问权限
	#<Directory "D:/php_code/tp5.1/public">
	<Directory "D:/php_code">
	    # 指定目录启用特怀
	    Options Indexes FollowSymLinks 
	    # 是否允许使用.htaccess文件
	    AllowOverride All
	    # 访问目录权限
	    Require all granted
	</Directory>
</VirtualHost>

配置到最外层目录,你访问我们的虚拟主机,你会发现,其实就是进了我们在虚拟主机配置的目录

技术分享图片

只不过之前我们配置虚拟主机的时候一直将根目录配置到项目的public目录下

那么我们现在该如何访问,我们的各个子项目,和路由呢?

项目访问和路由

子项目访问格式

主机:端口(80可不写)/子项目名/public

例:

http://www.tp5.com/login/public/

技术分享图片

子项目路由访问格式

主机:端口(80可不写)/子项目名/public/子项目配置的路由点

例:

http://www.tp5.com/login/public/test

技术分享图片

tp5.1 配置多个项目共用同一个核心库

原文:https://www.cnblogs.com/makalochen/p/13052768.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!