您的位置:首页 > 运维架构 > Nginx

NGINX (轻量级的负载均衡服务器)基本的安装配置

2015-12-02 22:30 639 查看
         12月2日

          NGINX是轻量级的负载均衡服务器,支持百万级别的访问量,具有良好的稳定性和高并发链接数。

         0.简单的安装:

                        1.下载:http://nginx.org 可以下载最新版本的nginx服务器,下载的文件以压缩文件的形式存在,在这里就遇到了如果遇到源码安装的情况,因为这是我们不能用yum或者是rpm安装,所以改用源码编译安装。

                        2.解压,tar zxvf nginx.......(版本),解压到任意目录,在这里我解压到了/tmp文件夹下,解压后的文件如图所示:

        


                        3.开始添加参数,参数设置如下:

              


                    回车进行安装,安装后会出现以下情况:

     


       问题的解决办法是:

  

           然后再次运行以上的配置命令:再次出现了以下的错误:

  


           问题的解决办法:安装相应的软件包

  


           最后完成所有的软件包的安装:提示安装nginx成功

  


4. ./configure  出现未找到错误,一般在这种情况下需要安安装以下几个安装包

                              yum install -y pcre-devel。。。。。。

                                yum install -y openssl-devel。。。。。。

                                  yum install -y openssl1.0.0 。。。。。。

                                     yum install -y zlib。。。。。。。

                        5.安装如上的安装包,显示nginx安装完成,successful

                        6.make

                        7.make install

                        8.nginx -t (这条命令是检查nginx安装是否完成的测试命令)

                        9.提示没有安装完成,原因是,1 没有添加用户,2 没有创建相应的用户。

                        10.创建之前的配置是写的用户名为nginx        useradd nginx  创建不存在的目录 mkdir 。。。。

                        11. 启动 nginx            命令   nginx

                        12.查看是否启动完成,ps -ef |grep nginx

                        13. 配置nginx 的配置文件。。。/etc/nginx/nginx.conf

(注意在最后补充两处会出现错误的地方,这里引用别人的经验,出现情况为./configure *: No such file or directory

网上寻求帮助找到的解决办法为  
http://blog.csdn.net/testcs_dn/article/details/39253869

另外出现的问题的解决办法:根据提示,需要建立文件 (注意是文件,不是文件夹) /var/run/nginx.pid   .......

----------------------------------------------------------------------------------------------------------------------------------------------------------

 12月14日

1.Nginx的虚拟目录

1、创建目录
2、更改上下文
3、在配置文件/etc/nginx/nginx.conf 中添加alias
location /wt {
      alias "/web2";  
}
注意和apache中虚目录写法上的区别,上边添加的这个必须要在一个server内才会生效

2、Nginx的虚拟主机
1、基于ip的虚拟主机
ifconfig eth0:0 192.168.4.84添加一个ip
vim /[b]etc/nginx/conf.d/default.conf[/b]
[b][b]server {

    
[/b][/b]listen 192.168.1.84:80;   
    server_name  _;     

    location / {

        root   /web1;  

        index index.php  index.html index.htm;

    }

[b][b]}[/b][/b]


[b][b]server {

    
[/b][/b]listen 192.168.1.85:80;   
    server_name  _;     

    location / {

        root   /web2;  

        index index.php  index.html index.htm;

    }


[b][b]}[/b][/b]

2、基于端口的虚拟主机
更改端口
yum -y install policycoreutils-python*
semanage
port -l | grep http   # 查看SELinux下http相关端口


semanage port -a -t http_port_t -p tcp 82 #在selinux中添加82端口号
这一步很重要,很有用
vim /[b][b]etc/nginx/conf.d/default.conf[/b][/b]
[b][/b]

[b][b]server {

    
[/b][/b]listen 192.168.1.84:80;   
    server_name  _;     

    location / {

        root   /web1;  

        index index.php  index.html index.htm;

    }


[b][b]}[/b][/b]

[b][b][/b][/b]

[b][b]server {

    
[/b][/b]listen 192.168.1.84:82;   
    server_name  _;     

    location / {

        root   /web2;  

        index index.php  index.html index.htm;

    }


[b][b]}[/b][/b]

3、基于域名

[b][b]使用DNS或者hosts文件,本次实验用的hosts文件[/b][/b]
[b][b]vim
/etc/hosts
[/b][/b]

192.168.1.83 www.baidu.com
192.168.1.83
www.taobao.com



vim
/[b][b][b]etc/nginx/conf.d/default.conf
[/b][/b][/b]
[b][b][b][b][b][b][b][b][b][b][b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b][/b]

[b][b]server {

    
[/b][/b]listen 192.168.1.84:80;   
    server_name  www.baidu.com;     

    location / {

        root   /web1;  

        index index.php  index.html index.htm;

    }


[b][b]}[/b][/b]



[b][b]server {

    
[/b][/b]listen 192.168.1.84:80;   
    server_name  www.taobao.com;     

    location / {

        root   /web2;  

        index index.php  index.html index.htm;

    }


[b][b]}[/b][/b]

----------------------------------------------------------------------------------------------------------------------------------------------------------
12月15日


1、Nginx-basic身份认证
vim [b]/[b][b][b]etc/nginx/conf.d/default.conf[/b][/b][/b][/b]
[b][b][b][b]location
/{
[/b][/b][/b][/b]
[b][b][b][b] 
       root /web;
[/b][/b][/b][/b]
[b][b][b][b] 
       index index.html index.htm;
[/b][/b][/b][/b]
[b][b][b][b] 
       auth_basic "secret-web";
[/b][/b][/b][/b]
[b][b][b][b] 
       auth_basic_user_file /etc/nginx/.passwd.db;
[/b][/b][/b][/b]
[b][b][b][b]}[/b][/b][/b][/b]

htpasswd -cm /etc/nginx/.passwd.db aaa
2、Nginx的tls站点加密传输
cd /etc/pki/tls/certs/
make junxi.pem #成成一个证书
vim /etc/nginx/conf.d/example_ssl.conf
server {
    listen 443 ssl;
    server_name localhost;
    ssl_certificate        /etc/pki/tls/certs/junxi.pem;
    ssl_certificate_key    /etc/pki/tls/certs/junxi.pem;
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 5m;
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
    location / {
        root /web1;
        index index.html index.htm;
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息