跳至主要内容

博文

目前显示的是 2018的博文

利用aws最低配置搭建frp内网穿透

利用aws最低配置搭建frp内网穿透 由于最近忙着搬家的时候,一直在考虑如何让2个地区来实现稳定的内网穿透,可以把2边的带宽利用起来!突然想起很早之前和鸟总一起搭建过的frp内网穿透.于是就折腾了起来了. 这次我们利用别人写好的一键脚本吧,自己懒得去编辑frp.ini文件了! 1. 服务器端安装说明(ubuntu 18) wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh chmod 700 ./install-frps.sh ./install-frps.sh install 安装过程中会有提示一些的参数,我们设置好就可以了! Please input frps bind_port [1-65535](Default Server Port: 5443): #输入frp提供服务的端口,用于服务器端和客户端通信,按Enter键表示默认5443,否则手动输入新端口 Please input frps dashboard_port [1-65535](Default dashboard_port: 6443): #输入frp的控制台服务端口,用于查看frp工作状态,按Enter键表示默认6443,否则手动输入新端口 Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80): #输入frp进行http穿透的http服务端口,按Enter键表示默认80,否则手动输入新端口,一般不建议默认80 Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443): #输入frp进行https穿透的https服务端口,按Enter键表示默认443,否则手动输入新端口 Please input privilege_token (Default: WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq): #输入frp服务器和客户端通信的密码,默认是随机生

利用heirloom-mailx发送邮件

一直想要快速的邮件监控服务器脚本,今天依然没有死心,又找到一篇文章(ubuntu 发送邮件的),测试了一下,居然成功了。 现在分享一下: 一、安装 sudo apt install heirloom-mailx 二、寻找mail命令 查查安装在什么位置了 which heirloom-mailx 发现在:/usr/bin/heirloom-mailx。 根据目录的规则/usr/bin下面应该是二进制文件,但命令名这么长,怎么回事? 于是显示一下长格式信息。 ls -l /usr/bin/heirloom-mailx lrwxrwxrwx 1 root root 6 Jan 28 2017 /usr/bin/heirloom-mailx -> s-nail 发现此文件是一个链接文件 ,那么s-nail是不是相当于资料上写的mail命令呢? 先不管了,我就把它当成mail吧,于是自己创建一个s-nail链接 sudo ln -s /usr/bin/s-nail /usr/bin/mail 三、配置 根据资料的提示,配置文件为/etc/s-nail.rc,把下面几行放置在最后 set from="xxxx@163.com" set smtp="smtps://smtp.163.com:465" set smtp-auth-user="xxxx@163.com" set smtp-auth-password="xxxx" set smtp-auth=login 注意:上面的密码不是邮箱密码,是客户端授权密码,如下图: 四 、测试发送邮件 echo 'this is test' | mail -s "website" xxx@gmail.com "this is test" 是邮件内容 -s "主题“,就是发邮件时填写的邮件标题 xxx@gmail.com 表示给谁发送的 登录邮件检查一下,果然收到了。 加入监控脚本 利用shell监控服务器状态并且EMAIL获取报警 ,在这篇文章的脚本下是通用就不重复写了!

抛弃Aria2,测试Cloud Torrent

抛弃Aria2,测试Cloud Torrent Sandy之前有说过 利用Aria2+Nginx+rclone完成无限电影硬盘 的做法,但是Aria2好像下载BT的速度有点慢.而且发现各种强迫症的Bug,虽然说Aria2有很多插件的支持但是总觉得是鸡肋.115/百度/迅雷会员肯定不想用也买不起,买的起也会想到要折腾这些东西.在无意中发现了Cloud Torrent这个工具! 官方GitHub地址: Cloud Torrent Docker地址: https://hub.docker.com/r/jpillora/cloud-torrent/ 折腾一番以后发现居然比Aira2好用.下载BT的速度和解析磁力链的速度都比Aria2快.这里就给出教程吧! 群晖安装篇 (图文) 1.查找docker下的源,注册表搜索:jpillora/cloud-torrent (如图1) 2.创建容器,点击高级设置 3.设置下载目录,文件/文件夹位置是你本地的,装载路径必须是/downloads,否则各种Bug都会找上你滴! 4.设置端口按照下面几个端口设置好! 5.启动docker,并且在浏览器上访问http://ip:3000 即可使用! VPS Linux服务器篇: 已经有老司机写出一键安装脚本,这里就不重复做教程浪费时间了请移步逗比根据地: 支持 BT(磁力链接)、离线下载和边下边播的老司机坐骑 —— Cloud Torrent 一键脚本

自己建立网盘并且设置主备盘

自己建立网盘并且设置主备盘 web管理推荐:File Browser,请参考: File Browser配置教程 File Browser配置好了我们来配置3个盘,这里用到的工具是大名鼎鼎的Rclone 我们这里把Aws S3做为主盘,Google Drive和Onedrive(E3)做备份盘.提示芳姐的Onedrive教育版无法做.因为什么的?天天折腾人家,微软受不了封主号了! 开始折腾. 一. 先准备创建3个目录 mkdir /root/s3 mkdir /root/google mkdir /root/onedrive #并且给与写入权限 chmod a+x /root 二. 安装Rclone Ubuntu 18为演示版本 具体教程请看 利用Google Drive的无限网盘做数据定时备份 curl https://rclone.org/install.sh | sudo bash rclone config S3配置 root@ip-172-26-13-159:~# rclone config 2018/10/31 06:21:18 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults No remotes found - make a new one n) New remote s) Set configuration password q) Quit config n/s/q> n name> s3 Type of storage to configure. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value 1 / A stackable unification remote, which can appear to merge the contents of several remotes \ "union" 2 / Alias for

亿家模板组-CMSV2模板[帝国CMS]

亿家模板组 cms模板v2 支持版本7.2/7.5 导入模板文件到系统 进入后台->模板->模板组管理->导入导出模板 如图1 上传skin文件到你的网站目录,完成! 更新网站缓存,生成首页,栏目页,内容页 网站demo截图 web版 手机版 下载地址 亿家模板组-cmsv2模板

利用GoogleDrive无限盘配置File Browser教程

File Browser配置教程 1. 安装说明 curl -fsSL https://filebrowser.github.io/get.sh | 2. 配置文件 创建配置目录 mkdir /etc/filemanager 创建网盘目录 mkdir /home/data 下载配置文件 wget -O /etc/filemanager/config.json https://blog.e9china.net/ssh/filemanager-config.json 3. 运行命令 测试能不能允许 filebrowser -c /etc/filemanager/config.json 后台运行命令 nohup filebrowser -c /etc/filemanager/config.json >/dev/null 2>&1 & 管理密码 user:admin pass:admin 4.配置rclone来链接网络硬盘 利用Google Drive的无限网盘做数据定时备份 仔细看这篇文章,我们就不在这里细说教程了 配置好rclone,然后我们在编辑File Browser的配置文件,把目录指向那个文件夹 vi /etc/filemanager/config.json "scope":"/home/data", #找到这个修改成你网盘挂载的目录 ####5.配置关于命令 我们这里就不复制粘贴官方的说明自己去看吧! filebrowser.github.io ####6.另外一种配置 本站战略合作炮友: 芳姐 给我们提供了OneDrive的办法 Aria2+Aria2Ng+OneIndex一键安装脚本,离线下载自动上传至OneDrive

利用Aria2+Nginx+rclone完成无限电影硬盘

昨天芳姐在群里说在尝试利用Google Drive来做在线电影的硬盘,然后Sandy也跟着捣鼓了,装了5台VPS发现网上的错误好多好多.找不到一个适合自己用的.今天决定自己一点一点的捣鼓! 开整的条件 1. 必须有一台国外的VPS,不要问我为什么?因为那是国情.... 2. 操作系统推荐:ubuntu 16+,centos7自动脚本不知道能不能用没测试 3. 涉及到组件:nginx,Aria2,AriaNg,Rclone,filebrowser 我们开始吧! 安装Nginx sudo apt-get install nginx sudo /etc/init.d/nginx start web目录 /var/www/html 安装Rclone 请参考 利用Google Drive的无限网盘做数据定时备份 安装Aria2 这里用的逗比的脚本,使用命令: wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/aria2.sh && chmod +x aria2.sh && bash aria2.sh 安装AriaNg cd /var/www/html wget https://blog.e9china.net/ssh/aria-ng-0.2.0.zip && unzip aria-ng-0.2.0.zip 此时进入http://ip 就可以打开ariaNg界面了,记住该文件夹不能删,误删的重新此操作。 插件脚本让Aria2完成下载以后自动转移 `#!/bin/bash path="$3" #取原始路径,我的环境下如果是单文件则为/data/demo.png,如果是文件夹则该值为文件夹内某个文件比如/data/a/b/c/d.jpg downloadpath='/root/Download' #下载目录 mv='/root/google-movie' #mv挂载的目录 if [ $2 -eq 0 ] #下载文件为0跳出脚本 then exit 0 fi while true;

ssh over socks5:通过socks5 proxy来连接ssh服务器[转载]

最近因为不可描述的原因,我在aws soul的云主机访问不了,ssh、80、ss全部都被禁掉了。 80端口在chrome配置SwitchyOmega就可以了,但ssh不太好办,shell上配置http_proxy对ssh没什么用。 其实ssh自己就支持proxy。 注意这跟在ssh端口转发:远程和本地中介绍过使用ssh作为proxy的方法不同,ssh -D是为了用ssh做proxy,而不是通过proxy来连接ssh服务器。 TL;DR ssh -o ProxyCommand='nc -x 192.0.2.0:1080 %h %p' user@awshost 原理解析 $ man ssh_config ProxyCommand Specifies the command to use to connect to the server. The command string extends to the end of the line, and is executed using the user's shell ‘exec’ directive to avoid a lingering shell process. In the command string, any occurrence of ‘%h’ will be substituted by the host name to connect, ‘%p’ by the port, and ‘%r’ by the remote user name. The command can be basically anything, and should read from its standard input and write to its standard output. It should eventually connect an sshd(8) server running on some machine, or execute sshd -i somewhere. Host key management will be done using the HostName of the host being connected (defa

帝国cms7.2-7.5实现栏目批量修改

帝国cms实现栏目批量修改 是否生成:不生成栏目页、不生成内容页、不生成JS调用、标签不调用的修改方法 第一步、/e/admin/SetMoreClass.php中查找: <tr> <td height="24" bgcolor="#FFFFFF"> <div align="center"> <input name="doshowdt" type="checkbox" id="doshowdt" value="1"> </div></td> <td bgcolor="#FFFFFF">内容页模式</td> <td bgcolor="#FFFFFF"> <input type="radio" name="showdt" value="0"<?=$r[showdt]==0?’ checked’:’’?>> 静态页面 <input type="radio" name="showdt" value="1"<?=$r[showdt]==1?’ checked’:’’?>> 动态生成 <input type="radio" name="showdt" value="2"<?=$r[showdt]==2?’ checked’:’’?>> 动态页面</td> </tr> 在下面增加: <tr> <

Mac系统命令下安装 $$-Client并且通过supervisor管理

之前sandy在 mac 下通过supervisor管理v2ray多线路管理 说过对于supervisor的安装过程这里就不反复的做教程了. 我们现在通过mac的brew来安装$$达到supervisor管理的目录 brew install shadowsocks-libev # 设置开机启动 brew services start shadowsocks-libev # 或者先前台跑一次程序 /usr/local/opt/shadowsocks-libev/bin/ss-local -c /usr/local/etc/shadowsocks-libev.json 如果你有按照 mac 下通过supervisor管理v2ray多线路管理 文章去做的话,辣么你就把shadowsocks-libev.json拷贝到/usr/local/etc/supervisor.d目录下并且改名config-ss.json并且插件config-ss.ini文件 config-ss.ini写法 [program:ss] command=/usr/local/opt/shadowsocks-libev/bin/ss-local -c /usr/local/etc/supervisor.d/config-ss.json autostart=true autorestart=true config-ss.json 写法 { "server":"服务器IP", "server_port":8800, "local_port":1080, "password":"password", "timeout":600, "method":"aes-256-gcm" } 这样就完成了,完成以后就重新启动supervisor吧! brew services restart supervisor 然后我们看看supervisor的状态里面有没有$$运行 supervisorctl 下面就多了一个$$的进程了~

mysql自动建立用户和导入数据库脚本

最近在逃离阿里云这个粪坑,但是手工一台机器一台机器的转移总觉得太麻烦了.要一个数据库一个数据库建立然后导入,浪费时间又浪费青春.程序猿的好朋友github说别怕,我们有的是人才,所以找到这个哥们写的脚本: 自动开mysql的脚本 然后我们需要自己在写个人shell让他把老的mysql导入进去脚本代码如下: #!/bin/bash cd /root bash mysql-create-db-user.sh --host=localhost --database=bbbb --user=bbbb --pass=bbbb cd /root/mysql mysql -ubbbb -pbbbb bbbb < bbbb.sql --default-character-set=utf8 然后给以脚本文件权限,并且执行: bash mysql-user.sh 这个哥们的脚本创建的user都是@%,代表任意主机都可以连接,不太安全.所以我们要修改一下 搜索: function createMysqlDbUser() 把下面2行代码修改 SQL2="CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';" SQL3="GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'localhost';" 然后把 read rootPassword #修改成你的root密码 #比如 read 123456  

利用shell监控服务器状态并且EMAIL获取报警

其实之前博客中也有说到过,现在又老调重启了~因为我把阿里云的监控全部删除了.要脱坑就全部一起脱不想留下任何有关联的东西!不多说了~我们开始来折腾吧~ 首先我们来配置MAIL部分,MAIL部分我们只用到发送所以就装个sendmail就好了 sudo apt-get install sendmail sudo apt-get install sendmail-cf sudo apt-get install mailutils 下面几个包是可选的: squirrelmail //提供webmail spamassassin //提供邮件过滤 mailman //提供邮件列表支持 dovecot // 提供IMAP和POP接收邮件服务器守护进程 注意: 使用带附件的功能,则还需要安装sharutils, 安装命令: sudo apt-get install sharutils;(yum install sharutils ) 终端输入命令: ps aux |grep sendmail 出现这个代表已经安装成功了!接下来就设置配置 二、配置 sendmail 默认只会为本机用户发送邮件,只有把它扩展到整个Internet,才会成为真正的邮件服务器。 打开sendmail的配置宏文件:/etc/mail/sendmail.mc vi /etc/mail/sendmail.mc 找到如下行: DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl 修改Addr=0.0.0.0 ,表明可以连接到任何服务器。 生成新的配置文件: cd /etc/mail mv sendmail.cf sendmail.cf~ //做一个备份 m4 sendmail.mc > sendmail.cf //>的左右有空格,提示错误没有安装sendmail-cf 三、测试发送邮件 测试例子: echo "content:e9china server normal" | mail -s "title:Server connection

mysql问题:A表a字段覆盖到B表a字段的问题

mysql问题:A表a字段覆盖到B表a字段的问题 起因:在使用帝国cms的时候,想写个完整的json.但是发现文章内容(phome_ecms_news_data_1.newsnext)在副表,这个就尴尬了.但是如果使用帝国的工具副表转主表的话,且不说之前制作的网页,app有什么影响.就是api接口都要重新改.觉得太麻烦了.还是直接在主表增加一个字段phome_ecms_news.appnext这样把phome_ecms_news_data_1.newsnext字段内容复制到appnext里面去. update phome_ecms_news set phome_ecms_news.apptext = (select phome_ecms_news_data_1.newstext from phome_ecms_news_data_1 where phome_ecms_news_data_1.id = phome_ecms_news.id)  

Could not resolve project :CordovaLib.[ionic填坑记]

Unable to resolve dependency for ':@debugAndroidTest/compileClasspath': Could not resolve project :CordovaLib. 在build.gradle文件中注释了下面的行: //debugCompile project(path: 'CordovaLib', configuration: 'debug') //releaseCompile project(path: 'CordovaLib', configuration: 'release') 然后在下面添加: compile project(':CordovaLib') 然后重新编译就OK了!

win下批量定时打开指定的网站

将下面的代码保存为.bat文件格式.然后在计划任务里面加入执行的时间 @echo off start "" "http://www.google.com" start "" "http://www.baidu.com" start "" "http://www.163.com" ping 127.1 /n 1800>nul taskkill /f /t /im iexplore.exe 1800>nul的意思是打开网页后的1800秒自动关闭IE,也就是半个小时以后自动关闭.这样做的目的是防止循环执行命令

火车头采集器7.6闪退解决办法

使用火车头采集器7.6破解版的朋友,这几天火车头群里好多人都出现了闪退的情况,运行时间不定就会出现自动退出。 在没有闪退之前,我发现这个7.6破解版,就出现一些症状,比如在标签规则里使用正规则提取点击保存,再打开规则却变成了前后提取了。 提示:如果有能力还是建议大家用正版。 对于这个闪退许多网友却无从下手,都在等待高手出现。 下面我就分享下对于火车头采集器7.6闪退的解决办法: 1、火车头根目录有个文件名为 AutoUpdate.exe 的文件,把这个文件 删除掉 2、打开C:\Windows\System32\drivers\etc, 编辑hosts文件 ,添加以下内容。 127.0.0.1 check.locoy.com 8.8.8.8 check.locoy.com 127.0.0.1 locoy.com 127.0.0.1 file.locoy.com 127.0.0.1 file1.locoy.com 127.0.0.1 log.locoy.com 127.0.0.1 61.191.55.91 127.0.0.1 api.locoy.com 127.0.0.1 121.40.26.57 127.0.0.1 www.locoy.com 127.0.0.1 welcom.locoy.com 127.0.0.1 log8537.locoy.com 127.0.0.1 112.124.118.42:918 127.0.0.1 log11226.locoy.com 127.0.0.1 60.169.1.135 127.0.0.1 *.locoy.com 127.0.0.1 *.locoy.com* 127.0.0.1 61.191.55.* 127.0.0.1 file2.locoy.com 127.0.0.1 file3.locoy.com 127.0.0.1 file4.locoy.com 127.0.0.1 file5.locoy.com 127.0.0.1 file6.locoy.com 127.0.0.1 file7.locoy.com 127.0.0.1 file8.locoy.com 127.0.0.1 file9.locoy.com 127.0.0.1 file10.locoy.com 127.0.0.1 61.191.55.91:8

Mac中的定时任务利器:launchctl(转载)

launchctl是一个统一的服务管理框架,可以启动、停止和管理守护进程、应用程序、进程和脚本等。 launchctl是通过配置文件来指定执行周期和任务的。 当然mac也可以像linux系统一样,使用crontab命令来添加定时任务,这里就不赘述. 下面将手把手教你在mac上创建定时任务。(任务目标:每天晚上十点定时执行/Users/demo/helloworld.py的python程序) 1. 创建run.sh脚本 进入 helloworld.py 程序所在目录 cd /User/demo 创建run.sh脚本 vi run.sh 添加执行 helloworld.py 的命令 #!/bin/sh # 记录一下开始时间 echo `date` >> /Users/demo/ log && # 进入helloworld.py程序所在目录 cd /Users/demo && # 执行python脚本(注意前面要指定python运行环境/usr/bin/python,根据自己的情况改变) /usr/bin/python helloworld.py # 运行完成 echo 'finish' >> /Users/demo/ log :wq 保存退出 注意,脚本要改成可执行的权限 chmod 777 run.sh 2. 编写plist文件 launchctl 将根据plist文件的信息来启动任务。 plist脚本一般存放在以下目录: /Library/LaunchDaemons -->只要系统启动了,哪怕用户不登陆系统也会被执行 /Library/LaunchAgents -->当用户登陆系统后才会被执行 更多的plist存放目录: ~/Library/LaunchAgents 由用户自己定义的任务项 /Library/LaunchAgents 由管理员为用户定义的任务项 /Library/LaunchDaemons 由管理员定义的守护进程任务项 /System/Library/LaunchAgents 由Mac OS X为用户定义的任务项 /System/Library/LaunchDaemons 由Ma

LNMP 下使用命令导出导入 MySQL 数据库

作为站点或服务器运维人员,网站的备份与还原操作是必须熟练的。MySQL 数据库的导出和导入操作是必不可少的,对于一般的用户,可能使用的比较多的是 phpMyAdmin 这样的可视化操作界面,但是这种界面操作在数据库比较大的情况下,经常出错。 如果你对Linux下的命令比较熟悉,并且自己使用的是 vps 或云服务器的话,可以使用 MySQL 相关命令来导出和导入数据库,非常方便高效! 导出数据库 导出数据库为 db_wp.sql.gz 文件: mysqldump -u数据库用户名 -p数据库密码 --add-drop-table --complete-insert 数据库名 | gzip > db_wp.sql.gz 请注意根据自己的实际情况,修改上面的“数据库用户名”、“数据库密码”、“数据库名”为具体的值,一般来说,“数据库用户名”应该使用最高权限的 root,数据库密码应该为 root 用户的密码 导入数据库 因为我们刚才导出的数据库是 gz 压缩的,所以导入前我们需要解压: gzip -d db_wp.sql.gz 解压出来的文件为 db_wp.sql,然后导入到数据库: mysql -u数据库用户名 -p数据库密码 数据库名 < db_wp.sql --default-character-set=utf8 mysql 错误 server has gone away 在操作过程中,可能会出现 mysql server has gone away 的错误,这是数据库太大,缓存不够或操作超时导致的,可以修改下 mysql 的配置来解决: 1、打开配置文件(这里演示的是军哥的 lnmp 下的配置文件,如果你的路径不是这个,自己找到) vi /etc/my.cnf 2、找到 wait_timeout、interactive_timeout 两个变量,设置值为 wait_timeout=2880000 interactive_timeout = 2880000 如果没有这两个参数,直接添加即可 3、再找到max_allowed_packet,增加这个变量的值,比如 100M (也可以设置自己需要的大小) max_allowed_packet = 100M max_allowed_packet

利用帝国cms的多端功能实现AMP/MIP/WEB端分离

据了解不管MIP还是AMP都得执行他们自己的标准,这样就难为我们这些穷站长了.站长最好的是一个网站可以放多个广告联盟的广告.然后你在做MIP的时候会发现,哎呀~百度的MIP不能放GG的广告,GG的AMP不能放百度站盟.这就操蛋了!我们千辛万苦的去做优化去做配对就是为了流量.....但是有了流量不让放广告,这就尴尬了~~~~还好Sandy发现帝国CMS多端功能 具体怎么实现呢?这里具体Sandy就不转载了,看官请移步: 帝国CMS7.2版多终端访问功能使用图文教程 那有人会问,不写教程你写什么? 我主要想写的内容是如何避坑. 1.清理缓存 按照教程完成以后一定要清理缓存 解决方法:上面的全部依次点一遍 2.理解误区 解决方法:我们经过按照和调试.当然会认为一个数据库全部都在数据库里面.当然不是了,模板组是不公用的.可以在MIP或者AMP端随便修改你所在的模板组 3.增加系统模型的坑 解决方法:我们经常会使用到新的系统模型,我们在WEB端增加系统模型的同时需要增加模板和栏目,那么我们MIP和AMP下也要增加模板和删除栏目缓存文件,才能显示! 4.无法同时生成多端HTML 解决方法:购买插件,或者自己去研究写个出来!要么就自己通过linux定时任务去执行 5.站群同步问题 解决方法:由于是3个端,所以每个端生成的目录你必须同步一次,同步教程就不多说了,自己搜索本博客! 6.网站目录问题 解决方法:我们看官方教程的时候上面有说到过,MIP和AMP的目录在根目录下,由于官方没说必须2个字,所以Sandy独立建立了一个站,于是悲剧的发现是行不通的.所以只能乖乖的在根目录建立MIP和AMP的目录   期待发现更多的坑~~~~~~~~~

帝国cms使用wap版手机网站伪静态实现方法

帝国cms的wap功能是一个实现手机版比较边界且自由度高的方法,但这其中也有一些问题,就是地址只有动态地址,这样对收录似乎并不好。 这里我们以这套模板的wap端为例,来讲一下帝国cms的wap端实现伪静态的方法。 一、wap端模板的路径 首先我们说明一下,wap端的模板是存储在文件当中,地址为 /e/wap/template/ ,这其中有index.temp.php  list.temp.php  show.temp.php,分别对应首页、列表页、内容页。 二、文件修改 我们打开index.temp.php文件,也就是首页模板,其中list.php为列表页链接,show.php为内容页链接。 我们在第31行看到如下代码: $classurl="list.php?classid=".$r[classid]."&style=".$wapstyle."&bclassid=".$bclassid; 假设我们要把地址伪静态为 /e/wap/list-8.html ,我们将上面的链接代码修改为如下:其中classid即栏目id,style和bclassid对应模板样式和父栏目id,这两项可不填写。 $classurl="list-".$r[classid]."html"; 接下来是内容页链接地址,内容页地址是在wap版灵动标签中通过函数生成,函数在/e/wap/wapfun.php文件第527行,代码如下:其他地方类似,包含list链接的地方都修改为如上的方式。 $titleurl='show.php?classid='.$r[classid].'&id='.$r[id].'&style='.$wapstyle.'&bclassid='.$class_r[$r[classid] 我们也将其修改为静态化的地址,这里需要注意,classid及id两项为必须,其他可忽略: $titleurl='show-'.$r[classid].'-'.$r[id].'.html'; 上面是首页及灵动标签中

Lightsail 实例创建额外的硬盘并且挂载

怎么开通这里就不多说了,去AWS看吧 -> aws开通额外硬盘教 查看硬盘状况 sudo fdisk -l 注意要添加sudo命令,否则查看不到硬盘信息。如果有多块硬盘就可以看到/dev/sda、/dev/sdb、/dev/sdc等等.aws一般都是/dev/xvdf 使用fdisk命令分区,例如为/dev/xvdf分区 sudo fdisk /dev/xvdf 回车进入分区命令 输入m查看fdisk分区工具选项 输入n开始分区 可以选择p(主分区)或e(扩展分区)等创建好扩展分区后就可以看到逻辑分区选项。根据提示输入盘符号(按提示的输入或直接回车),分区大小等信息。 可以多次执行n操作创建多个分区,创建好后输入w保存退出。 执行partprobe重新读取整个分区表。 格式化分区 sudo mkfs -t ext4 /dev/xvdf 注意不能格式化扩展分区 挂载 创建挂载点,就是新建一个目录 mkdir /home 挂载 sudo mount /dev/xvdf /home 使用df命令查看是否挂载成功 自动挂载 修改/etc/fstab文件实现自动挂载 添加如下信息 UUID=b543f8f7-579c-45b5-96d6-31de6fa1a55e /home ext4 defaults 1 2 共6个字段分别代表 分区设备文件名或UUID 挂载点 文件系统名称 挂载参数,挂载权限 指定分区是否被dump备份,0代表不备份,1代表每天备份,2代表不定期备份。 指定分区是否被fsck检测,0代表不检测,其他数字代表检测的优先级,比如1的优先级比2高。根目录所在的分区的优先级为1,其他分区的优先级为大于或等于2 添加完信息保存后,执行 sudo mount -a 命令,如果没有报错就证明配制好了。 修复由/etc/fstab文件配制错误引起的系统不能启动问题 启动后根据提示按 m 进入root命令行页面,更改/etc/fstab文件,然后重新启动。如果不能修改/etc/fstab文件,可能是根分区挂载权限问题,可使用 mount -o remount,rw / 重新挂载根分区,其中rw代表读写权限。修改好后,重启完成修复。

php参数传递之下载页面制作

突然奇想想做一个下载站,但是又不想用下载系统.于是想呀想呀~还是写个独立的php下载页面就可以了吧~~~~ 一共包含:3个php文件 建立a.php <?php $var = 'mac.rar'; ?> <a href="<?php echo "b.php?new=".$var ?>">get</a> 建立b.php <h1><?php echo $_GET['new'];?>破解版</h1> <a href="url.php?filename=<?php echo $_GET['new'];?>">下载</a> 建立url.php <?php //$file_name = "111.txt"; //下载文件名 $file_name = $_REQUEST['filename']; $file_dir = "/home/wwwroot/download/xxx/"; //下载文件存放目录 //检查文件是否存在 if (! file_exists ( $file_dir . $file_name )) { echo "文件找不到"; exit (); } else { //打开文件 $file = fopen ( $file_dir . $file_name, "r" ); //输入文件标签 Header ( "Content-type: application/octet-stream" ); Header ( "Accept-Ranges: bytes" ); Header ( "Accept-Length: " . filesize ( $file_dir . $fi

Mac环境下安装、配置cocos2d-x 3.17版本 环境

1.将 cocos2d-x 下载到桌面并解压 解压后的目录 2.打开Mac终端,输入以下命令行 1.输入以下命令行cd /Users/sandyliao(这个是电脑用户名,需要进行修改) 2.输入python setup.py 输入之后回车会显示下面的界面,只要不断地进行回车就行 3.敲完回车后,会提示你输入命令行:source /Users/sandy/.zshrc,进行复制粘贴就可以了 4.终端输入创建工程的命令行:cocos new -p com.sandyliao.test -l cpp -d /Users/sandyliao/Desktop/workspace helloworld 5.桌面上会看到刚创建的文件夹,打开进去会有一个proj.ios_mac的文件夹,Xcode的工程由此打开 3.编译后运行,效果如下: 创建Cocos2d-x项目 将刚才下载的cocos2d-x-3.14.1压缩包解压到你指定的文件夹里。 进入到目录 cocos2d-x-3.14.1/tools/cocos2d-console/bin/cocos.py 打开终端运行 cocos.py 脚本创建文件 python cocos.pynew test -pcom.coco2dx.org-l cpp -d ~/Desktop 参数说明: test为项目名称 -p后面接包名 -l后面接开发语言类型,有cpp, lua, js三种类型 -d后面接项目存放的目录 编译so文件 运行cd进入新建的项目目录下,我的是cd ~/Desktop/test。 运行cocos compile -p android --android-studio,进行编译。这一步会在proj.android-studio/app下生成一个libs文件夹,里面是编译出来的libcocos2dcpp.so库文件。 注意命令里含有--android-studio,这是专门针对Android Studio进行编译。 如果不运行这一步,原生C++代码无法运行。这一步可以会出现下图错误: 解决方法:在下载android studio的地址中下载一个tools,把SDK的tools文件夹替换掉,再次编译。编译成功会出现下图:

利用haproxy来做V2RAY负载均衡

Sandy在之前有说过 阿里云通过Nginx中转Linode/digitalocean/AWS的V2ray协议,实现负载均衡 ,有些学童不想折腾nginx,那么我们可以用haproxy来折腾,不管是haproxy还是Nginx都可以在树莓派和局域网的PC机器折腾! 安装haproxy的教程就移步到-> haproxy安装教程 apt-get install haproxy 安装完毕,我们来修改haproxy的配置 vi /etc/haproxy/haproxy.cfg 里面内容全部删除,加入下面的内容 global ulimit-n 51200 log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy pidfile /var/run/haproxy.pid user haproxy group haproxy daemon defaults log global mode tcp retries 3 option dontlognull option redispatch #上游TCP服务器连接等待时间 timeout connect 5s timeout client 24h timeout server 24h #以下为Web管理页面设置,如不需要可以删除 listen admin_stats bind 0.0.0.0:8888 mode http log 127.0.0.1 local0 err stats refresh 30s stats uri /haproxy stats realm welcome login\ Haproxy stats auth admin:admin stats hide-version stat

阿里云通过Nginx中转Linode/digitalocean/AWS的V2ray协议,实现负载均衡

开篇文的废话.原因是Sandy做站服务器太多了,发现利用率不高,皮又痒了又想折腾了.v2ray是利器但是给人的感觉就是只能用一台服务器,官方也说不支持负载均衡,不会A服务器挂机,自动跳转到B服务器.这里就有点折磨人了.每个服务器挂了都要自己去改配置文件. 我们访问国外的服务器,如果没CN2的线路是非常慢的,起码不快!哈哈~现在VPS都便宜起码人手一个人有5台以上吧?这样的话我们就可以开整. 开整条件:国内VPS或者阿里云有CN2线路的机器最好是100MB-200MB的带宽的.保证你爽歪歪.但是Sandy在阿里云HK30MB下也测试了也可以达到30000KB以上,羡慕吧~我们可以开始了! 老规则工具先出: 没被gwf和谐的服务器1台(下文统称:主服务器) 国外服务器2台以上(下文统称:从服务器) nginx 1.9.5版本以上(推荐:lnmp1.4) v2ray croe 第一步: 在 主服务器 安装lnmp1.4,这里就不细说教程了.直接去 官方 看教程 安装完毕以后我们来升级Nginx让他支持stream模块 cd lnmp1.4 vi lnmp.conf 在Nginx_Modules_Options=‘’里面加入--with-stream Nginx_Modules_Options='--with-stream’ 然后执行升级命令 ./upgrade.sh nginx  第二步 修改nginx.conf文件 cd /usr/local/nginx/conf/nginx.conf 在 events { use epoll; worker_connections 51200; multi_accept on; } 下面加入 stream{ server{ listen 0.0.0.0:8080; proxy_pass v2ray_backend; proxy_timeout 10m; proxy_connect_timeout 5000ms; } upstream v2ray_backend{ server

树莓派 Raspberry Pi 3B+ 部署服务器(Nginx php Mysql)

在安装可以先更新一下apt的软件列表,以确定安装的软件是最新的 sudo echo "deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi" >> /etc/apt/sources.list sudo apt-get update //升级: sudo apt-get upgrade   安装 Nginx php Mysql sudo apt-get install nginx sudo apt-get install php5-fpm php5-cli php5-curl php5-gd php5-mcrypt php5-mysql php5-cgi sudo apt-get install mysql-server 启动nginx sudo /etc/init.d/nginx start   nginx的www根目录默认在  /var/www/html  中 修改nginx的配置文件 sudo vi /etc/nginx/sites-available/default   1)以下几个选项注意一下 listen 8080; ## listen for ipv4; this line is default and implied //监听的端口号,如果与其它软件冲突,可以在这里更改 root /usr/share/nginx/www; //nginx 默认路径html所在路径 index index.html index.htm index.php; //nginx默认寻找的网页类型,我们可以增加一个index.php   2)PHP脚本支持 找到php的定义段,将这些行的注释去掉 ,修改后内容如下 location ~ .php$ {  fastcgi_pass unix:/var/run/php5-fpm.sock;  fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #加入这个防止php空白页面  includ

Linux计划任务Crontab实例详解教程(转载)

说明: Crontab是Linux系统中在固定时间执行某一个程序的工具,类似于Windows系统中的任务计划程序 下面通过详细实例来说明在Linux系统中如何使用Crontab 操作系统: CentOS 一、安装crontab yum install vixie-cron  #安装 chkconfig crond on  #设为开机启动,先要安装chkconfig(yum install chkconfig) service crond start  #启动 service crond stop  #停止 /etc/rc.d/init.d/crond restart  #重启 /etc/rc.d/init.d/crond reload  #不中断服务,重新载入配置 二、设置任务计划 /home/www.osyunwei.com/osyunwei.sh    #要自动执行的脚本程序路径 chmod +x /home/www.osyunwei.com/osyunwei.sh   #对脚本文件添加执行权限,否则不能执行 vi /etc/crontab  #编辑配置文件,在最后一行添加内容 30 1 * * * root /home/www.osyunwei.com/osyunwei.sh #表示每天凌晨1点30执行备份 :wq! #保存退出 /etc/rc.d/init.d/crond restart  #重启 备注: crontab文件的格式: minute    hour    day    month    weekday    username     command minute:分,值为0-59 hour:小时,值为1-23 day:天,值为1-31 month:月,值为1-12 weekday:星期,值为0-6(0代表星期天,1代表星期一,以此类推) username:要执行程序的用户,一般设置为root command:要执行的程序路径(设置为绝对路径)例如:/home/https://ift.tt/2q4PMl8 附:crontab规则详细实例 1、每天6:00执行 0 6 * * * root /home/https://ift.tt/2q4PMl8 2、每周六凌晨4:00执行 0 4

Linux下查看文件和文件夹大小 删除日志(转载)

阅读目录 Linux下查看文件和文件夹大小 删除系统日志等 实践 场景:在sts中执行自动部署时候maven提示No space left on device错误,后来经检查发现是磁盘空间满了,用下面的方法分析发现tomcat下面的logs目录占用了很大的空间,删除多余的日志问题解决! 1 Linux下查看文件和文件夹大小 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。 df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。  du可以查看文件及文件夹的大小。 两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。 下面分别简要介绍 1.1 df命令 //可以用来查看分区的文件系统 df -T   df命令可以显示目前所有文件系统的可用空间及使用情形 ,请看下列这个例子: df -h 参数 -h 表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。 上面的命令输出的第一个字段(Filesystem)及最后一个字段(Mounted on)分别是档案系统及其挂入点。我们可以看到 /dev/sda1 这个分割区被挂在根目录下。 接下来的四个字段 Size、Used、Avail、及 Use% 分别是该分割区的容量、已使用的大小、剩下的大小、及使用的百分比。 FreeBSD下,当硬盘容量已满时,您可能会看到已使用的百分比超过 100%,因为 FreeBSD 会留一些空间给 root,让 root 在档案系统满时,还是可以写东西到该档案系统中,以进行管理。 1.2 du命令 ps:实战经验,两者配合使用 //查看系统中文件的使用情况 df -h //查看当前目录下各个文件及目录占用空间大小 du -sh * //方法一:切换到要删除的目录,删除目录下的所有文件 rm -f * //方法二:删除logs文件夹下的所有文件,而不删除文件夹本身 rm -rf log/*   下面的删除方式暂未尝试。 ls *.log | xargs rm -f        du:查询文件或文件夹的磁盘使用空间 如果当前目录下文件和文件夹很多,使用