composer常用命令

 本文主要记录整理经常使用到的 composer 命令,以便后期查看composer 查看版本composer --versioncomposer 更新升级到指定版本composer self-update --2 #或 composer self-update --1composer 版本回退命令composer self-update --rollbackcomposer 快速安装更新版本 使用一下命令会自动创建 composer.jsoncomposer require 库名 [版本号]composer 安装时展示详情composer require 库名 [版本号] -vvvcomposer 初始化开发新包composer initcomposer 手动新增配置安装 手动新增 composer.json 文件,然后执行安装composer installcomposer 移除第三方包composer remove xxxx/xxxxcomposer 更新所有依赖 根据 composer.json 中的配置更新所有依赖包composer updatecomposer 更新指...

PHP,其他 2021-09-28 PM 937次 0条

nginx常用屏蔽规则配置

 nginx 是一个高性能的http和反向代理服务相对于apache更加省内存,目前大部分网站均使用了 nginx 作为 web服务器 nginx虽然非常强大,但默认情况下并不能阻挡恶意访问。 下面我们将讲解下常用的nginx屏蔽规则配置在开始之前,假设已经熟悉 nginx 常用命令,如:停止,重启等操作以及排查 nginx 错误日志,以免出现问题不知所措。nginx 防止文件被下载配置location ~ \.(zip|rar|sql|bak|gz|7z)$ { return 444; } 如果网站数据库导出到站点根目录进行备份,很有可能也会被别人下载,从而导致数据丢失的风险,以上规则可以防止一些常规文件被下载,可根据实际情况调整。nginx 屏蔽非常见蜘蛛爬虫配置if ($http_user_agent ~* (SemrushBot|python|MJ12bot|AhrefsBot|AhrefsBot|hubspot|opensiteexplorer|leiki|webmeup)) { return 444; } 如果我们经常分析网站日志就会发现,一些奇怪的U...

PHP,Linux,解决方案,其他 2021-09-23 PM 1451次 0条

nginx设置缓存请求过期时间

 在web开发中我们常常要用的 nginx 作为高性能的http和反代web服务器,有时候我们需要配置统一的默认缓存配置,这个时候我们就可以通过配置 nginx 设置缓存请求过期时间来实现。设置nginx配置cache-control参数 浏览器如果在过期时间内发现新的文件,则不会使用缓存的数据,而是直接向 nginx 服务器请求新的数据。location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|html)$ { #禁止缓存,每次都从服务器请求 #add_header Cache-Control no-store; #设置过期时间60秒,60秒过后向服务器重新请求数据 add_header Cache-Control max-age=60; } 配置完以上 nginx 配置后直接重启可能不生效,必须先关闭进程再重新启动。设置nginx配置expires参数 expires 参数优先级比 cache-control 参数低location ...

PHP,Linux,解决方案,其他 2021-09-23 AM 1131次 0条

composer国内镜像源加速与修改

 我们使用 composer 的时候现在包经常很慢很卡这个时候怎么办呢我们只需要修改一下 composer国内镜像源 加速就可以了.目前所有 composer 源有一下这些提供商源站地址备注composerhttps://packagist.orgcomposer官方源站phpcomposerhttps://packagist.phpcomposer.comcomposer中文网源站(推荐使用)aliyunhttps://mirrors.aliyun.com/composer/阿里云源站(推荐使用)tencenthttps://mirrors.cloud.tencent.com/composer腾讯云源站(推荐使用)huaweihttps://mirrors.huaweicloud.com/repository/php华为云源站laravel-chinahttps://packagist.laravel-china.orglaravel源站cnpkghttps://php.cnpkg.orgcnpkg源站sjtughttps://packagist.mirrors.sjtug.s...

PHP,Linux,解决方案 2021-09-18 AM 814次 0条

composer升级到2.x版本和降级

 经常使用php开发程序的同学应该经常接触并使用过 composer php包管理器,composer 2.0版本已经在 2020年1月份 下旬发布正式发布了,这就意味着composer 1.x版本即将退出 composer 的舞台,但是有很多已经在使用的包依旧是composer 1.x版本,以至于我们在开发过程中需要不断的在两个版本之间切换,下面我们讲一下怎么使用composer升级到的 2.x版本 和回退降级到 1.x版本查看当前 composer 版本 首先我们通过命令行查看当前 composer 版本,我们在命令行输入一下 composer 命令 composer --version 可以看到我的当前版本为 composer 1.10 版本升级 composer 版本 接着我们通过 self-update 升级 composer 版本composer self-update # 或者 composer self-update 2 # 或者 composer self-update --2 可以看到我们已经成功将 composer 升级到 2.1.8 最新版本了compos...

PHP,软件工具,Linux,解决方案 2021-09-18 AM 3229次 0条

php使用swoole框架静态变量,全局变量并发安全问题

 我们在首次使用 Swoole 框架时候发现有三类变量问题需要主要,问题的主要造成因素应该是 Swoole 常驻内容变量内存共享导致的主要有一下三类使用 global 关键词声明的变量使用 static 关键词声明的类静态变量、函数静态变量PHP的超全局变量,包括$_GET,$_POST,$GLOBALS等 这三种类型的变量在 Swoole 模式下都存在并发安全问题Swoole 变量问题 A,B,C三人依次访问设置变量分别为1,2,3程序返回时分别对A,B,C三人的请求进行延迟3,2,1秒按照正常逻辑来看A,B,C三人访问设置的1,2,3那么对应返回的值就是设置的值,但是通过使用swoole发现三人返回的结果为最后一个人设置的值也就是3这种情况就是我们刚才所说的三类变量问题Swoole 全局变量 Global 问题演示 // 数据混乱演示 public function index() { // 并发安全问题,会出现数据混乱 // 第一次访问 http://192.168.100.103:8088/Context/index?i=1 ...

PHP,解决方案 2021-09-11 AM 983次 0条

php安装使用swoole框架yasd调试debug扩展

Yasd 扩展是 Swoole 官方开发的,一款实时单步骤 Debug 调试工具,可用于断点调试 Swoole 协程环境,支持 IDE 以及 命令行 的实时程序调试。Yasd 官方仓库github : https://github.com/swoole/yasdYasd 官方中文文档github : https://github.com/swoole/yasd/blob/master/README-CN.mdMacOS系统安装boost库brew install boostUbuntu系统安装boost库apt-get install libboost-all-devCentOS系统安装boost库yum install boost boost-devel安装 Swoole 官方Yasd调试扩展 分别有一下有两种安装方式 编译安装 , 直接安装编译 好的 so 文件推荐直接安装编译好的简单,安装速度快。编译安装 Swoole 官方 Yasd调试扩展git clone https://gitee.com/laiwi/yasd.git cd yasdphpize --clean &&...

PHP,软件工具,Linux,解决方案 2021-09-11 AM 2103次 1条

typecho怎么开启debug调试模式

 首先我们找到 typecho 根目录 config.inc.php 文件 然后在里面加上开启调试代码即可typecho开启debug模式define('__TYPECHO_DEBUG__', true); OK typecho开启debug调试模式 完成了,就这么简单...

PHP,解决方案 2021-09-03 PM 1763次 0条

解决php7.4后升级安装使用ThinkPHP5.*异常

  最近 php7.4 发布了,公司的大项目之前使用 php7.0 要跟随时代的潮流升级到最新的 7.4 体验下 7.4新特性 预加载 据测试开始并使用预加载后整体性能提升机 34% 左右还是很值的升级的因为这个项目使用的 ThinkPHP5. 所以说在升级的过程中出了一些状况特此记录下,后来发现不但升级时候会出现,在 7.4 环境下安装 ThinkPHP5. 也会出现大致统计了下为一下几个问题:Array and string offset access syntax with curly braces is deprecated 首先映入眼帘的是 Array and string offset access syntax with curly braces is deprecated 异常,该异常信息一般发生在新安装或者使用中升级PHP版本问题,问题由 ThinkPHP5.* 抛出主要是因为php7.4以上版本废弃了 数组{} 语法导致的解决方案: 我们只需要 全局搜索 并替换下 数组{}写法 为 [] 即可,ThinkPHP5.* 框架相关位置主...

PHP,解决方案 2021-09-02 AM 1783次 0条

php动态生成站点robots,sitemap简单思路

 最近在做一个 SaaS 类型的CMS系统中间用到了每个站长都要用到不同的 robots , sitemap 感觉比较有意思也非常简单特此分享下,上述站点文件如果按照常规的方式直接在站长根目录生成对应的文件就行了,但考虑到是 SaaS 给每个站长生成单独的文件就显然不太现实了,这个时候可以通过路由的方式动态生成 robots , sitemap 站点文件。 因为用的是 thinkphp5 简称 tp5 所以下面用 tp5 框架做下简单的演示首先我们新建一个控制器 controller 类 robots.php在 robots.php 控制器中创建 index 方法如下robots.phppublic function index() { $site_robots = "User-agent: * \r\n Disallow: "; // 定义robots内容变量 $this->assign('site_robots', $site_robots); // 渲染输入变量 return response($this->fetch()...

PHP,解决方案 2021-09-01 PM 1073次 0条