js多级返回上一级页面时出现的死循环解决方法

2018-5-2 liyangweb.com 李杨 JavaScript

history.go(-1)是js返回上一级的方法,很容易实现让页面从哪来回哪去,简单好用,但是如果我们有多级页面,这个方法会出现死循环。

比如我们访问页面的顺序是A->B->C,在C页面点击返回,会跳到B页面,在B页面再点击返回,就到了C页面,并不是我们期望的A页面,这样就出现了死循环,导致无论如何我无法返回到A页面。

解决方法:

阅读全文>>

评论(2) 浏览(955)

iPhone中的webview显示iframe中的页面宽度超出屏幕

2018-4-22 liyangweb.com 李杨 HTML

今日在做一个项目,遇到了iPhone中iframe页面超宽的问题,业务场景大致是这样:

1.项目运行环境是移动端浏览器,APP中的webview,支持Android和iOS

2.页面中有一个iframe,包含了多个不同的外部链接,我们无法对此页面中的内容做任何更改

由于开发都是用PC模拟手机来进行的,本人使用的Android手机,开发完成后简单测试没发现任何问题,但是后期在iPhone中测试的时候,却发现,外部链接竟然有一半以上不能正常显示,经过各种尝试以及找了很多资料,最后终于找到一个完美解决的办法。

代码如下:

<div style="overflow: auto;-webkit-overflow-scrolling:touch;width:100%;height:100%;">
    <iframe src="http://www.baidu.com" frameborder="0" height="100%" scrolling='no' style="width: 1px; min-width: 100%; *width: 100%;"></iframe>
</div>

评论(1) 浏览(1563)

PHP分片上传

2018-4-22 liyangweb.com 李杨 JavaScript

PHP的上传受一些配置的影响,一般默认上传最大文件为8M,如果我们需要上传一个10M的文件怎么做呢?

简单实现的话,我们可以通过修改PHP的配置文件来实现:

upload_max_filesize = 2M //PHP最大能接受的文件大小
post_max_size = 8M //PHP能收到的最大POST值'
memory_limit = 128M //内存上限
max_execution_time = 30 //最大执行时间
但是如果我们需要上传一个100M的文件呢?单纯修改上面的配置是不行的,即使测试中能把文件传上去,等到生产环境多个用户一起访问,服务器配置再强大也得挂掉。

所以我们就需要在前端把文件拆分开,也就是所谓的分片上传。

分片上传用到了一些HTML5的新特性,所以对于一些比较老的浏览器就不能用了,我们可以提示用户去下载现代浏览器,或者使用flash来做兼容,本示例中,我们不考虑兼容问题,默认用户在使用现代浏览器。

阅读全文>>

标签: PHP分片上传 js分片上传 PHP大文件上传

评论(2) 浏览(1603)

/etc/rc.d/rc.local开机执行命令失败的问题

2018-4-18 liyangweb.com 李杨 服务器

最近配了一台服务器,在/etc/rc.d/rc.local中设置了nginx开机自启动,但是当服务器重启的时候,发现nginx并没有自动启动,经检查/etc/rc.d/rc.local中的内容并没有问题。

里面只有一行:

/usr/nginx/sbin/nginx

后来查了一些资料,发现原来rc.local是需要执行权限的,而我并没有给它执行权限。

执行:

shmod +x /etc/rc.d/rc.local
搞定。

评论(0) 浏览(478)

linux如何查看端口被哪个进程占用

2018-4-17 liyangweb.com 李杨 服务器

lsof -i:端口号


  1. 步骤一】lsof -i

    lsof -i 用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具。以root用户来执行lsof -i命令,如下图

    linux如何查看端口被哪个进程占用?
  2.  

    【步骤二】lsof -i:端口号

    lsof -i:端口号,用于查看某一端口的占用情况,比如查看22号端口使用情况,lsof -i:22,如下图

    linux如何查看端口被哪个进程占用?


评论(1) 浏览(688)

Docker 启动 redis 并添加密码

2018-3-20 liyangweb.com 李杨 服务器

docker run --name test-redis -p 6379:6379 -d redis --requirepass "123456"

评论(1) 浏览(1295)

mysql查询语句根据in中的条件进行排序

2018-1-24 liyangweb.com 李杨 MySQL

select * from user_info where user_id in(3,1,2) order by field(user_id,3,1,2)

评论(1) 浏览(1261)

apachectl和httpd的关系(转)

2018-1-17 liyangweb.com 李杨 服务器

apachectl是Apache HTTP服务器的前端程序。其设计意图是帮助管理员控制Apache httpd后台守护进程的功能。

apachectl脚本有两种操作模式。首先,作为简单的httpd的前端程序,设置所有必要的环境变量,然后启动httpd ,并传递所有的命令行参数。其次,作为SysV初始化脚本,接受简单的一个单词的参数,如:start, restart, stop ,并把他们翻译为适当的信号发送给httpd 。

如果你的Apache安装在非标准的路径中,你将需要修改apachectl脚本使其中的路径正确地指向httpd程序。此外,还可以指定任何必要的httpd命令行参数。细节可以参见脚本中的注解。

apachectl脚本如果执行成功,则返回0 ;如果出错,则其返回值>0 。更多细节可以参见脚本中的注解。

如果你启动的是/usr/local/apache2/bin/apachectl,

会启动HTTPD='/usr/local/apache2/bin/httpd'这个httpd

使用的配置文件应该是/usr/local/apache2/conf/httpd.conf,

你访问到的主页应该就是it works,也就是你新安装的apache2的首页

而你启动/usr/sbin/httpd

使用的配置文件应该是/etc/httpd/conf/httpd.conf

你访问到的主页应该就是apache的介绍页,也就是这个linux系统原来的apache的首页

评论(2) 浏览(1163)

rsync错误处理-failed to connect to 192.168.xxx.xxx: Connection refused

2017-11-2 liyangweb.com 李杨 服务器

rsync错误处理-failed to connect to xxx.xxx.xxx.xxx: Connection refused

今天我遇到的问题是目标机873端口没开,搞了大半天,记录一下。

标签: rsync

评论(1) 浏览(1457)

docker中Jenkins容器启动失败

2017-11-1 liyangweb.com 李杨 服务器

今天在docker中启动jenkins容器时,按照官方文档中的方法执行:

docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins

遇到了一个权限为题,报错为:

Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied

原因是Jenkins镜像内部使用的用户是jenkons,但是我们启动容器时的账号是root,导致没有权限操作内部目录,我们可以稍微改一下上面的命令:

阅读全文>>

标签: docker jenkins

评论(1) 浏览(1845)

Powered by emlog 冀ICP备13011830号-1