注:碰到同样的问题,这样是解决了

在项目中用模拟器中进行音频录音方面的调试,碰到一个莫名的问题,就是在ios6的模拟器中运行没问题,但是在ios7的模拟下出以下错误提示:

xCode5 在ios7模拟器中出现__cxa_throw _pthread_exit错误

看了半天,没发现程序代码有什么错误,但在在移除所有断点后,程序在ios7模拟器下运行正常了。原来是在调试时加了“All Exceptions” Breakpoint, 移除后一切正常,猜想是不是ios7模拟器下catch到了异常导致了程序的异常中断。

http://www.xuebuyuan.com/1741105.html
引用
系统的用<>,自己的用“"

""表示从当前项目路径开始寻找文件,如果找不到,则到系统(项目)中配置的头文件路径去找;
<>表示直接到系统(项目)中配置的头文件路径去找。


http://www.cocoachina.com/bbs/read.php?tid=72400
拍照有旋转角度,会导致直接存储变成90度
下面的是简单的解决方式,不太齐全,但可以参考图片处理功能
完整的做法参考这个比较好:
http://stackoverflow.com/q...

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info  
{  
    NSString *type = [info objectForKey:UIImagePickerControllerMediaType];  
    if ([type isEqualToString:@"public.image"]) {  
        UIImage* image=[info objectForKey:UIImagePickerControllerOriginalImage];  
        UIImageOrientation imageOrientation=image.imageOrientation;  
        if(imageOrientation!=UIImageOrientationUp)  
        {  
            // 原始图片可以根据照相时的角度来显示,但UIImage无法判定,于是出现获取的图片会向左转90度的现象。  
            // 以下为调整图片角度的部分  
            UIGraphicsBeginImageContext(image.size);  
            [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];  
            image = UIGraphicsGetImageFromCurrentImageContext();  
            UIGraphicsEndImageContext();  
            // 调整图片角度完毕  
        }  
        [picker dismissViewControllerAnimated:YES completion:nil];  
    }  
}  
苹果有介绍:

引用
-webkit-touch-callout
Disables the default callout shown when you touch and hold a touch target.

Syntax
-webkit-touch-callout: behavior;


可以在css里设定:

body{margin:0;padding:0;-webkit-touch-callout:none;}


或者在object-c里设置,在网页加载完成webViewDidFinishLoad时:

[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none';"];


前者适合自己控制的网页,不用改app,后者就适合所有的网页了。

https://developer.apple.co...
防范DDOS攻击脚本

#防止SYN攻击 轻量级预防
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -I syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j RETURN
iptables -A syn-flood -j REJECT
#防止DOS太多连接进来,可以允许外网网卡每个IP最多15个初始连接,超过的丢弃
iptables -A INPUT -i eth0 -p tcp --syn -m connlimit --connlimit-above 15 -j DROP
iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

#用Iptables抵御DDOS (参数与上相同)
iptables -A INPUT  -p tcp --syn -m limit --limit 12/s --limit-burst 24 -j ACCEPT
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT


##########################################################

防范CC攻击

当apache站点受到严重的cc攻击,我们可以用iptables来防止web服务器被CC攻击,实现自动屏蔽IP的功能。
1.系统要求
(1)LINUX 内核版本:2.6.9-42ELsmp或2.6.9-55ELsmp(其它内核版本需要重新编译内核,比较麻烦,但是也是可以实现的)。
(2)iptables版本:1.3.7
2. 安装
安装iptables1.3.7和系统内核版本对应的内核模块kernel-smp-modules-connlimit
3. 配置相应的iptables规则

示例如下:
(1)控制单个IP的最大并发连接数
iptables -I INPUT -p tcp --dport 80 -m connlimit  --connlimit-above 50 -j REJECT #允许单个IP的最大连接数为 30
#默认iptables模块不包含connlimit,需要自己单独编译加载,请参考该地址
http://sookk8.blog.51cto.com/455855/280372不编译内核加载connlimit模块

(2)控制单个IP在一定的时间(比如60秒)内允许新建立的连接数
iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --update --seconds 60 --hitcount 30 -j REJECT iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --set -j ACCEPT
#单个IP在60秒内只允许最多新建30个连接

4. 验证
(1)工具:flood_connect.c(用来模拟攻击)
(2)查看效果:
使用
watch 'netstat -an | grep:21 | grep<模拟攻击客户机的IP>| wc -l'

实时查看模拟攻击客户机建立起来的连接数,
使用
watch 'iptables -L -n -v | \grep<模拟攻击客户机的IP>'

查看模拟攻击客户机被 DROP 的数据包数。
5.注意
为了增强iptables防止CC攻击的能力,最好调整一下ipt_recent的参数如下:
#cat/etc/modprobe.conf options ipt_recent ip_list_tot=1000 ip_pkt_list_tot=60
#记录1000个IP地址,每个地址记录60个数据包 #modprobe ipt_recent

参考自: http://sookk8.blog.51cto.com/455855/321242/
分页: 5/134 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]

阅读推荐

服务器相关推荐

开发相关推荐

应用软件推荐