当前位置: > 虚拟化 Virtualization > VirtualBox >

virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器 主机能够访问

时间:2016-11-24 14:02来源:linux.it.net.cn 作者:IT

在命令行的东西实在是太多了,感觉还是记录在自己的博客里面感觉踏实点,同时也为广大的朋友提供意见和参考。好了,话不多说进入今天的主题。  

       

 转载注明出处~ ~谢谢~!! http://blog.csdn.net/wu10045125/article/details/22266511

        看标题就知道我们需要的工具和软环境:win7下virtualbox 4.2虚拟机软件,ubuntu server 12.04镜像文件。至于virtualbox如何安装ubuntu server这个问问度娘就知道了。实在不知道的请留言~ ~。

        安装完毕以后ubuntu server是没有桌面的,只有命令窗口。这里我们可以选择安装桌面。ubuntu server 已经使用了Universe和Multiverse库。然后如下命令更新源列表和安装图形界面:

 

         sudo apt-get update
   
         sudo apt-get upgrade

         sudo apt-get install ubuntu-desktop

然后就等待着慢慢下完程序包吧~ ~。可以坐下来喝喝茶~ ~

        安装好重启后就会进入桌面图形界面了




接下来就是开始我们的服务器搭建了,是不是有点小激动了,不急容小弟慢慢道来~ ~ 
ubuntu server 12.04通过更新来源列表有nginx,我们开始安装它。

sudo apt-get install nginx

安提示操作就可以来,安装好了以后,当然是要启动了

sudo service nginx start

安装chkconfig

sudo apt-get install chkconfig

加入开机启动nginx

chkconfig nginx on   #不行就试试加上sudo   

到这里nginx 安装就完成了。


接下来安装mysql :

sudo apt-get install mysql-server

按提示操作
不用操作的默认

启动mysql

sudo service mysql start

sudo chkconfig mysql on  #开机启动mysql

sudo service mysql restart #重启

接下来就是tomcat的安装了

在安装tomcat之前是要安装和配置java的(jdk)
jdk下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

下载后解压
sudo tar -zxvf jdk-7u51-linux-i586.tar.gz

 复制解压后的文件到/opt目录中 

sudo cp -r jdk 1.7.0_51 /opt


之后就是配置环境变量,这里配置所有用户有效

sudo gedit /etc/profile

打开文件后在最后的加上如下内容:
 export JAVA_HOME=/opt/jdk1.7.0_51
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

注销后查看配置是否成功
java

java -version

  
java 环境配置好了。

 

接下来就是配置tomcat了。

从apache官网上下载。

sudo tar -zxvf  apache-tomcat-7.0.52.tar.gz

 

sudo cp -r apache-tomcat-7.0.52 /opt

 

进入拷贝文件的目录:

cd /opt/apache-tomcat-7.0.52

打开启动的脚本:

sudo vi ./bin/startup.sh

在esac 后面加入如下路径

  JAVA_HOME=/opt/jdk1.7.0_51
    JRE_HOME=/opt/jdk1.7.0_51/jre
    PATH=$JAVA_HOME/bin:$JRE_HOME:$PATH
    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    TOMCAT_HOME=/opt/apache-tomcat-7.0.52

保存后退出

启动tomcat

 

sudo ./bin/startup.sh

 

在虚拟机浏览器中输localhost:8080如看见一只猫的就证明成功了。

 

看了这么久应该累来吧,先休息下,可以回头想想之前的操作~ ~

 

到这里nginx  Java tomcat 环境都配置好了。接下来就是关联了。

我们可以打开nginx的配置文件

sudo nano /etc/nginx/nginx.conf

 

其中有两个include

 include /etc/nginx/conf.d/*.conf;
 include /etc/nginx/sites-enabled/*;

我们打开下面的

sudo vim /etc/nginx/sites-enabled/default

 

server {
    listen   80; ## listen for ipv4; this line is default and implied
    #listen   [::]:80 default ipv6only=on; ## listen for ipv6
       # charset utf-8; 
    root /www;
    index index.jsp index.html index.htm index.PHP;
        # inluce proxy.conf 表示加入代理设置文件  
    include       proxy.conf;     
    # Make site accessible from http://localhost/
    server_name 192.168.22.184 www.wzlajb.NET;
     
           location ~ .*.[jsp|do|action]$ {  
                                      
    root      /www;          # /opt/apache-tomcat-7.0.52/webapps\ROOT;  
                                  
                                # 下面的代表的是Tomcat服务器的地址和端口           
                proxy_pass      http://127.0.0.1:8080;  
        }             

#            location / {  
 #               # 这里的root设置为你的web应用程序的路径  
  #          root    /opt/apache-tomcat-7.0.52/webapps\ROOT;
   #         index  index.jsp index.html index.htm;  
    #    }  


    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to index.html
        try_files $uri $uri/ /index.html;
        # Uncomment to enable naxsi on this location
        # include /etc/nginx/naxsi.rules
    }

    location /doc/ {
        alias /usr/share/doc/;
        autoindex on;
        allow 127.0.0.1;
        deny all;
    }

    # Only for nginx-naxsi : process denied requests
    #location /RequestDenied {
        # For example, return an error code
        #return 418;
    #}

    #error_page 404 /404.html;

    # redirect server error pages to the static page /50x.html
    #
    #error_page 500 502 503 504 /50x.html;
    #location = /50x.html {
    #    root /usr/share/nginx/www;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
        # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
    
        # With php5-cgi alone:
         fastcgi_pass 127.0.0.1:9000;
        # With php5-fpm:
        fastcgi_index index.php;
        include fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny all;
    #}
}


# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
#    listen 8000;
#    listen somename:8080;
#    server_name somename alias another.alias;
#    root html;
#    index index.html index.htm;
#
#    location / {
#        try_files $uri $uri/ /index.html;
#    }
#}


# HTTPS server
#
#server {
#    listen 443;
#    server_name localhost;
#
#    root html;
#    index index.html index.htm;
#
#    ssl on;
#    ssl_certificate cert.pem;
#    ssl_certificate_key cert.key;
#
#    ssl_session_timeout 5m;
#
#    ssl_protocols SSLv3 TLSv1;
#    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
#    ssl_prefer_server_ciphers on;
#
#    location / {
#        try_files $uri $uri/ /index.html;
#    }
#}

其中包含一个proxy.conf

 

我们进入目录

cd /etc/nginx/

sudo nano proxy.conf

 

输入如下内容:

proxy_redirect          off;  
proxy_set_header        Host $host;  
proxy_set_header        X-Real-IP $remote_addr; #获取真实IP  
#proxy_set_header       X-Forwarded-For   $proxy_add_x_forwarded_for; #获取代理者的真实ip  
client_max_body_size    10m;  
client_body_buffer_size 128k;  
proxy_connect_timeout   90;  
proxy_send_timeout      90;  
proxy_read_timeout      90;  
proxy_buffer_size       4k;  
proxy_buffers           4 32k;  
proxy_busy_buffers_size 64k;  
proxy_temp_file_write_size 64k; 

 

这个时候我们已经关联好了nginx 和tomcat的关系,之后我们就简单的测试下:

 

进入tomcat 的 /opt/apache-tomcat-7.0.52/webapps/ROOT

cd /opt/apache-tomcat-7.0.52/webapps/ROOT

sudo rm -rf  index.jsp #删除默认测试文件

 

sudo nano index.jsp 

输入如下程序:

<%@ page language="Java" pageEncoding="UTF-8"%>

<html>
<head>
<title>tomcat 测试程序</title>

</head>
<body>
<%
String s="我们的服务器第一个jsp";

%>

<%=s%>
</body>

</html>

保存后测试:

 

 

 

 

 

 

tomcat的端口是8080,现在我们不加端口,而是交给默认端口处理我们就需要找到默认文件夹下了。

 

 

此时我们将文件复制默认的文件夹下

sudo cp -r index.jsp /usr/share/nginx/www

 

 

这样就已经基本完成了服务器的构建了。

由于我们是在虚拟机中构建自己的服务器,一般情况下我们的主机浏览器是访问不到的。今天我们就virtualbox下探讨。

我们可以选择virtualbox中的网络桥接模式

 

查看主机的ip信息:

 

修改ubuntu下的network配置(静态):

sudo vi /etc/network/interfaces

修改成自己电脑对应的网关

 

 

这步配置好了以后,我们可以打开主机的浏览器输入ubuntu的静态ip地址

这样就完成了我们的主机访问虚拟机中的服务器,保证在同一个网段的的都可以访问服务器了。是不是有点小机动阿,当然手机也是可以访问的

我也是摸索到这拉,如果同志们还有更好的建议,欢迎探讨~ ~。



(责任编辑:IT)
------分隔线----------------------------