分类目录归档:B/S架构

Web技术文章,起源自大学的积累!

Nginx的反向代理负载均衡

       最近工作未正式进入开发,相对来说比较清闲,突然想起了Nginx,然而它大多时候都是和PHP一块出现的,相对于我们这些做Java常用的Tomcat用到的比较少。前段时间看了部分负载均衡的技术文摘,想到了用Nginx做反向代理,将Tomcat集群归并起来有Niginx做代理进行访问的控制和转发的负载处理。

  网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时候来自Web前端的压力,也能让人十分头痛。怎样将同一个域名的访问分散到两台或更多的机器上呢?这其实就是另一种负载均衡了,Nginx自身就可以做到,只需要做个简单的配置就行。 继续阅读

Hibernate二级缓存设置

1、首先设置EhCache,建立配置文件ehcache.xml,默认的位置在class-path,可以放到你的src目录下:


继续阅读

最新S2SH框架基于Annotation的整合开发(原作)

因为自己学习的时候,资料过旧,困难重重。所以再足以单独开发后,写出来让后来人学习能够轻松点。
S2SH(Struts2+Spring+Hibernate)框架是当今最流行的Java企业级开发框架搭配方案之一。S2SH是SSH的升级版本,2代指的是Struts2,而SSH中用的是Struts1。众所周知,Struts1已经在逐渐退出舞台。而Struts2也就是Webwork的衍化版本,正在如火如荼的盛行着。
其实网上这方面资料也不算少,但是都知道现在技术发展的太快,旧的资料已经很难解决我们的当前问题,要问我写的这些有多新?我学习S2SH框架是在2011年8月分暑假期间,这篇文章写于2011年8月15日星期一。
我所采用的是当前位置,各大官网发布的最新框架。Struts2.2.3,Spring2.5.6和Hibernate3.6.6Final。
首先我们需要准备什么?
MyEclipse for Spring 8.6或者更新
Struts2.2.3包或者更新
Spring2.5.6包或者更新
Hibernate3.6.6包或者更新
继续阅读

Nginx二级域名(泛域名)绑定问题

由于搭建的各个网站都在一台服务器上(运行环境PHP+Mysql+Nginx),所以在只能采取多域名绑定来实现比较好的区别站点。
举个例子我的站点根目录为: /usr/www 下面搭建着主网站,绑定的域名是:http://chzker.com。然后在 /usr/www/nav 下面安装的是导航站点。常规的访问方式是:http://chzker.com/nav ,然而这种地址看着让人恶心,远不如用二级域名 http://nav.chzker.com 来访问要漂亮。那怎么来实现呢?
首先我们把http://nav.chzker.com”>http://chzker.com,http://nav.chzker.com 都解析到相同的IP地址也就是 我的服务器地址,然后再Nginx.conf开启另外一个Server,代码如下:

server {

listen       80;

server_name  blog.chzker.com chzker.com;

root /var/www/html;

index index.html index.php;

if (!-e $request_filename)

{
rewrite ^/post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ /read.php?entryid=$1&page=$2&part=$3 last;

继续阅读

完美安装最新 CentOS + Nginx + PHP-FPM + MySQL

本文为 21andy.com 原创
PHP 5.3.1
MySQL 5.0.89
Nginx 0.8.33 或 0.7.65 (可选)
现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安装了
这个可比网上流传的什么一键安装包要好得多,强烈推荐此法安装,适合所有菜鸟和高手
我服务器上全用的源代码编译安装,也好不到哪去,还很费劲
我这个装完已经包含 php 的一些常用扩展, PDO,eaccelerator,memcache,tidy等等
先新建一个 repo

# vi /etc/yum.repos.d/centos.21andy.com.repo

放入如下内容

name=21Andy.com Packages for Enterprise Linux 5 – $basearch
baseurl=http://www.21andy.com/centos/5/$basearch/
enabled=1
gpgcheck=0
protect=1

继续阅读

过滤器Filter解决乱码问题

这两天有朋友给我发了两个毕设让我给他改改”乱码问题”,对于这个问题还是比较常见的.我们平时正常的思路都是:

检查一下网页,源文件,数据库三方的编码格式是否相同?

传输数据时编码格式是否相同?

然后从Form表单就开始检查,到达数据接受的第一个地方开始下断点也就是输出一下看看是否为乱码(System.out.println(“========here”+userName);)之类的…查看一下是在哪一步出现的问题.然而这两天遇到的问题特别怪异,也让我费了很大劲…

项目是基于Struts1开发的,唉也不说啥了,不是咱写的人家用这种老框架你能咋办?你说他闲的蛋疼??有Struts2不用干吗用淘汰的东西?PS:人家愿意你管得着吗?

闲话少说,通过各种检查发现提交的时候都开始是乱码,这很让人纠结…最后没办法从过滤器(Filter)入手了…这也是恩师陈鹏给出的解决方案…

新建类EncodingFilter继承自Servlet的Filter类,然后实现它的doFilter方法,代码如下:

package biyesheji.struts;

import java.io.IOException;

import javax.servlet.Filter;

importjavax.servlet.FilterChain;

import javax.servlet.FilterConfig;
继续阅读

自主建站教程

1.  自己建立一个网站要包含:
A.  网站空间:(淘宝有售)管理方式一般为:FTP  管理软件推荐: FlashFXP
B.  域名:(一级域名)www.XXXX.com  www.XXXX.net  www.XXXX.org  之类,详情可以去中国万网查看:www.net.cn (当然有的空间提供了二级域名,你可以买一级域名,也可以不买)
C.  网站系统:这是网站的核心。 一个站长可以不会写代码编程序去自己写一个网站,网上提供了很多网站系统,直接可以拿来用的。我拿“DEDECMS系统”来举例。
2.  安装步骤:
A.  首先申请购买空间和域名。
(1)  购买域名:你会获得域名管理的账号和密码,登陆相应的管理系统进行域名DNS解析设置,就是把你空间的IP地址填写到域名的解析下。一般1-2个小时才能生效。解析完毕就可以用你购买的 www.XXXX.xxx 来访问你的空间也就是你的网站了。
(2)  购买空间:你会获得相应的 空间IP地址 FTP管理方式(IP地址,FTP用户名,FTP密码),数据库访问地址,数据库名,账户,密码(这些会在安装过程中用到)
B.  运行FTP管理软件,新建站点。填入IP地址,用户名,密码即可。连接后,会登陆到网站空间,然后上传自己下载好的网站系统。
C.  在浏览器输入自己的域名(前提是你已经做好DNS解析),未购买域名可以直接输入IP地址进行访问空间,你会发现响应的安装提示。
D.  根据网站安装提示填入相应信息。安装很简单的就完成了。

只 要你的空间购买成功,填入相应信息应该没有问题。然后点下一步,就开始安装了,安装完成后,系统会提示你 配置网站的后台地址,输入后台地址,账户密码就可以进入后台管理了•••还有我想说,我录制的视频没法传到空间上来,所以有需要的,发邮件找我索 取,admin@uugu.org。

关于Nginx与Tomcat的联姻

Nginx和tomcat的融合,其实就是对jsp解析的转发,当用户请求解析jsp文件时,Nginx把相应的jsp文件转发给8080端口解析,这样就实现了在80端口对jsp文件进行解析,其实还是tomcat在工作,仅仅是Nginx做了个转发功能.核心Nginx.conf代码如下,在里面添加这段代码就可以了

server{
listen 80;
server_name localhost;
index index.html index.htm index.jsp;#设定访问的默认首页地址
root /home/www/web/ROOT;#设定网站的资源存放路径
#limit_conn crawler 20;
下面是需要添加的代码

location ~ .*.jsp$ #所有jsp的页面均交由tomcat处理
{
index index.jsp;
proxy_pass http://localhost:8080;#转向tomcat处理
}

验证配置文件是否正确:
# /usr/local/nginx/sbin/nginx –t
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully
出现这个提示说明没有问题。

继续阅读

针对Bo-blog的Nginx Rewrite实现

今天决定做一下URL优化,直接使用URL Rewrite…后来发现Bo-Blog官网只提供了Apache的Rewrite规则,但有些朋友的空间或VPS使用的是Nginx,就如我的网站 就是使用Nginx而非Apache,那我想使用Bo-Blog的高级高级URL Rewrite,就必须使用Nginx的Rewrite规则,但这规则实在是只了解皮毛,不过好象现在这个社会有网络这东西,在牛人张宴博客上那找到了, 特在此记录以做备份之用。
这个规则我的博客正在使用,目前没发现任何问题,下见代码是写在Nginx.conf里面的:

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
worker_connections  1024;
}

继续阅读