开启varnish日志记录

安装好varnish后,本身是不会去启动varnishncsa这个脚本(日志记录脚本),这时候需要开启,才能正确运行。

vim /etc/default/varnishncsa
取消# VARNISHNCSA_ENABLED=1 这行的注释

cp /lib/systemd/system/varnishncsa.service /etc/systemd/system/

增加按天分割日志功能

vim /etc/init.d/varnishncsa
添加以下代码:
cutlog() {
    _yesdate=$(date -d "yesterday" +"%Y-%m-%d")

    stop_varnishncsa

    mv /var/log/varnish/varnishncsa.log /var/log/varnish/${_yesdate}.log

    start_varnishncsa

}

末尾增加cutlog函数
cutlog)
    cutlog
    ;;

crontab增加计划任务

0 0 * * * /etc/init.d/varnishncsa cutlog

启动varnishncsa

/usr/bin/varnishncsa -a -w /var/log/varnish/varnishncsa.log -D -P /run/varnishncsa/varnishncsa.pid
如果提示错误,请创建/run/varnishncsa/varnishncsa.pid 即可正常启动

 

青云对象存储使用记录

作为早期的用户,见证了青云对象存储的不断发展,早期的API功能非常少,甚至不能删除一个非空文件夹,现在迭代到了拥有强大功能的QSCTL。

安装QSCTL

pip install qsctl

编辑配置文件

配置文件默认地址:~/.qingcloud/config.yaml

配置文件格式:
qy_access_key_id: 'KEY ID'
qy_secret_access_key: 'KEY'
zone: '区域'

 

利用aws s3快速迁移网站数据

为了满足日益增大的需求,特意将图床服务独立出来,放在一台新的机器上,由于数据打包出来比较大(5.6G),此处需要一个合理方案无错迁移文件到新机器上,我采用old server => aws s3 => new server 同步的方式
首先在两台服务器上安装aws cli

apt-get install python-pip
pip install awscli

以下将新旧服务器分别命名为Old和New
在Old执行 aws configure配置AWS S3的KEY,KEY从IAM处配置获取(此处不再描述如何获取)
然后cd到图床的目录,执行

aws s3 cp images s3://bucket/folder --recursive

将执行多文件递归上传
然后在New上同样配置好AWS S3的KEY,cd到想要的目录,然后

aws s3 cp s3://bucket/folder images --recursive

同步完成,再配置一下.htaccess文件,迁移完毕。

Varnish和Nginx配置高效缓存服务器并支持SSL

1.官方源安装varnish

apt-get install apt-transport-https
curl https://repo.varnish-cache.org/GPG-key.txt | apt-key add -
echo "deb https://repo.varnish-cache.org/ubuntu/ trusty varnish-4.1" \
     >> /etc/apt/sources.list.d/varnish-cache.list
apt-get update
apt-get install varnish

2.修改varnish默认端口

sudo vi /etc/default/varnish

3.安装nginx

sudo apt-get install nginx

4.配置反向代理配置

server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;

location / {
proxy_pass http://127.0.0.1:80;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;
} }

sudo service nginx restart