同时支持php和jsp的测试环境搭建

概述

LNMPA是什么?

项目官网:http://www.lnmp.org/
也许大家对LAMP、LNMP比较熟悉,LAMP代表Linux下Apache、MySQL、PHP这种网站服务器架构;LNMP代表的是Linux下Nginx、MySQL、PHP这种网站服务器架构。LNMPA代表的是Linux下Nginx、MySQL、PHP、Apache这种网站服务器架构,是结合LAMP与LNMP各自的优点而产生的新的网站服务器架构。

我们为什么采用LNMPA这种架构?

采用Linux、PHP、MySQL的优点我们不必多说。
Nginx是一个小巧而高效的Linux下的Web服务器软件,与Apache相比,消耗资源更少,支持的并发连接,更高的效率,反向代理功能效率高、静态文件处理快等。
Apache是一款老牌的Web服务器软件,在高并发时对队列的处理比FastCGI更成熟,Apache的mod_php效率比php-cgi更高且更稳定、对伪静态支持好,不需要转换、多用户多站点权限等方面有着更好的效果……

LNMPA这种架构有什么优势?

LNMPA使用Nginx作为前端服务能够更快更及时的静态页面、js、图片等,当客户端请求访问动态页面时由Nginx的反向代理给Apache处理,Apache处理完再交予Nginx返回给客户端。
采用LNMPA能够更好的解决LNMP架构中由于PHP-FPM方面产生的502错误,同时能够为提供更安全的多用户多站点环境。

什么是Tomcat

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

今天的目标

搭建一个同时支持php和jsp的集成环境,即在linux环境下,部署apache+mysql+nginx+tomcat+php,也可以简称为LNMPAT。其实就是利用现在网络上很流行的一个lnmpa环境一键安装包,在此基础上集成tomcat,达到对jsp的支持。

安装步骤

系统需求:

需要2GB以上硬盘剩余空间
低于1G内存不建议使用LNMPA (小内存请勿使用64位系统),服务器必须已经联网!
Linux下区分大小写,输入命令时请注意!

  1. 使用putty或类似的SSH工具登陆服务器,我们这里使用SecureCRT;
    登陆后运行:

    screen -S lnmp

    如果提示

    screen: command not found

    命令不存在可以执行:

    yum install screen

    apt-get install screen

    安装,详细的screen教程(http://www.vpser.net/manage/run-screen-lnmp.html)。

  2. 下载并安装LNMP一键安装包:
    执行安装程序前需要您确认您的Linux发行版,可以执行:

    cat /etc/issue

    查看是CentOS、Debian还是Ubuntu,确定好之后,选择下面对应系统的安装命令:
    CentOS系统下执行:

    wget -c http://soft.vpser.net/lnmp/lnmp1.0-full.tar.gz && tar zxvf lnmp1.0-full.tar.gz && cd lnmp1.0-full && ./centos.sh

    Debian系统下执行:

    wget -c http://soft.vpser.net/lnmp/lnmp1.0-full.tar.gz && tar zxvf lnmp1.0-full.tar.gz && cd lnmp1.0-full && ./debian.sh

    Ubuntu系统下执行:

    wget -c http://soft.vpser.net/lnmp/lnmp1.0-full.tar.gz && tar zxvf lnmp1.0-full.tar.gz && cd lnmp1.0-full && ./ubuntu.sh

    按上述命令执行后,会出现如下提示:
    (注:如果是Debian系统,会提示Where are your servers located? asia,america,europe,oceania or africa,这里是选择服务器在哪个大洲,如果是中国的,输入asia,回车。如果输入有错误,可以按住Ctrl再按Backspace键删除,以下均可采用此方法删除。)

    这一步需要设置MySQL的root密码,输入后回车进入下一步,如下图所示:

    这里需要确认是否启用MySQL InnoDB,如果不确定是否启用可以输入 y ,这个可以单独在MySQL文件里关闭,输入 y 表示启用,输入 n 表示不启用。输入 y 或 n 后回车进入下一步,显示如下信息:

    这一步是选择php版本,可以选择 PHP 5.3.17 或 PHP 5.2.17,安装PHP 5.3.17的话输入 y ,安装PHP 5.2.17 输入 n,输入 y 或 n 后回车,进入下一步MySQL版本的选择,如下图:

    可以选择MySQL 版本 5.5.27 或 5.1.60,安装MySQL 5.5.27的话输入 y ,安装MySQL 5.1.60 输入n,输入 y 或 n 后回车,完成选择。
    提示”Press any key to start…”,按回车键确认开始安装。
    LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。
    安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。

  3. 安装完成
    如果显示如下界面:

    说明已经安装成功。

  4. 安装失败

    如果出现类似上图的提示,则表明安装失败,说明没有安装成功!!可以尝试重新安装或者到LNMP支持论坛寻求帮助。

  5. 安装LNMPA
    LNMPA是LNMP的扩展,按LNMP安装教程安装好LNMP后,LNMP压缩包解压后的目录里再执行

    ./apache.sh

    开始安装,会提示输入邮箱,回车确认后将会自动开始安装。

  6. 安装java环境
    获取jre-6u45-linux-x64.bin,大家可以去oracle官网下载jre(http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR)或者jdk来安装java环境。因为在官网下载jre需要注册,这里找了另外一个镜像站点下载。

    wget –c http://uni-smr.ac.ru/archive/dev/java/bulk/jre-6u45-linux-x64.bin

    拷贝jre-6u45-linux-x64.bin到需要安装的目录

    cp jre-6u45-linux-x64.bin /usr/local

    给予可以执行权限

    cd /usr/local
    chmod +x jre-6u45-linux-x64.bin

    执行安装

    ./ jre-6u45-linux-x64.bin

    等待安装完毕后配置环境变量

    vim /etc/profile

    在文件结尾处输入

    export JAVA_HOME=/usr/local/jre1.6.0_45
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    保存文件
    执行

    source /etc/profile

    命令,让环境变量生效,这样java的环境就配置完了。

  7. 安装tomcat
    到tomcat官网获取安装包(tomcat 7):

    wget –c http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.8/bin/apache-tomcat-7.0.8.tar.gz

    拷贝到/etc/local目录,解压缩并改名成tomcat7

    cp apache-tomcat-7.0.8.tar.gz /usr/local
    cd /usr/local
    tar zxvf apache-tomcat-7.0.8.tar.gz
    mv apache-tomcat-7.0.8 tomcat7

    启动tomcat服务

    /usr/local/tomcat7/bin/startup.sh

    现在访问服务器地址http://服务器ip:8080
    如果能正常出现tomcat的默认页面,则表示tomcat安装成功。

相关配置

其实到这里,php+jsp的环境就搭建完了,但是,现在不能通过80端口同时访问php应用和jsp应用,访问jsp应用需要加8080端口,如果我们要求访问php和jsp应用都使用80端口,该怎么办呢?需要修改配置信息。
很简单,需要修改的配置文件只有两个。
执行脚本

/root/vhost.sh

添加一个虚拟主机,比如yunlai.cn
自动生成的虚拟主机配置文件内容如下:

server
{
listen 80;
server_name yunlai.cn;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/yunlai.cn;
location / {
try_files $uri @apache;
}
location @apache {
internal;
proxy_pass http://127.0.0.1:88;
include proxy.conf;
}
location ~ .*.(php|php5)?$
{
proxy_pass http://127.0.0.1:88;
include proxy.conf;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
access_log off;
}

在server中增加下面的配置

location ~ .*.jsp
{
proxy_pass http://127.0.0.1:8080;
include proxy.conf;
}

然后,我们需要将tomcat的应用目录重新指向到/home/wwwroot/yunlai.cn中。
需要修改tomcat配置文件

vim /usr/local/tomcat7/conf/server.xml

在host标签中增加一行代码即可


然后重新启动lnmpa和tomcat服务,这样我们就可以通过yunlai.cn这个域名(需要做域名解析)访问了,可以通过80端口同时访问php和jsp应用,应用部署目录为:/home/wwwroot/yunlai.cn。
虚拟主机管理
1、LNMPA添加虚拟主机:

/root/vhost.sh

2、删除虚拟主机,ssh执行:

rm /usr/local/nginx/conf/vhost/域名.conf

同时需要:

rm /usr/local/apache/conf/vhost/域名.conf

“同时支持php和jsp的测试环境搭建”的一个回复

  1. include proxy.conf这个文件没有所以nginx检查配置文件的时候会报错

    还有全部按照这个流程走下来,还是不解析jsp,直接下载jsp文件了

发表评论

电子邮件地址不会被公开。 必填项已用*标注