ホームページ  >  記事  >  バックエンド開発  >  サーバーのセットアップ 2

サーバーのセットアップ 2

WBOY
WBOYオリジナル
2016-08-08 09:18:54915ブラウズ

<code><span>1.</span>将nginx安装包拷贝到/opt/nginx目录下,修改权限,解压缩,同时编译安装.
root@iZ25n0utdnmZ:/opt/nginx<span># chmod 777 nginx-1.9.3.tar.gz </span>
root@iZ25n0utdnmZ:/opt/nginx<span># ls -l</span>
total <span>848</span>
-rwxrwxrwx <span>1</span> root root <span>864430</span> Aug  <span>3</span><span>18</span>:<span>37</span> nginx-<span>1.9</span><span>.3</span>.tar.gz
root@iZ25n0utdnmZ:/opt/nginx<span># tar -zxvf nginx-1.9.3.tar.gz </span>
root@iZ25n0utdnmZ:/opt/nginx/nginx-<span>1.9</span><span>.3</span><span># ./configure</span>
......(很多输出)......
checking <span>for</span> PCRE <span>library</span><span>in</span> /usr/include/pcre/ <span>...</span> not found
checking <span>for</span> PCRE <span>library</span><span>in</span> /usr/pkg/ <span>...</span> not found
checking <span>for</span> PCRE <span>library</span><span>in</span> /opt/local/ <span>...</span> not found

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE <span>library</span> into the system, or build the PCRE <span>library</span>
statically from the <span>source</span> with nginx by using --with-pcre=<path> option.
提示缺少pcre,下载pcre并拷贝到/opt/pcre目录下,修改权限,解压缩,同时编译安装,
root@iZ25n0utdnmZ:/opt/pcre<span># chmod 777 pcre-8.37.tar.gz </span>
root@iZ25n0utdnmZ:/opt/pcre<span># ls -l</span>
total <span>1996</span>
-rwxrwxrwx <span>1</span> root root <span>2041593</span> Aug  <span>5</span><span>18</span>:<span>31</span> pcre-<span>8.37</span>.tar.gz
root@iZ25n0utdnmZ:/opt/pcre<span># tar -zxvf pcre-8.37.tar.gz </span>
root@iZ25n0utdnmZ:/opt/pcre/pcre-<span>8.37</span><span># ./configure</span>
root@iZ25n0utdnmZ:/opt/pcre/pcre-<span>8.37</span><span># make</span>
root@iZ25n0utdnmZ:/opt/pcre/pcre-<span>8.37</span><span># make install</span>
安装完pcre后,继续安装nginx.
root@iZ25n0utdnmZ:/opt/nginx/nginx-<span>1.9</span><span>.3</span><span># ./configure</span>
......(很多输出)......
checking <span>for</span> sha1 <span>in</span> system md <span>library</span><span>...</span> not found
checking <span>for</span> sha1 <span>in</span> system OpenSSL crypto <span>library</span><span>...</span> not found
checking <span>for</span> zlib <span>library</span><span>...</span> not found

./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib <span>library</span> into the system, or build the zlib <span>library</span>
statically from the <span>source</span> with nginx by using --with-zlib=<path> option.
提示缺少zlib,下载zlib并拷贝到/zlib/zlib目录下,修改权限,解压缩,同时编译安装,
root@iZ25n0utdnmZ:/opt/zlib<span># chmod 777 zlib-1.2.8.tar.gz </span>
root@iZ25n0utdnmZ:/opt/zlib<span># ls -l</span>
total <span>560</span>
-rwxrwxrwx <span>1</span> root root <span>571091</span> Aug  <span>5</span><span>18</span>:<span>39</span> zlib-<span>1.2</span><span>.8</span>.tar.gz
root@iZ25n0utdnmZ:/opt/zlib<span># tar -zxvf zlib-1.2.8.tar.gz </span>
root@iZ25n0utdnmZ:/opt/zlib/zlib-<span>1.2</span><span>.8</span><span># ./configure</span>
root@iZ25n0utdnmZ:/opt/zlib/zlib-<span>1.2</span><span>.8</span><span># make </span>
root@iZ25n0utdnmZ:/opt/zlib/zlib-<span>1.2</span><span>.8</span><span># make install</span>
安装完zlib后,继续安装nginx.
root@iZ25n0utdnmZ:/opt/nginx/nginx-<span>1.9</span><span>.3</span><span># ./configure</span>
Configuration summary
  + using system PCRE <span>library</span>
  + OpenSSL <span>library</span> is not used
  + using builtin md5 code
  + sha1 <span>library</span> is not found
  + using system zlib <span>library</span>  nginx path prefix: <span>"/usr/local/nginx"</span>
  nginx binary file: <span>"/usr/local/nginx/sbin/nginx"</span>
  nginx configuration prefix: <span>"/usr/local/nginx/conf"</span>
  nginx configuration file: <span>"/usr/local/nginx/conf/nginx.conf"</span>
  nginx pid file: <span>"/usr/local/nginx/logs/nginx.pid"</span>
  nginx error log file: <span>"/usr/local/nginx/logs/error.log"</span>
  nginx http access log file: <span>"/usr/local/nginx/logs/access.log"</span>
  nginx http client request body temporary files: <span>"client_body_temp"</span>
  nginx http proxy temporary files: <span>"proxy_temp"</span>
  nginx http fastcgi temporary files: <span>"fastcgi_temp"</span>
  nginx http uwsgi temporary files: <span>"uwsgi_temp"</span>
  nginx http scgi temporary files: <span>"scgi_temp"</span>
root@iZ25n0utdnmZ:/opt/nginx/nginx-<span>1.9</span><span>.3</span><span># make</span>
root@iZ25n0utdnmZ:/opt/nginx/nginx-<span>1.9</span><span>.3</span><span># make install</span>
注意:ginx默认是在安在/usr/local/nginx下.


<span>2.</span>启动,重启和停止nginx.
root@iZ25n0utdnmZ:/usr/local/nginx/sbin<span># ./nginx </span>
root@iZ25n0utdnmZ:/usr/local/nginx/sbin<span># ./nginx -s reload</span>
root@iZ25n0utdnmZ:/usr/local/nginx/sbin<span># ./nginx -s stop</span><span>3.</span>nginx和tomcat集成配置.
打开nginx的配置文件nginx.conf,在其中加入如下配置:参考配置<span>1.</span>conf.
location ~ \.mvc {
    proxy_pass http://<span>101.201</span><span>.89</span><span>.5</span>:<span>8080</span>;
}
其中重要的配置如下:
server {
    listen       <span>80</span>;
    server_name  localhost;

    location ~ \.mvc {
        proxy_pass http://<span>101.201</span><span>.89</span><span>.5</span>:<span>8080</span>;
    }
}
这段配置的意思是:服务器监听<span>80</span>端口,当有以.mvc结尾的请求时,服务器将请求交给代理处理.其余配置先不做详细介绍.
注意可以使用nginx -t指令校验配置文件配置的是否正确.
root@iZ25n0utdnmZ:/usr/local/nginx/sbin<span># ./nginx -t</span>
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful


<span>4.</span>nginx和tomcat负载均衡配置.
打开nginx的配置文件nginx.conf,在其中加入如下配置:参考配置<span>2.</span>conf.
upstream myserver {
    server <span>101.201</span><span>.89</span><span>.5</span>:<span>8080</span> weight=<span>1</span>;
        server <span>101.201</span><span>.89</span><span>.5</span>:<span>8081</span> weight=<span>1</span>;
}

server {
    listen       <span>80</span>;
    server_name  localhost;

    location ~ \.mvc {
        proxy_pass http://myserver;
    }
}
这段配置的意思是:服务器监听<span>80</span>端口,当有以.mvc结尾的请求时,服务器将请求交给代理处理,而代理指向的是一个服务器列表,通过upstream配置,
通过名字myserver匹配,在服务器列表中有两个服务器,端口分别是<span>8080</span>,<span>8081</span>,权重都是<span>1</span>,即nginx会将发过来的请求按<span>1</span>:<span>1</span>的比例交给两个服务器处理,
注意:如果某个服务器瘫痪了或者根本不存在,也不会影响业务,另一个服务器会处理所有请求.
另一个tomcat的server.xml文件配置需要修改的地方如下:
将<span>8005</span>改为<span>8006</span>:<Server port=<span>"8006"</span> shutdown=<span>"SHUTDOWN"</span>>
将<span>8080</span>改为<span>8081</span>:<Connector port=<span>"8081"</span> protocol=<span>"HTTP/1.1"</span> c>"20000"</span> redirectPort=<span>"8443"</span> />
将<span>8009</span>改为<span>8010</span>:<Connector port=<span>"8010"</span> protocol=<span>"AJP/1.3"</span> redirectPort=<span>"8443"</span> /> 
如果两个服务都正常运行,可以通过记录log测试两个服务分别处理了不同的请求,如下:
log4j.appender.file.File=/log/tomcat1/aplay-web.log
log4j.appender.file.File=/log/tomcat2/aplay-web.log





</code>

著作権に関する声明: この記事はブロガーによるオリジナルの記事であり、ブロガーの許可なく複製することはできません。

以上、サーバー構築2を内容も含めて紹介しましたが、PHPチュートリアルに興味のある方の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。