0.前言
如果只是打算在一个VPS上,运行多个Java web应用,那么请参考博文:Centos6.4 vps配置。
如果打算在一个VPS上运行多个Java web应用和一个php web应用(如:wordpess)请继续阅读本博文。
默认系统是很干净的,除了安装了sshd方便远程登录,其他程序都没有安装;我打算在VPS上跑一Java blog应用(域名:www.wenshan.me) ,一个数据采集显示Java web应用(域名:http://data.wenshan.me ),和php web 应用(域名: http://tv.wenshan.me)。
1.安装php web应用
因为本php web应用是wordpress,所有要安装php,mysql,apache http server。运行以下命令来安装:
yum -y install httpd php mysql-server php-mysql
1.1 配置mysql
运行mysql
service mysqld start
按照mysql提示来设置密码和安全选项。
1.1.1 配置开机启动
a.确保/etc/init.d/mysqld 存在,用service mysqld start能够正常启动
b.运行命令:chkconfig --add mysqld
c.运行命令: chkconfig mysqld on
1.2 配置apache http server
运行http
service httpd start
1.2.1 配置开机启动
a.确保/etc/init.d/httpd 存在,用service httpd start能够正常启动
b.运行命令:chkconfig --add httpd
c.运行命令: chkconfig httpd on
1.3 配置php应用
我要安装的是php web应用是wordpress,所有先下载最新的wordpress,解压wordpress到 /var/www/html (apache http server默认安装目录),解压后目录如下:
[root@wenshan html]# ls -l |
。
1.3.1 绑定域名tv.wenshan.me
打开http server的配置文件/etc/httpd/conf/httpd.conf,在"Directory '/var/www/html'"下面改动一行:
AllowOverride All
原来的 AllowOverride为None的话,apache就不会开启rewrite模块。在/etc/httpd/conf/httpd.conf末尾添加:
NameVirtualHost ip:80<VirtualHost ip:80>
ServerAdmin alvalan01@live.cn
DocumentRoot "/var/www/html"
ServerName tv.wenshan.me
DirectoryIndex index.php
</VirtualHost>
到这里wordpress配置好了,你可以访问域名tv.wenshan.me来配置wordpress。
2.安装Java Web应用
2.1 安装Oracle Java JDK
从Oracle下载Java JDK 7版本 jdk-7u40-linux-i586.rpm,执行如下命令来安装Oracle Java JDK。
rpm -ivh jdk-7u40-linux-i586.rpm
2.2 安装Tomcat Server
从tomcat官网http://tomcat.apache.org/download-70.cgi 下载tomcat Server 7.0,解压到对应的目录就可以了,我是解压到/root,打开浏览器访问http://ipaddress:8080,验证tomcat server安装好了。
2.2.1 配置开机自动启动tomcat
1)修改/etc/rc.d/rc.local
vim /etc/rc.d/rc.local
2)添加下面两行脚本,记住是两行,仅仅第二行不行,必须加第一行。
在/etc/rc.d/rc.local文件最后加上
export JAVA_HOME=/usr/java/jdk1.7.0_40 /root/apache-tomcat-7.0.42/bin/startup.sh start
3)注意,修改rc.local文件为可执行,如: chmod +x rc.local
说明:/usr/java/jdk1.7.0_40 是jdk安装目录
/root/apache-tomcat-7.0.42是tomcat安装的目录
2.3 添加域名到localhost
因为打算配置Apache http server采用代理的方式来集成tomcat Java web应用,并且不想tomcat web 服务端口8080暴露给internet,所以我们要绑定tomcat web应用域名到127.0.0.1上。打开/etc/hosts, 如下添加data-wenshan-me和www-wenshan-me到/etc/hosts:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 data-wenshan-me www-wenshan-me
关于Apache HTTP Server 与 Tomcat 的连接方式介绍请参考 http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/ 。
2.4 安装Java Web应用
备份$TOMCAT_HOME/webapps到$HOME, 删除下面的所有Java Web应用。拷贝Java Web应用(博客程序和数据采集应用)到$TOMCAT_HOME/webapps下。
2.5 配置Tomcat
用vim打开$TOM_HOME/conf/server.xml 文件,找到<HOST> …</HOST>, 修改为如下:
<Host name="www-wenshan-me" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="javablog" /><!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="www_access_log." suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /> </Host> <Host name="data-wenshan-me" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="javadata" /> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="data_access_log." suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /> </Host></pre>
2.6 转发http 80请求到tomcat
打开http server的配置文件/etc/httpd/conf/httpd.conf,添加如下内容到文件末尾:
NameVirtualHost 23.226.79.4:80<VirtualHost 23.226.79.4:80>
ServerAdmin alvalan01@live.cn
DocumentRoot "/var/www/html"
ServerName tv.wenshan.me
DirectoryIndex index.php
</VirtualHost><VirtualHost 23.226.79.4:80>
ServerAdmin alvalan01@live.cn
DocumentRoot "/root/apache-tomcat-7.0.42/webapps/javablog"
ServerName www.wenshan.me
ServerAlias wenshan.me
ProxyPass / http://www-wenshan-me:8080/
ProxyPassReverse / http://www-wenshan-me:8080/
</VirtualHost><VirtualHost 23.226.79.4:80>
ServerAdmin alvalan01@live.cn
DocumentRoot "/root/apache-tomcat-7.0.42/webapps/javadata"
ServerName data.wenshan.me
ProxyPass / http://data-wenshan-me:8080/
ProxyPassReverse / http://data-wenshan-me:8080/
</VirtualHost>
3. 配置防火墙
有很多端口比如:mysql 3306, tomcat 8009 8005,是不希望互联网访问的,所以我们要centos的防火墙iptables来阻止访问。运行一下命令来阻止访问:
iptables -I INPUT -i eth0 -p tcp --dport 3306 -j DROPiptables -I INPUT -i eth0 -p tcp --dport 8009 -j DROP
iptables -I INPUT -i eth0 -p tcp --dport 8005 -j DROP
iptables -I INPUT -i eth0 -p tcp --dport 8080 -j DROP
/etc/init.d/iptables save
/etc/init.d/iptables restart
注意要指定 -I eth0,否则回环也会阻止,mysql tomcat就会不能正常运行。
4. 重启机器
你的web应用已经配置好了,重启机器reboot.
5. 修改SSH端口号
1.添加端口
vim /etc/ssh/sshd_config
将#Port 22的注释去掉并且换行加入Port 35443
如果是不是增加,而是修改端口的话,建议先保留22端口,等新端口可以登录再去掉。
重启SSH服务 /etc/init.d/sshd restart
。root的密码一定要足够复杂。
6. 博客运行的vps
本博客运行的VPS是 hi-vps。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于