`
hupy
  • 浏览: 188816 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CentOS下Nginx+tomcat+MySQL服务器安装

阅读更多

linux接触也挺长时间了,一直也没有去真正的使用。最近想把自己开发的一些小应用部署到linux服务器上,顺便也学习一下linux服务器。然后就配了一台主机(普通pc,感觉现在pc稳定性还可以,而且也不是什么大的项目),然后把服务器放到他们办公室,然后装上CentOS5.2就准备开始使用了。安装过程相对简单,我这里安装还算基本顺利,只有网卡的驱动没有找到,然后自己从网上下载了一个,按上OK。

 

装完系统第一件事情,把服务器的IP地址定住,因为我服务器放在办公室,我需要远程控制。选好IP地址和DNS,然后就让服务器在那里跑着了。

 

回到 我的笔记本上,安装PUTTY远程控制linux的非常小但非常好用的小工具,然后安装WINSCP,使用ssh实现我windows上和linux服务器上文件的互传。呵呵,下一步就可以使用远程控制服务器,开始安装其他服务器了。

 

我这里使用linux主要是想作为一个WEB服务器使用,而且我一般开发都是用java,也就使用CentOS+nginx+tomcat+MySQL架构。使用CentOS的好处,网上到处都有,当然也有其缺点,我对于这个不是很精通,只是作为工具使用。选择nginx而不适用apache是,nginx在处理静态文件的时候速度更快,应对并发的数量更大一些,而且占用资源相对较少,而且nginx只有在linux操作系统上时才能发挥它的优势,不建议Windows上使用nginx,而且nginx还可以做负载均衡,配置也相当方便。tomcat其实一直是想换掉的,但是从一开始学习java开发就是用tomcat,其他的不是很熟,不过有些数据显示tomcat相对于jboss这样的服务器而言,速度会稍显优势,当然这也是由于jboss的功能更强大所造成,由于当时用不到JBOSS的高级功能,暂时定为tomcat,不熟SSH结构的java B/S程序还是跑的挺流畅的了。MySQL的优势更不用多说。

 

首先把nginx、jdk、tomcat、mysql的安装源文件或RPM用winscp上传到linux服务器上。然后分别开始安装这些服务器。

 

1、安装nginx:

 

这个安装应该是最简单的了,直接tar -xzvf Nignx-0.8.31.tar.gz将nginx揭开,然后进入解压后的目录

 

./configure --prefix=/usr/local/nginx

make

make install

 

ok 到这里nginx就安装完成了。启动试试吧,

/usr/local/nginx/sbin/nginx 启动完成。

http://127.0.0.1 试试, welcome Nginx,就安装ok了。

 

 

2、安装jdk

 

这个我下载的是jdk的bin文件,直接运行即可。

./usr/local/jdk1.6.*.bin 运行完成,即可发现在/usr/local目录下多了一个jdk1.6.*的目录,这样jdk就安装完成了,然后设置jdk的环境变量,在linux的远程黑窗口中数据java -version,如果显示正确的版本号,你就成功了。

 

3、安装tomcat

 

这个也是用的.tar.gz安装,跟nginx的安装,差不多

tar -zxvf tomcat-5.0.*

./configure

make

make install

 

4、安装mysql

 

这里用的是rpm格式,一共两个文件,一个server,一个client

 

安装完成,如果输入

mysql,能够正常进去,就说明安装成功了,赶紧为root用户添加用户名吧。

mysql -u root -p 然后输入你的密码就可以了。

 

mysql在linux上安装和在windows上使用,还是有比较大的区别的。

首先cp一个my.cnf文件到/etc下,然后修改编码(UTF-8或者是GB2312……),要不不支持中文哦。

 

到这里在服务器上就可以使用mysql了,但是要是使用远程客户端登录mysql,可能不允许哦,因为linux默认安装到linux是不允许远程登录的,grant select,insert,updata,delete to *.* on *@*** 给你所在的机器升级一下权限吧。

 

 

刚开始使用linux安装这些软件的时候,还是跟windons上的安装有很多区别的。

 

剩下的就是修改配置,开机自动启动,然后优化服务器了,安装的时候还是会走不少的弯路,写的时候比较容易了。

 

 

安装完上面的服务器后,还想再装个subversion的服务器,管理一下自己程序的版本,刚开始以为这个会很简单,没想到折腾了我两天。

 

刚开始使用的系统自带的apache,然后用yum安装的subversion,不知道什么原因,用一个文件冲突,没办法,只好卸掉apache和subversion,这里我还是建议安装subversion服务器的时候自己安装,而且建议是源文件安装。要不安装的时候简单,后面遇到问题可不容易解决。

 

然后又重新下载了httpd和subversion的安装文件,

1、安装apache

tar -xzvf httpd-2.3.*.tar.gz

 

./configure --enable-mods-shared=all \
            --with-mpm=worker \
            --enable-nonportable-atomics=yes \
            --enable-static-support

make

make install

 

安装好后,发现nginx已经占用了80端口,还不允许apache使用了,然后简单的修改apache的配置文件,把端口改成81,这时候还不允许,

semanage port -a -t http_port_t -p tcp 81

 

上面这个是查了好久找到的赋予其81端口的命令。


2、安装subversion服务器

解压完成以后,首先把SQLITE解压(这里还需要sqlite,因为提示我的版本不足),在 subversion新建文件夹sqlite-amalgamation,将其中的一个sqlite3.c文件复制到该文件夹中

./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apache --with-apr-util=/usr/local/apache --with-apxs=/usr/local/apache/bin/apxs

make
make install

这样就安装好了,通过这种方式安装的 subversion会自动向apache是httpd.conf中添加load两个模块的。。。。稍作修改即可使用。。。

 

大功告成,subversion也能够使用了。剩下的就是继续完成我程序,运行,测试了。。。。

3
1
分享到:
评论
2 楼 hupy 2011-06-07  
lian 写道
弱弱的问下,Nginx 怎么和 tomcat 相关联呢?


location ~ ^/shoplist\.shtml {
proxy_set_header Host  $host;
proxy_set_header X-Forwarded-For  $remote_addr;
proxy_pass http://localhost:5080;
expires      1d;
}

只要把动态的内容转到tomcat,nginx会代理请求响应到动态内容然后返回到客户端。。
1 楼 lian 2011-05-18  
弱弱的问下,Nginx 怎么和 tomcat 相关联呢?

相关推荐

Global site tag (gtag.js) - Google Analytics