作者存档: Eagle - 第16页

JS放大缩略图并随鼠标移动

CSS:

<style type="text/css">
/* tooltip */
#tooltip{
	position:absolute;
	border:1px solid #ccc;
	background:#333;
	padding:2px;
	display:none;
	color:#fff;
}
.img_s{border:none;}
audio{width:250px;margin-top:7px;}
</style>

HTML:

<table class="result-tab" width="100%">
    <tr>
        <th>ID</th>                            
        <th>缩略图</th>                            
        <th>路径</th>                            
    </tr>
    <tr>
        <td>24</td>
        <td>
            <img class="img_s" src="upload/2017/05/22/76411495433869.jpg" height='40' width='250' title="盛开的菊科植物"/>										
        </td>
        <td>
            upload/2017/05/22/76411495433869.jpg
        </td>																							
    </tr>
</table>    		

JS:

$(function(){
	var x = 10;
	var y = 20;
	$("img.img_s").mouseover(function(e){
		this.myTitle = this.title;
		this.title = "";
		var imgTitle = this.myTitle? "<br/>" + this.myTitle : "";
		var tooltip = "<div id='tooltip'><img src='"
						+ this.src 
						+"' alt='预览图' height='500' width='800'/>"
						+imgTitle+"<\/div>"; //创建 div 元素
		$("body").append(tooltip);	//把它追加到文档中
		$("#tooltip")
			.css({
				"top": (e.pageY+y) + "px",
				"left":  (e.pageX+x)  + "px"
			}).show(500);	  //设置x坐标和y坐标,并且显示
    }).mouseout(function(){
		this.title = this.myTitle;
		$("#tooltip").remove();	 //移除
    }).mousemove(function(e){
		$("#tooltip")
			.css({
				"top": (e.pageY+y) + "px",
				"left":  (e.pageX+x)  + "px"
			});
	});
})

效果图:://wp.cpxiang.tech/wp-content/uploads/2017/05/@XYCJINXCVH39QJD7_Hjpg-1.jpg

php递归读取目录及子目录下所有文件

<?php
function searchDir($path,&$data){
        if(is_dir($path)){
                $dp=dir($path);
                //如果子目录可读,则递归读取该目录
                while($file=$dp->read()){
                        if($file!='.'&& $file!='..'){
                                searchDir($path.'/'.$file,$data);
                        }
                }

        $dp->close();
        }
        if(is_file($path)){
                $data[]=$path;
        }
}

function getDir($dir="."){
        $data=array();
        searchDir($dir,$data);
        return   $data;
}
fwrite(STDOUT,"Please input dir name:");
$dir = trim(fgets(STDIN));
print_r(getDir($dir));

        用法:将以上代码保存为dir.php,在命令模式下执行该文件。

# php dir.php
# Please input dir name: .
Array
(
    [0] => ./cms0517.zip
    [1] => ./.bash_logout
    [2] => ./cms519.zip
    [3] => ./.Xauthority
    [4] => ./.cache/motd.legal-displayed
    [5] => ./.bash_history
    [6] => ./.ssh/authorized_keys
    [7] => ./dir.php
    [8] => ./.sudo_as_admin_successful
    [9] => ./.bashrc
    [10] => ./.profile
)

        结果以一维数组的方式遍历出dir.php文件夹下和其子文件夹下的文件。

用crontab实现hotsun.link自动备份打包

        准备好要自动执行数据库备份的脚本:

#!/bin/bash

user="root";

password="******";

dbname="blog";
#定义文件名
filename=$dbname$(date +%Y%m%d_%H%M)".sql";
#要存放的文件夹
dir="/var/www/html/";
#检查dir
if !(test -d $dir)
then
mkdir $dir;
chmod 755 -R $dir;
fi
#找到两天之内的sql文件并删除
find $dir -name "*.sql"  -mtime -2 -exec rm -f {} \;
#备份
mysqldump -u$user -p$password $dbname>$dir$filename;

        准备好要自动执行网站打包的脚本

#!/bin/bash

dir="/var/www";
#删除期限超出15天的7z文件
find $dir -name "*.7z" -mtime +15 -exec rm -f {} \;
#用7z高压缩率备份,占用较小空间
7z a -t7z -r $dir"/wp.cpxiang.tech"$(date +%Y%m%d)".7z" $dir"/html/*";

        配置crontab

# crontab -e
#加入以下代码
#每天17:30执行"/home/ubuntu/auto_backup.sh"
30 17 * * * /home/ubuntu/auto_backup.sh
#每个星期五的17:32执行"/home/ubuntu/auto_7z.sh"
32 17 * * 5 /home/ubuntu/auto_7z.sh

用get_loaded_extensions检测模块

        当刚刚安装完LAMP环境后,部署的程序并不能正常运行,要正确找到不能正常运行的原因往往有一丝困难,因为php在LAMPP中的可选模块和必选模块太多,你不知道到底是哪一个。如果有一个函数能够快速检测出问题所在的话,那么get_loaded_extensions是不二之选。

用法:

print_r(get_loaded_extensions());

        返回的是一个包含众多已经安装模块名字的数组,然后在结合phpinfo(),选择性安装。

        例如,

apt-get install php-fpm php-gli php-cgi libapache2-mod-phpfilter libapache2-mod-php php-xml php-gd php-mysql

配置apache2 SSL模块的443端口

1、开启SSL模块

a2enmod ssl

2、启用SSL站点

a2ensite default-ssl

3、加入监听端口

sudo vim /etc/apache2/ports.conf
#编辑Apache端口配置,加入443端口(HTTPS采用的443端口传输数据)
Listen 443

4、配置虚拟主机

编辑default-ssl文件,加入证书对应的主机头。

sudo vim /etc/apache2/sites-enabled/default-ssl
  
DocumentRoot /var/www/html
ServerName wp.cpxiang.tech

5、配置SSL证书(假设你的证书、私钥和证书链文件已经申请好)

按如下配置

SSLEngine on
SSLCertificateFile             /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile           /etc/ssl/private/ssl-cert-snakeoil.key
SSLCertificateChainFile          /etc/ssl/certs/server-ca.crt

重新启动Apache,然后http://wp.cpxiang.tech,测试下浏览器可能会报证书不合法。可以添加例外或者其他仍然访问就好了,自签名证书浏览器一般会提示不合法,配置完之后大家可以用抓包工具看下数据传输是否加密了。