Git 修改已提交 commit 的信息
1 使用背景在使用git的时候,经常会用到一个命令,那就是git commit -m 'msg',但是这个msg还是有要求的,那就是在push代码的时候,msg不能少于5个字符(中英文都算一个字符),但是在执行git commit的时候,这个msg是可以写任意个字符的,也就是说当你commit的时候,没有写够5个字符,那么在push的时候,就会提示不能push,所以就需要用到修改已提交 commit 的信息。
2 方法2.1 修改最后一次提交 commit 的信息12345678# 修改最近提交的 commit 信息$ git commit --amend --message="modify message by daodaotest" --author="jiangliheng <jiang_liheng@163.com>"# 仅修改 message 信息$ git commit --amend --message="modify message by daodaotest"# 仅修改 autho ...
php上传文件
在PHP中,只需要通过几行代码,就能完成上传单个和多个文件的处理。
PHP文件上传功能允许上传二进制和文本文件。 此外,您可以通过PHP身份验证和文件操作功能完全控制要上传的文件。
1 PHP $_FILESPHP全局$_FILES包含文件的所有信息。 在$_FILES全局变量的帮助下,我们可以得到文件名,文件类型,文件大小,临时文件名和与文件相关的错误。
这里,我们假设文件名是filename。请参考下表 -
变量名称
描述
$_FILES['filename']['name']
返回文件名称
$_FILES['filename']['type']
返回文件的MIME类型
$_FILES['filename']['size']
返回文件的大小(以字节为单位)
$_FILES['filename']['tmp_name']
返回存储在服务器上的文件的临时文件名。
$_FILES['filename']['er ...
phh中的$和$$的区别,以及引用&的用法?
1 $和$$定义$var(一个美元)是一个正常变量,名称为:var,存储任何值,如:string,integer,float等。$$var(两个美元)是一个引用变量,用于存储$var的值。为了更好地理解$和$$之间的区别,下面来看看一些例子。
2 示例2.1 示例11234567<?php $x = "abc"; $$x = 200; echo $x."<br/>"; echo $$x."<br/>"; echo $abc;
运行结果:abc200200
在上面的例子中,我们为变量x赋值为:abc。引用变量$$x的值分配为200。现在我们打印出变量:$x,$$x和$abc。由此可以看出:$$x和$abc的值是相同的,即:因为 $x的值为abc,所以 $$x(${$x})计算后为$abc。
2.2 示例212345678910<?php$name = "Cat";${$name} = "Dog"; ...
IDEA 中 project窗口,不显示项目工程目录,解决方法
问题在IDEA编辑器中,有时会出现项目工程目录不显示的情况,如下图:
产生原因一般为配置文件*.iml出错了。
解决途径方法1:若知道出错的具体位置与原因,用文本编辑器打开*.iml文件,找到出错位置,修复。方法2:清除配置,重新生成配置。
关闭IDEA,
删除项目文件夹下的.idea文件夹和*.iml文件
重新用IDEA工具打开项目
Reference
https://www.jianshu.com/p/1cdda8632b76
写在最后欢迎大家关注鄙人的公众号【麦田里的守望者zhg】,让我们一起成长,谢谢。
nginx配置以及rewrite规则
1 location正则写法语法规则: location [=||*|^~] /uri/ { … }
= 开头表示精确匹配
^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。
~ 开头表示区分大小写的正则匹配
~* 开头表示不区分大小写的正则匹配
!~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则
/ 通用匹配,任何请求都会匹配到。多个location配置的情况下匹配顺序为(参考资料而来,还未实际验证,试试就知道了,不必拘泥,仅供参考):首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。
例子,有如下匹配规则:
123456789101112131415161718192021222324location = / { #规则A } location = /login ...
Linux系统源码安装PHP以及相关问题总结
1 安装依赖12345# 添加epelyum install epel-releaseyum update# 添加依赖包yum -y install systemtap-sdt-devel libxml2 libxml2-devel openssl-devel libcurl-devel enchant-devel libpng-devel libicu-devel libmcrypt-devel recode-devel net-snmp-devel libtidy-devel autoconf readline-devel libtidy-devel aspell-devel unixODBC-devel libicu-devel libc-client-devel freetype-devel libXpm-devel libpng-devel install libvpx-devel enchant-devel libcurl-devel libc-client-devel openldap-devel openldap postgresql-devel curl-devel ...
docker构建php、nginx两个分开的容器,但是相连连不上的问题总结
在网上搜罗了一圈,发现所有牵扯到php和ngin的镜像,都是php-nginx“粘”在一起的,想要搜到一个php、nginx俩分开的镜像还真不好找。于是便自己制作。但是在制作过程中,发现php和nginx通过docker的link指令连在一起的时候,总是连不上,经过了一番折腾,终于发现了其中的猫腻。应该注意三个点:
1 nginx配置记得要指定php文件的路径123456789101112131415161718192021server { listen 80; server_name phptest.com; root /usr/local/nginx/html/php_nginx; ## 标记1 index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php(.*)$ { try_files $uri ...
构建docker镜像,将nginx与php环境放在一个镜像中
前言nginx和php-fpm放在一个镜像里面,这样更好配置,但是有一个问题,这样不利于php-fpm和nginx两个服务动态扩容,因为二者的吞吐量可能不一样,同时扩容可能会造成资源浪费,但是分开,又会造成一个问题,那就是nginx和php-fpm如何通信的问题变得有些棘手。
以下是Dockerfile文件的内容,其余可以参考我的github地址。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465FROM alpineLABEL MAINTAINER="<crazyjums@gmail.com>"ADD nginx-1.18.0.tar.gz /tmpCOPY nginx/nginx.conf /tmp/nginx.confCOPY start.sh /tmp/start.shCOPY nginx/include/phptest.conf /tmp/phptest ...
docker-compose无法启动容器,但是手动创建镜像之后再启动就能正常启动
问题遇到一个问题,我自己用Dockerfile创建了一个nginx和php-fpm一体的镜像,但是使用docker run加上一些参数可以正常启动,但是使用docker-compose配置成服务却无法正常启动,这就很奇怪了,于是,Google了一番,找到了解决办法。
以下是我的Dockerfile:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263FROM alpineLABEL MAINTAINER="<crazyjums@gmail.com>"ADD nginx-1.18.0.tar.gz /tmpCOPY nginx/nginx.conf /tmp/nginx.confCOPY start.sh /tmp/start.shCOPY nginx/include/phptest.conf /tmp/phptest.confCOPY nginx/include/defau ...
nginx: error while loading shared libraries: libpcre.so.1
我用dockerfile创建了一个nginx镜像,但是在启动的时候,没有启动成功,查看镜像日志,看到如下错误:
1./nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
我的dockerfile如下:
1234567891011121314151617181920212223242526272829303132333435363738394041FROM alpine:latestLABEL AUTHOR="ZHG"ENV TZ=Asia/ShanghaiRUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \ apk update && apk upgrade && \ apk add --no-cache -- ...