Alex

有的故事值得一直说下去.
Home » Latest Posts

修改当前分支的远程关联分支,请使用 git branch 命令和 --set-upstream-to 选项。假设你当前在 master 分支,想要将其与远程仓库的 origin/new-branch 分支关联起来,可以执行以下命令:

git branch --set-upstream-to=origin/new-branch

这会将当前分支(master)与远程仓库的 origin/new-branch 分支关联起来。现在,当你在当前分支上执行 git pull 或 git push 命令时,Git 将自动使用远程仓库的 origin/new-branch 分支进行更新和推送。

注意:如果你已经与另一个远程分支建立了关联,可以使用 git branch --unset-upstream 命令取消它,然后再使用 --set-upstream-to 选项建立新的关联。

一、安装多应用模式
1、安装多应用模型
进入到项目根目录,打开CMD,使用composer安装多应用模型

composer require topthink/think-multi-app
2、安装think-view扩展
在根目录下,使用composer安装think-view扩展,官方手册是这么说明的

视图功能由 \think\View 类配合视图驱动(也即模板引擎驱动)类一起完成,新版仅内置了PHP原生模板引擎(主要用于内置的异常页面输出),如果需要使用其它的模板引擎需要单独安装相应的模板引擎扩展。
如果你需要使用 think-template 模板引擎,只需要安装 think-view 模板引擎驱动。

composer require topthink/think-view
如果不安装扩展,使用在控制器使用 “return view()” 时,会报错。

二、删除app目录下的文件
删除app目录下自带的所有文件,因为多应用需要重新创建一套,所以原来的用不上,可以删掉

三、创建新应用
在app下创建新应用(新模块),比如在app下创建admin模块和index模块,可以代码创建也可以手动创建

php think make:controller admin@index

php think make:controller index@index
创建成功后app下就会有admin和index两个文件夹,同时对应文件夹下会自动创建index.php控制器,,控制器里的代码可以直接使用。

四、配置默认应用
修改config/app.php,修改以下配置,没有的话就直接新添加

// 设置默认应用名称
'default_app' => 'home',
// 开启自动多模式
'auto_multi_app' => true,
// 开启应用快速访问
'app_express' => false,
五、修改伪静态
1、apache修改如下

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [QSA,PT,L]

2、nginx修改如下
location / {

try_files $uri $uri/ /index.php?$query_string;
index  index.html index.htm index.php;
autoindex  on;
if (!-e $request_filename) {
rewrite  ^(.*)$ /index.php?s=/$1  last;
break;
}

}
六、配置环境变量
在项目文件夹下有一个“.example.env”环境变量示例文件,这个文件是示例文件,不是正式使用的文件,所以如果需要修改环境变量的话,可以新创建一个文件,命名为".evn"文件,可以把示例文件里的一些配置复制到新的evn文件里

// 开启调试模式
APP_DEBUG = true
七、访问项目
这时候就算大功告成了,可以直接输入域名访问项目了。

八、回顾文件结构
此时的文件结构如下,在app文件夹新创建了两个文件夹,index和admin,就是新创建的两个模块,每个模块下和TP5一样,都有controller文件、model文件、view文件,同时在每个模块下还可以有当前作用域下的相关文件(函数文件、配置文件等)。

www WEB部署目录(或者子目录)
├─app 应用目录
│ ├─index 应用目录
│ │ ├─controller 控制器目录
│ │ │ ├─Index.php 控制器文件
│ │ ├─model 模型目录
│ │ ├─view 视图目录
│ │ ├─common.php 函数文件
│ │ ├─config 配置目录
│ │ ├─route 路由目录
│ │ └─ ... 更多类库目录
│ ├─admin 应用目录
│ │ ├─controller 控制器目录
│ │ ├─model 模型目录
│ │ ├─view 视图目录
│ ├─common.php 公共函数文件
│ └─event.php 事件定义文件
├─config 全局配置目录
│ ├─app.php 应用配置
│ ├─cache.php 缓存配置
│ ├─console.php 控制台配置
│ ├─cookie.php Cookie配置
│ ├─database.php 数据库配置
│ ├─filesystem.php 文件磁盘配置
│ ├─lang.php 多语言配置
│ ├─log.php 日志配置
│ ├─middleware.php 中间件配置
│ ├─route.php URL和路由配置
│ ├─session.php Session配置
│ ├─trace.php Trace配置
│ └─view.php 视图配置
├─public WEB目录(对外访问目录)
│ ├─index.php 入口文件
│ ├─router.php 快速测试文件
│ └─.htaccess 用于apache的重写

├─extend 扩展类库目录
├─runtime 应用的运行时目录(可写,可定制)
├─vendor Composer类库目录
├─.example.env 环境变量示例文件
├─composer.json composer 定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行入口文件
├─.env 环境变量

多应用模式文件结构详细说明参看官方文档https://www.kancloud.cn/manual/thinkphp6_0/1037483

Linux怎么实现本、异地远程数据实时同步功能

随着互联网技术的不断发展,越来越多的企业和个人开始使用Linux系统进行数据存储和管理。而在数据管理过程中,本地和异地数据的实时同步是一个非常重要的问题。那么,在Linux系统中,如何实现本、异地远程数据实时同步功能呢?

一、rsync命令实现本地文件同步

rsync是一个强大的文件同步工具,它可以实现本地文件之间的同步,同时也可以实现本地和远程服务器之间的文件同步。使用rsync命令同步文件时,只需要在终端输入以下命令即可:

rsync -avz 源目录 目标目录

其中,“-a”参数表示以归档模式同步文件,包括文件的所有属性;“-v”参数表示显示同步的详细信息;“-z”参数表示启用压缩传输,减少带宽占用。

二、rsync+ssh实现远程文件同步

除了本地文件同步外,rsync还可以通过ssh协议实现远程文件同步。这种方式可以保证数据传输的安全性,但需要在远程服务器上安装openssh-server,并且需要在两台服务器之间建立ssh信任关系。具体操作步骤如下:

  1. 在本地服务器上执行以下命令生成公钥和私钥:

ssh-keygen -t rsa

  1. 将生成的公钥复制到远程服务器上:

ssh-copy-id username@remote_server_ip

  1. 在本地服务器上执行以下命令同步文件:

rsync -avz -e ssh 源目录 username@remote_server_ip:目标目录

其中,“-e ssh”参数表示使用ssh协议传输文件。

三、使用inotify-tools实现实时同步

rsync虽然可以实现文件同步,但是需要手动执行命令才能完成同步。如果需要实现实时同步,则需要借助inotify-tools工具。inotify-tools可以监控指定目录或文件的变化,并在变化发生时触发指定的操作。使用inotify-tools实现实时同步的具体步骤如下:

  1. 安装inotify-tools:

sudo apt-get install inotify-tools

  1. 编写脚本文件:

!/bin/bash

while true

do

inotifywait -r -e modify,create,delete /path/to/source/dir/

rsync -avz /path/to/source/dir/ username@remote_server_ip:/path/to/target/dir/

done

  1. 执行脚本文件:

sh sync.sh &

其中,“-r”参数表示递归监控目录下的所有子目录;“-e modify,create,delete”参数表示监控文件的修改、创建和删除事件。

总结:

Linux系统提供了多种实现本、异地远程数据实时同步的方法,其中rsync命令是最常用的同步工具之一。同时,rsync+ssh和inotify-tools也可以实现远程文件同步和实时同步的功能。在实际应用中,可以根据需求选择合适的方法来实现数据同步,从而提高数据管理的效率和安全性

本来挂个博客当个人知识库的,但是很不幸被黑客大哥看上了,所以就没有所以了,全部数据被加密,本来就没赚过钱,花几万大洋去解密是不大可能了,而且好久前就想换一个轻量级的系统,所以就换了,东西没了就没了吧,或则这也预味着一个全新的开始。
已经沉寂好几年了,也迷茫不知所措,或许换个心情,再出发...

Life is fantastic
🥕 More