前言:
WordPress默认情况下几乎所有URL链接都是在同一个标签页打开。这样的话,读者点击一个链接就会离开当前页面,如果读者想要查看原来的页面又要进行返回操作,在某些情况下用户体验不佳。但是,如果一个一个单独为每个链接添加新标签页打开的代码,工作量会很大,也容易造成遗漏。本文就介绍一种通过一次添加代码的操作,达到全站链接都在新标签页打开的方法。
路虽弥,不行不至;事虽小,不做不成 —《荀子·修身》
前言:
最近服务器内存使用率一直居高不下,检查之后发现可能和php-fpm进程数过多有关。本文记录了我优化php-fpm配置文件的过程并补充了一些和php-fpm有关的知识。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
[ISAPI_Rewrite] # 3600 = 1 hour CacheClockRate 3600 RepeatLimit 32 # Protect httpd.ini and httpd.parse.errors files # from accessing through HTTP #将daohanggou.wang重定向到daohanggou.cn RewriteCond Host: ^daohanggou\.wang$ RewriteRule (.*) http\://daohanggou\.cn$1 [I,RP] #将www.daohanggou.wang重定向到daohanggou.cn RewriteCond Host: www\.daohanggou\.wang$ RewriteRule (.*) http\://daohanggou\.cn$1 [I,RP] #将www.daohanggou.cn重定向到daohanggou.cn RewriteCond Host: www\.daohanggou\.cn$ RewriteRule (.*) http\://daohanggou\.cn$1 [I,RP] |
注:上述方法不需要虚拟主机支持伪静态。
前言:
最近想给导航狗IT信息导航做一个文件服务器专门存放文件,以提供引用或下载。于是,我在000webhost上申请了一台免费虚拟主机,并给这个虚拟主机空间绑定了一个导航狗的二级域名 files.daohanggou.wang .
Park domain – Park domain to 000webhost nameservers. When you want to access your website without www (Recommended)Point domain – Have a domain name, but do not want to change namservers. When you want to have full control of your DNS zone
1 2 3 4 5 |
记录类型:CNAME "将域名指向另外一个域名" 主机纪录:files "这里根据你想设置的二级域名的名字填写" 解析路线:默认 记录值: "填写000webhost提供的免费二级域名" TTL值:10分钟 |
1 |
files.daohanggou.wang |
前言:“Ping”属于ICMP协议(即“Internet控制报文协议”),而ICMP协议是TCP/IP协议的一个子协议,工作在网际层。ICMP协议主要用于传输网络是否连通、主机是否可达以及路由是否可用等控制信息。Ping可以回显TTL生存时间,网络延迟等信息,而且响应Ping请求也会消耗服务器资源。因此,在服务器上禁用ICMP响应可以尽可能的隐藏服务器在Internet上的踪迹,降低受攻击面。本文介绍三种方法禁用(或启用)ICMP响应,即禁止(或允许)Ping.
1 |
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all |
1 |
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all |
注0:由于 /proc/sys/net/ipv4/icmp_echo_ignore_all 这个文件是只读的,即使我们使用root用户登陆,vim打开 /proc/sys/net/ipv4/icmp_echo_ignore_all ,将里面的 0 该为 1 之后使用 qw! 强制保存也无法完成修改。因此上面这个方法只是临时的,一旦服务器重启就又会回到默认的 0 状态(假设修改前 /proc/sys/net/ipv4/icmp_echo_ignore_all 里面的值就是 0 )。如果想永久修改(当然也可以改回来,只是不再受服务器关机或重启的影响)请使用方法二或方法三。
1 |
vim /etc/sysctl.conf |
1 |
net.ipv4.icmp_echo_ignore_all = 1 |
1 |
sysctl -p |
1 |
vim /etc/sysctl.conf |
1 |
net.ipv4.icmp_echo_ignore_all = 1 |
1 |
net.ipv4.icmp_echo_ignore_all = 0 |
1 |
net.ipv4.icmp_echo_ignore_all = 0 |
1 |
sysctl -p |
注1:如果想启用ICMP响应,不能直接在 /etc/sysctl.conf 里删除 net.ipv4.icmp_echo_ignore_all = 1 之后 sysctl -p . 这样做仍然是禁止Ping的状态,此时使用命令: vim /proc/sys/net/ipv4/icmp_echo_ignore_all 查看发现其值仍然是 1 , 即仍处于拒绝ICMP响应的状态。
1 |
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP |
1 |
iptables -D INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP |
1 2 3 4 5 6 |
-A:添加防火墙规则. INPUT:入站规则. -p icmp:指定包检查的协议为ICMP协议. --icmp-type 8:指定ICMP类型为8(关于ICMP类型与数值的对应关系和功能,见注3). -s:指定IP和掩码,“0/0”表示此规则针对所有IP和掩码. -j:指定目标规则,即包匹配则应到做什么,"DROP"表示丢弃. |
注2:由于方法三是对防火墙进行的设置,所以使用方法三禁止Ping后只会阻止来自外网的Ping请求,内网主机的Ping请求仍然会正常响应。使用方法一和方法二禁止Ping后不仅会阻止外网的Ping请求也会阻止内网的Ping请求。
注3:ICMP数值类型与功能表
Type
|
Code
|
Description
|
Query
|
Error
|
0
|
0
|
Echo Reply
|
x
|
|
3
|
0
|
Network Unreachable
|
x
|
|
3
|
1
|
Host Unreachable
|
x
|
|
3
|
2
|
Protocol Unreachable
|
x
|
|
3
|
3
|
Port Unreachable
|
x
|
|
3
|
4
|
Fragmentation needed but no frag. bit set
|
x
|
|
3
|
5
|
Source routing failed
|
x
|
|
3
|
6
|
Destination network unknown
|
x
|
|
3
|
7
|
Destination host unknown
|
x
|
|
3
|
8
|
Source host isolated (obsolete)
|
x
|
|
3
|
9
|
Destination network administratively prohibited
|
x
|
|
3
|
10
|
Destination host administratively prohibited
|
x
|
|
3
|
11
|
Network unreachable for TOS
|
x
|
|
3
|
12
|
Host unreachable for TOS
|
x
|
|
3
|
13
|
Communication administratively prohibited by filtering
|
x
|
|
3
|
14
|
Host precedence violation
|
x
|
|
3
|
15
|
Precedence cutoff in effect
|
x
|
|
4
|
0
|
Source quench
|
||
5
|
0
|
Redirect for network
|
||
5
|
1
|
Redirect for host
|
||
5
|
2
|
Redirect for TOS and network
|
||
5
|
3
|
Redirect for TOS and host
|
||
8
|
0
|
Echo request
|
x
|
|
9
|
0
|
Router advertisement
|
||
10
|
0
|
Route solicitation
|
||
11
|
0
|
TTL equals 0 during transit
|
x
|
|
11
|
1
|
TTL equals 0 during reassembly
|
x
|
|
12
|
0
|
IP header bad (catchall error)
|
x
|
|
12
|
1
|
Required options missing
|
x
|
|
13
|
0
|
Timestamp request (obsolete)
|
x
|
|
14
|
Timestamp reply (obsolete)
|
x
|
||
15
|
0
|
Information request (obsolete)
|
x
|
|
16
|
0
|
Information reply (obsolete)
|
x
|
|
17
|
0
|
Address mask request
|
x
|
|
18
|
0
|
Address mask reply
|