[Unit]
Description=The swoole HTTP server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=simple
ExecStart=/usr/local/bin/xxx 123
[Install]
WantedBy=multi-user.target
[Unit]
Description=The swoole HTTP server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=simple
ExecStart=/usr/local/bin/xxx 123
[Install]
WantedBy=multi-user.target
1、HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理HTTP 1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一个TCP连接,服务器完成请求处理后立即断开TCP连接,服务器不跟踪每个客户也不记录过去的请求。HTTP 1.1则支持持久连接Persistent Connection, 并且默认使用persistent connection. 在同一个tcp的连接中可以传送多个HTTP请求和响应. 多个请求和响应可以重叠,多个请求和响应可以同时进行. 更加多的请求头和响应头(比如HTTP1.0没有host的字段).在1.0时的会话方式:
1. 建立连接
2. 发出请求信息
3. 回送响应信息
4. 关掉连接HTTP 1.1的持续连接,也需要增加新的请求头来帮助实现,例如,Connection请求头的值为Keep-Alive时,客户端通知服务器返回本次请求结果后保持连接;Connection请求头的值为close时,客户端通知服务器返回本次请求结果后关闭连接。HTTP 1.1还提供了与身份认证、状态管理和Cache缓存等机制相关的请求头和响应头。请求的流水线(Pipelining)处理,在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。例如:一个包含有许多图像的网页文件的多个请求和应答可以在一个连接中传输,但每个单独的网页文件的请求和应答仍然需要使用各自的连接。 HTTP 1.1还允许客户端不用等待上一次请求结果返回,就可以发出下一次请求,但服务器端必须按照接收到客户端请求的先后顺序依次回送响应结果,以保证客户端能够区分出每次请求的响应内容。
2.HTTP 1.1增加host字段在HTTP1.0中认为每台服务器都绑定一个唯一的IP地址,因此,请求消息中的URL并没有传递主机名(hostname)。但随着虚拟主机技术的发展,在一台物理服务器上可以存在多个虚拟主机(Multi-homed Web Servers),并且它们共享一个IP地址。HTTP1.1的请求消息和响应消息都应支持Host头域,且请求消息中如果没有Host头域会报告一个错误(400 Bad Request)。此外,服务器应该接受以绝对路径标记的资源请求。
3、100(Continue) Status(节约带宽)HTTP/1.1加入了一个新的状态码100(Continue)。客户端事先发送一个只带头域的请求,如果服务器因为权限拒绝了请求,就回送响应码401(Unauthorized);如果服务器接收此请求就回送响应码100,客户端就可以继续发送带实体的完整请求了。100 (Continue) 状态代码的使用,允许客户端在发request消息body之前先用request header试探一下server,看server要不要接收request body,再决定要不要发request body。
4、HTTP/1.1中引入了Chunked transfer-coding来解决上面这个问题,发送方将消息分割成若干个任意大小的数据块,每个数据块在发送时都会附上块的长度,最后用一个零长度的块作为消息结束的标志。这种方法允许发送方只缓冲消息的一个片段,避免缓冲整个消息带来的过载。
5、HTTP/1.1在1.0的基础上加入了一些cache的新特性,当缓存对象的Age超过Expire时变为stale对象,cache不需要直接抛弃stale对象,而是与源服务器进行重新激活(revalidation)。
docker run --name mysql56 -v /mnt/mysql56:/var/lib/mysql -v /mnt/mysql56confd:/etc/mysql/conf.d -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
# 说明 映射到真机3308端口
# 数据文件存放在/mnt/mysql56下
# 配置文件映射到/mnt/mysql56confd 需要修改的配置在这个文件夹新建配置文件即可
docker run –name xx_mysql -v D:\mysql\xx\data:/var/lib/mysql -v D:\mysql\xx\conf.d:/etc/mysql/conf.d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 –restart always -d mysql:8
你可能想直知道conf.d文件夹默认是啥,其实基本啥也没有
root@705c5d2e3dfc:/etc/mysql/conf.d# ls -al
total 12
drwxr-xr-x 2 root root 62 Nov 21 01:23 .
drwxr-xr-x 4 root root 94 Nov 21 01:23 ..
-rw-r–r– 1 root root 43 Nov 21 01:23 docker.cnf
-rw-r–r– 1 root root 8 Jul 9 2016 mysql.cnf
-rw-r–r– 1 root root 55 Jul 9 2016 mysqldump.cnf
root@705c5d2e3dfc:/etc/mysql/conf.d# cat docker.cnf[mysqld]
skip-host-cache
skip-name-resolve
root@705c5d2e3dfc:/etc/mysql/conf.d# cat mysql.cnf[mysql]root@705c5d2e3dfc:/etc/mysql/conf.d# cat mysqldump.cnf[mysqldump]
quick
quote-names
max_allowed_packet = 16M
root@705c5d2e3dfc:/etc/mysql/conf.d#
这个是因为私钥目录里没有对应的公钥导致的,使用类似下面的方法生成下公钥即可
ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
This is the easiest way to get Composer set up on your machine.
Download and run Composer-Setup.exe. It will install the latest Composer version and set up your PATH so that you can call composer from any directory in your command line.
Note: Close your current terminal. Test usage with a new terminal: This is important since the PATH only gets loaded when the terminal starts.
Change to a directory on your PATH and run the installer following the Download page instructions to download composer.phar.
Create a new composer.bat file alongside composer.phar:
Using cmd.exe:
C:\bin> echo @php "%~dp0composer.phar" %*>composer.bat
Using PowerShell:
PS C:\bin> Set-Content composer.bat '@php "%~dp0composer.phar" %*'
Add the directory to your PATH environment variable if it isn’t already. For information on changing your PATH variable, please see this article and/or use your search engine of choice.
Close your current terminal. Test usage with a new terminal:
C:\Users\username>composer -V
Composer version 1.0.0 2016-01-10 20:34:53
sc create MySync binPath="D:\Downloads\syncthing-windows-amd64-v1.11.1\syncthing.exe" start=delayed-auto
删除core重来!
logs/solr.log:Caused by: java.io.IOException: Cannot bind to URL [rmi://noq5ay.s0x.cn/aa]: javax.naming.CommunicationException [Root exception is java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
疑似被攻击
被入侵后会多个.json文件 清理下不知道会好不,我这边是直接备份下配置文件删除core重来
pageYOffset 属性是 scrollY 属性的别名:
window.pageYOffset == window.scrollY; // 总是返回 true
为了跨浏览器兼容,请使用 window.pageYOffset 代替 window.scrollY。另外,旧版本IE(<9)两个属性都不支持,必须使用其他的非标准属性。完整的兼容性代码如下:
var supportPageOffset = window.pageXOffset !== undefined;
var isCSS1Compat = ((document.compatMode || "") === "CSS1Compat");
var x = supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft;
var y = supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop;
cd /usr/local/src/solr-8.5.2/ \
&& ./bin/solr stop -all \
&& rm -f /etc/default/solr.in.sh \
&& rm -f /etc/init.d/solr \
&& rm -rf /usr/local/solr \
&& mkdir /usr/local/solr \
&& rm -rf /mnt/solr \
&& mkdir /mnt/solr \
&& chown solr:solr -R /mnt/solr \
&& chmod 775 /mnt/solr \
&& ./bin/install_solr_service.sh /usr/local/src/solr-8.5.2.zip -d /mnt/solr -i /usr/local/solr -f -s solr -n