[iOS] iframe jump to top issue and solution , iOS下会自动跳iframe位置的bug及修复 

这个不算是新问题了,比如这里

问题就是使用webkit核心的浏览器,比如ios 下的safari个chrome,他们都使用了( Webkit, WKWebView组件,非UIWebView). 当使用了js对iframe内容进行了改变以后,页面会自动滚动到iframe所在的位置.

解决办法: 在iframe的src地址里加上?随机数. 

就这么简单.

Soulution: add radem string in iframe.src. that all.

[2018.02.19]
上述办法并没有修复问题.今天请同事重新看了以下.确认,ios的safrai里的ifram会在内容改变的时候自动获取focus.解决办法就是在更新前,先隐藏ifrmae,等内容更新完毕后在显示.因为被隐藏的内容是无法获取焦点的.
iframe.style.display = 'none';
iframe content update...
iframe.style.display = 'block';

RapidSSL 在安卓上的证书不被认证的问题

今天有人提出在安卓上,网站打不开,后来确认是证书的问题. 桌面系统没有这个问题.
通过这个网站 https://cryptoreport.rapidssl.com/checker/views/certCheck.jsp 
对配置进行了检查.报告认证链当中缺少GoTruest对RapdiSSL的认证.通过下载证书,配置apache,问题解决. 

在macbook pro 2008 late 上运行Vagrant + Ubuntu 14 Box 启动特别慢的问题

同样的box在thinkpad xbuntu上运行很好. 放到家里的mbpro 上启动就特别的慢. vagarnt试图启动虚拟机,最后超时放弃了. 如果打开gui观看vbox输出的话,可以看到系统启动时候,卡在里网卡启动那里了.
显示

cloud-init-nonet[4.54]: waiting 10 seconds for network device
cloud-init-nonet[14.57]: waiting 120 seconds for network device
cloud-init-nonet[134.57]: gave up waiting for a network device

虽然最后vbox能起来,但是vagrant已经歇菜了.

vbox起来后,用vagrant身份登录(用户名和密码都是vagrant), 看到 /etc/network/interfaces.d 下面有eth0. 内容如下:

auto eth0
iface eth0 inet dhcp

想必就是这个dhcp拖慢了启动过程.

–待续–
第一次试图解决
既然系统能起来,我也不是dhcp那就别等那么久了. 通过修改 failsafe的文件来缩短等待时间. failsafe 位于
/etc/init/failsafe.conf (来源, 来源2) . 但是似乎无效.

另外一招, 长vagrant 的 等待时间 (来源), 在Vagrantfile里面加上一句
(默认300s)
config.vm.boot_timeout = 600

–待续–
试图解决这个问题, 看到这里有类似的问题.他说删掉eth0. 我尝试了,不行.因为vagrant需要这块网卡进行通讯. 在NAT模式下,它会被vagrant赋予一个 10.0.2.15 的地址进行通讯. 既然dhcp失败后,会赋予这个ip,为何不就写在配置里呢.
所以,第二次尝试修改为固定地址

auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx

虽然也能启动,但是等待时间还是那么长.

配置swap

今天更新的时候,到composer出错了.显示内存耗尽.

- Installing league/plates (3.3.0): Loading from cache
The following exception is caused by a lack of memory or swap, or not having swap configured
Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details

PHP Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/www.dehua.de/20180202-1605/dehua_web/source/composer.phar/vendor/symfony/console/Application.php on line 973

Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/www.dehua.de/20180202-1605/dehua_web/source/composer.phar/vendor/symfony/console/Application.php on line 973

[ErrorException]
proc_open(): fork failed - Cannot allocate memory

还好有帮助链接,连忙设置了swap


xxx:/var/www/www.dehua.de$ free -m
total used free shared buffers cached
Mem: 992 639 352 53 11 282
-/+ buffers/cache: 345 646
Swap: 0 0 0


xxx:/var/www/www.dehua.de$ sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024

1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 14.2447 s, 75.4 MB/s


xxx:/var/www/www.dehua.de$ sudo /sbin/mkswap /var/swap.1
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=31be5492-a29f-4647-9c74-0eb5407c3523


xxx/var/www/www.dehua.de$ sudo /sbin/swapon /var/swap.1
xxx/var/www/www.dehua.de$ free -m
total used free shared buffers cached
Mem: 992 920 71 53 12 565
-/+ buffers/cache: 342 649
Swap: 1023 0 1023

再次运行composer,故障排除.

使用telekom的云空间 magenta cloud

换到telekom mangenta S套餐后,送了25GB 的云空间. 云空间可以是webdav协议进行访问.所以就现在自己的电脑上挂载了,使用Gigolo即可.
然后觉得需要在服务器上也挂上.所以看了这个教程

http://techiech.blogspot.de/2013/04/mounting-webdav-directory-in-linux.html

注意mount前先要创建一个空目录.(参考