nginx安装和使用 memcached session 共享

http://www.cnblogs.com/skynet/p/4146083.html

http://www.nginx.cn/install

注意使用pcre 不要使用pcre2

http://www.cnblogs.com/jianxie/p/3990377.html
nginx启动、重启、关闭

启动
cd usr/local/nginx/sbin
./nginx

重启nginx  
cd /usr/local/nginx/sbin
./nginx -s reload

判断配置文件是否正确 
cd  /usr/local/nginx/sbin
./nginx -t

http://blog.csdn.net/shootyou/article/details/6093562


tomcat默认项目
<Context path="" docBase="/usr/local/tomcat/webapps/test/" debug="0" reloadable="true" />


http://my.oschina.net/cherryTear/blog/221099


http://libevent.org/

可以参考的网址:http://www.cnblogs.com/yangxia-test/p/4159825.html

mamcached 需要用到的jar包下载地址:

http://download.csdn.net/download/u010029507/7444009


设置 memcached 为自启动


开启memcached 再启动tomcat


# ./memcached -d -m 900 -u root -l 192.168.3.155 -p 11211 -c 256 -P /tmp/memcached.pid //启动memcached 启动参数说明:


   启动参数说明:
   -d   选项是启动一个守护进程,
   -m  是分配给Memcache使用的内存数量,单位是MB,默认64MB
   -M  return error on memory exhausted (rather than removing items)
   -u  是运行Memcache的用户,如果当前为root 的话,需要使用此参数指定用户。
   -l   是监听的服务器IP地址,默认为所有网卡。
   -p  是设置Memcache的TCP监听的端口,最好是1024以上的端口
   -c  选项是最大运行的并发连接数,默认是1024
   -P  是设置保存Memcache的pid文件
   -f   <factor>   chunk size growth factor (default: 1.25)

   -I   Override the size of each slab page. Adjusts max item size(1.4.2版本新增)


两个 tomcat context.xml  

<context > 节点中 都 添加

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" 

        memcachedNodes="n1:192.168.1.x:11211" 
        sticky="false" 
        lockingMode="auto" 
requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"    
        sessionBackupAsync="false"   
        sessionBackupTimeout="1000"  
        transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" 
        />



测试的 session页面

<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>  
<html>  
<body>  
  
SessionID:<%=session.getId()%>  
<BR>  
SessionIP:<%=request.getServerName()%>  
<BR>  
SessionPort:<%=request.getServerPort()%>  
<%  
out.println("i am 2");  
%>  
  
<%=(String)session.getAttribute("user")%>  
</body>  
</html>  


碰到的问题是 rsa 加密  两个tomcat生成的不一样,我就改为用session存放一下,(利用了memcached 的session共享),如果session中有,就直接拿过来使用。


可以参考文章:

http://blog.csdn.net/shirdrn/article/details/9731215




Centos下安装nginx rpm包

1 在nginx官方网站下载一个rpm包,下载地址是:http://nginx.org/en/download.html

wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

2 安装这个rpm包

rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm

安装过程中会出现错误提示:

warning: nginx-release-centos-6-0.el6.ngx.noarch.rpm: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62: NOKEY

忽略即可

3 开始正式安装nginx

yum install nginx

会显示一大堆信息:Is this ok [y/N]:

输入y,屏幕滚了一会之后就安装完毕,最后提示“Complete!”就是安完了。

4 nginx的几个默认目录

输入命令: whereis nginx

nginx: /usr/sbin/nginx /etc/nginx /usr/share/nginx

1) 配置所在目录:/etc/nginx/

2) PID目录:/var/run/nginx.pid

3) 错误日志:/var/log/nginx/error.log

4) 访问日志:/var/log/nginx/access.log

5) 默认站点目录:/usr/share/nginx/html

5 常用命令

1) 启动nginx:nginx

2) 重启nginx:killall -HUP nginx

3) 测试nginx配置:nginx -t

6 Nginx无法站外访问?

刚安装好nginx一个常见的问题是无法站外访问,本机wget、telnet都正常。而服务器之外,不管是局域网的其它主机还是互联网的主机都无法访问站点。如果

用telnet的话,提示:

正在连接到192.168.0.xxx...不能打开到主机的连接, 在端口 80: 连接失败

如果用wget命令的话,提示:

Connecting to 192.168.0.100:80... failed: No route to host.

如果是以上的故障现象,很可能是被CentOS的防火墙把80端口拦住了,尝试执行以下命令,打开80端口:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

然后用:

/etc/init.d/iptables status

查看当前的防火墙规则,如果发现有这样一条:

ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80

就说明防火墙规则已经添加成功了,再在站外访问就正常了。


一般Linux下nginx通过源码安装步骤参考


一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。

1.选定源码目录

可以是任何目录,本文选定的是/usr/local/src

cd /usr/local/src

2.安装PCRE库

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新的 PCRE 源码包,使用下面命令下载编译和安装 PCRE 包:

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.21.tar.gz

tar -zxvf pcre-8.21.tar.gz

cd pcre-8.21

./configure

make

make install

3.安装zlib库

http://zlib.net/zlib-1.2.8.tar.gz 下载最新的 zlib 源码包,使用下面命令下载编译和安装 zlib包:

cd /usr/local/src

wget http://zlib.net/zlib-1.2.8.tar.gz

tar -zxvf zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure

make

make install

4.安装ssl(某些vps默认没装ssl)

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz

tar -zxvf openssl-1.0.1c.tar.gz

5.安装nginx

Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤:

cd /usr/local/src

wget http://nginx.org/download/nginx-1.4.2.tar.gz

tar -zxvf nginx-1.4.2.tar.gz

cd nginx-1.4.2


./configure --sbin-path=/usr/local/nginx/nginx \

--conf-path=/usr/local/nginx/nginx.conf \

--pid-path=/usr/local/nginx/nginx.pid \

--with-http_ssl_module \

--with-pcre=/usr/local/src/pcre-8.21 \

--with-zlib=/usr/local/src/zlib-1.2.8 \

--with-openssl=/usr/local/src/openssl-1.0.1c


make

make install

--with-pcre=/usr/src/pcre-8.21 指的是pcre-8.21 的源码路径。

--with-zlib=/usr/src/zlib-1.2.7 指的是zlib-1.2.7 的源码路径。


安装成功后 /usr/local/nginx 目录下如下:


fastcgi.conf            koi-win             nginx.conf.default

fastcgi.conf.default    logs                scgi_params

fastcgi_params          mime.types          scgi_params.default

fastcgi_params.default  mime.types.default  uwsgi_params

html                    nginx               uwsgi_params.default

koi-utf                 nginx.conf          win-utf

6.启动

确保系统的 80 端口没被其他程序占用,运行/usr/local/nginx/nginx 命令来启动 Nginx,

netstat -ano|grep 80

如果查不到结果后执行,有结果则忽略此步骤(ubuntu下必须用sudo启动,不然只能在前台运行)

sudo /usr/local/nginx/nginx

打开浏览器访问此机器的 IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值