nginx编译时make出错的解决办法,有遇到相同问题的朋友可以参考下。
一台测试机安装nginx编译安装时make出错。
详细信息如下:
./configure参数
./configure --prefix=/usr/local/nginx --user=www --group=www
make错误
objs/ngx_modules.o \
-lpthread -lcrypt -lpcre -lcrypto -lcrypto -lz
objs/src/core/ngx_regex.o(.text+0x35d): In function `ngx_pcre_free_studies':
src/core/ngx_regex.c:307: undefined reference to `pcre_free_study'
collect2: ld returned 1 exit status
make[1]: *** [objs/nginx] 错误 1
make[1]: Leaving directory `/root/nginx-1.3.5'
make: *** [build] 错误 2
经网上查资料说要加--with-pcre=/root/pcre-8.31
/root/pcre-8.31是解压pcre后的目录
./configure --prefix=/usr/local/nginx --user=www --group=www --with-pcre=/root/pcre-8.31
-lpthread -lcrypt /root/pcre-8.31/.libs/libpcre.a -lcrypto -lcrypto -lz
make[1]: Leaving directory `/root/nginx-1.3.5'
make -f objs/Makefile manpage
make[1]: Entering directory `/root/nginx-1.3.5'
sed -e "s|%%PREFIX%%|/usr/local/nginx|" \
-e "s|%%PID_PATH%%|/usr/local/nginx/logs/nginx.pid|" \
-e "s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf|" \
-e "s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log|" \
< man/nginx.8 > objs/nginx.8
make[1]: Leaving directory `/root/nginx-1.3.5'
ok,没有问题了,成功编译。
什么是 SSI (Server Side Includes) ?
用过Apache的都应该知道吧,它可以使静态网页实现像动态网页一样 include 的功能,还有一些简单的语法。
SSI (Server Side Includes) 的详细介绍请参考这篇文章:http://en.wikipedia.org/wiki/Server_Side_Includes
Nginx 居然默认就自带了 SSI。
在 Nginx 开启 SSI ,加入以下3行就OK了,可以放在 http, server, 和 location 段都行。
ssi on;
ssi_silent_errors on;
ssi_types text/shtml;
使用方法举例:
Nginx + SSI
<!--# include file="/tmp/test.html" -->
注意路径的问题,不是硬盘的绝对路径,而是站点的绝对路径。
不过我看到官方的文档里说,SSI有个毛病,就是 Last-Modified 和 Content-Length 不会发送。
that when SSI is enabled the Last-Modified and Content-Length headers are not sent。
您可能感兴趣的文章:
nginx、apache开启ssi(在HTML文档中增加动态内容)IIS7输出缓存对SSI的影响应该如何处理
配置Apache支持cgi、SSI、shtml
nginx中使用ssi包含文件的方法
设置 nginx 流量限制,供大家学习参考。
昨天刚把论坛迁移到我新准备的服务器上,新的服务器我的的是nginx+mysql+php+memache+squid, 按理说应该不错了。
当今天上班的时候,刚到公司老总就说网站很慢,我就奇怪了怎么会呢?
我查看了流量,很大。但是正常的,访问已经升到几千了。
我想会不会机房的交换机有问题了。之前出现过网站访问很慢,热插拔网卡就ok了。
同样我也做了 效果不佳。主站流量很小。大部分都在论坛上。
我感觉可能论坛人数一多把带宽占满了。
1、首先我限制并发数了
iptables -A INPUT -p tcp --dport 80 -m limit --limit 6/s -j ACCEPT
将每个用户限制在每秒6个请求
但效果不明显。
2、然后我开始设置nginx的流量请求
修改配置文件
limit_zone one $binary_remote_addr 10m;
limit_conn one 5;
# limit_req_zone $binary_remote_addr zone=one2:10m rate=5r/s;
# limit_req zone=one2 burst=5;
.................
.................
}
在server {
....
.....
location / {
#limit zone
limit_conn one 10;
limit_rate 10k;
}
}
#这个代码是限制速率和并发连接数
:limit_zone(limit_conn) 来限制并发数,limit_rate来限制下载的速率
当然,这些都可以在好一点的交换机上去分配带宽,如果您手上的有相关的设备那是再好不过了。