Nginx优化编译,去掉Debug编译/版本欺骗
Nginx定制编译,去掉Debug编译/版本欺骗。
Nginx通过手工修改源码或制作补丁的方式,可以优化编译结果,提高运行效率,或达到欺骗黑客攻击者的目的,以下简单讲下修改编译安装方法:
源码修改定制-版本信息欺骗
修改 src/core/nginx.h文件,进行版本欺骗,例如
[php]#define NGINX_VERSION "1.0.14"
#define NGINX_VER "Nginx/" NGINX_VERSION[/php]
改为
[php]#define NGINX_VERSION &... Apache, Linux, Nginx, Nginx Debug, Nginx优化编译, Nginx源码, Nginx编译优化, Nginx补丁, 去掉Debug选项阅读全文
MySQL编译参数优化
Linux下对Nginx编译安装的时候,如果去掉debug选项,生成的目标文件将会小很多,运行效率将会高很多。MySQL像Nginx及很多Linux软件一样,有这样的选项可以去掉或者优化,可以使编译的目标文件很小,提高运行效率和减少资源占用。以下对这些选项做个介绍,不足之处请大家多多补充,共同完善:
static参数,静态链接
参数使用方法:
[php]--with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static[/php]
静态链接提... MySQL优化, MySQL编译优化, Unix Socket, Unix套接字, 编译优化阅读全文
手机版网页设计注意事项
用手机上网时,有些网站会无法正常显示,因为这些网页是设计在电脑上看的,如果网页开发者没有考虑到手机的软硬件特性以及人们的阅读习惯,就无法设计出手机上方便阅读的网页。说的简单,但是要把既有网页砍掉重练、再移植到手机上是一项大工程,笔者归纳四个方面给网页开发人员参考。
手机版网页设计注意事项-给电脑看的网页在手机上的表现
▲供手机浏览的网页可不只是把版面缩小就好那么简单,浏览器版本跟CSS语法也有大不同。... actual viewport, media queries, visual viewport, 手机版网页, 手机网页, 移动互联网, 网页设计阅读全文
Nginx访问域名或目录无斜杠的解决方法续
在Nginx访问域名或目录链接后无/(反斜杠)无法访问的解决方法中说到,因为域名或目录后无斜杠,导致用户无法打开网页的故障,当时的解决方法是在nginx.conf里修改,让nginx后缀中的"/"斜杠自动补齐:
[php]if (-d $request_filename)
{
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}[/php]
现在要介绍个更好的方法,在nginx.conf直接设置:
[php]optimize_server_names off;#优化服务器名称:关 (默认开启)
server_n... Nginx, nginx.conf, optimize_server_names, server_name_in_redirect, 反斜杠, 斜杠, 自动补齐阅读全文
statusnet的Nginx修正
最近需要用statusnet做点东西,但是发现statusnet的默认参数传递方式在Nginx下无法正常运行,只能正常工作于Apache下,主要的问题在形如 index.php/main/login 这样的url解析上,Nginx中默认对此url解析为 index.php/main/login 目录或文件,会报404错误,我们希望的结果是解析为:index.php?p=main/login,搜索+摸索之后,总结如下两个方法,推荐方法2。
方法一:按照网传方法修改Nginx的Rewrite规则,然后修正lib/router.php文... Apache, index.php/main/login, Nginx, Nginx Rewrite, statusnet阅读全文
Nginx的Rewrite规则
Nginx的rewrite格式是:
[php]rewrite regex replacement flag[/php]
其中flag标记有四种格式,可以放在server, location 和 if 模块中:
[php]last – 相当于Apache中的L
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302,相当于Apache中的R
permanent – 返回永久重定向的HTTP状态301,相当于Apache中的R=301[/php]
匹配判断
[php]~ 为区分大小写匹配; !~为区分大小写不匹配
~* 为不区分大小写匹配... Apache, Nginx, Nginx的Rewrite, regex, rewrite, ReWrite规则阅读全文
Apache RewriteCond ReWrite规则
Apache通过RewriteCond设置ReWrite规则,可以在httpd.conf配置文件中直接设置rewrite规则,也可以根据需要在网站的.htaccess文件中设置rewrite规则。
RewriteCond 重写规则执行条件
语法:
[php]RewriteCond TestString CondPattern[/php]
生效域:
[php]server config(服务器全局), virtual host(虚拟主机), directory(目录), .htaccess[/php]
上面的 TestString, 可提供反向引用. 引用模式为: %N 其中N为(0 < = N Apache, rewrite, RewriteCond, RewriteRule, ReWrite规则阅读全文
Linux补丁制作方法
Linux补丁制作方法,简单明了:
[php]diff -rNu ngx_output_chain.c ngx_output_chain_dx.c >ngx_output_chain.patch[/php]
看一段例子,具体做什么的,你懂的:)
[php]--- ngx_output_chain.c 2010-10-12 07:06:52.000000000 -0500
+++ ngx_output_chain_dx.c 2011-11-11 01:48:06.335975441 -0600
@@ -565,10 +565,31 @@
}
if (n != size) {
- ngx_log_error(NGX_LOG_ALERT, ctx->pool->... Linux, patch, 补丁阅读全文
undefined reference to `libiconv_open' @PHP 5.3.8@解决方法
PHP 5.3.8编译时出现如下错误
[php]ext/gd/libgd/.libs/gdkanji.o: In function `do_convert':
/var/soft/php-5.3.8/ext/gd/libgd/gdkanji.c:350: undefined reference to `libiconv_open'
/var/soft/php-5.3.8/ext/gd/libgd/gdkanji.c:365: undefined reference to `libiconv'
/var/soft/php-5.3.8/ext/gd/libgd/gdkanji.c:381: undefined reference to `libiconv_close'
ext/iconv/.libs/iconv.o: In function `_php_iconv_st... libiconv, PHP, PHP 5.3.8, PHP编译, 解决方法阅读全文
Undefined symbols for architecture x86_64: _res_9_init
在MAC(OSX)下编译PHP 5.3.8(打开MySQL支持,--with-mysql,--with-mysqli)时会遇到如下错误:
[php]Undefined symbols for architecture x86_64:Undefined
"symbols for architecture_res_9_init "x86_64,:
referenced from: "_res_9_init"
, referenced from:
_zif_dns_get_mx in dns.o
_zif_dns_get_mx _zif_dns_get_record in indns.o
dns.o
_zif_dns_check_record_zif... MAC, MySQL, OSX, PHP阅读全文
MAC编译安装MYSQL 5.5
cmake
下载cmake, 官网下载地址:
[php]http://www.cmake.org/cmake/resources/software.html[/php]
目前最新版本2.8.6,直接下载mac版本即可,我下载的是: http://www.cmake.org/files/v2.8/cmake-2.8.6-Darwin64-universal.dmg
mysql用户
因为mac内置mysql, 用户也已经默认添加,所以无需添加mysql用户。
下载mysql 5.5源码
官网下载地址: http://dev.mysql.com/downloads/mysql/, 选择 Generic Linux (Architecture Indepe... Bug, cmake, MAC, MySQL, MySQL5.5, OSX阅读全文
only weak aliases are surported in this configuration(MAC/DARWIN)
only weak aliases are surported in this configuration
在Mac下编译Gtk2,编译到gdkaliasdef.c和gtkaliasdef.c时会出现以下错误导致编译停止:
[php]only weak aliases are surported in this configuration[/php]
解决方法
采用正则替换,正则表达式如下(geany):
[php]//搜索
__attribute\(\(alias(.*), visibility\("(.*)"\)
//替换为
__attribute((weak,alias\1[/php]
configuration, DARWIN, MAC, weak aliases阅读全文
OWASP 2011亚洲峰会高端培训
亚洲峰会高端培训
编号
培训内容
培训时间
培训讲师
培训一
如何使用OWASP项目和工具提升企业安全
11月10日8:00-12:00
Tobias Gondrom
培训二
网银系统安全框架设计
11月10日14:00-18:00
张炜
培训三
OWASP Top 10 及防治
11月11日8:00-12:00
王文君
培训四
安全开发之道-从源头解决和预防安全漏洞
11月11日14:00-18:00
李建蒙
详细介绍请查看... OWASP, OWASP 2011, OWASP亚洲峰会, OWASP培训阅读全文