Web服务器(Nginx、php)+图片服务器

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/txj_20160909/article/details/52571499

1. Web服务器配置

1.1 Nginx安装

1.1.1在Linux系统下,通过命令安装

1.sudoapt-get update           //更新系统获取最新的安装包

2.sudoapt-get install nginx

1.1.2 启动Nginx

sudo servicenginx start

或者

sudo /etc/init.d/nginx start

1.1.3 测试Nginx 是否安装成功

浏览器中 输入地址localhost 127.0.0.1 出现如下界面:

安装成功!

1.1.4 配置Nginx 

打开配置文件:

vi/etc/nginx/sites-available/default

找到下列代码

            #root /var/www/html;

             root html; //这是默认的网站根目录在 /usr/share/nginx/html

                        //根据自己需要可定义自己的网站根目录

找到下列代码

            #Add index.php to the list if you are using PHP

index index.html index.htmindex.nginx-debian.html;

增加 index.php  支持php 修改如下:

            # Add index.php to the list if youare using PHP

index index.html index.htmindex.nginx-debian.html index.php;

找到下列代码,去掉相应的注释

            location~ \.php$ {

            include snippets/fastcgi-php.conf;

            fastcgi_passunix:/var/run/php5-fpm.sock;

            }

重启Nginx

sudo servicenginx restart

1.2 Php 安装

sudo apt-get install php5-fpm

安装完成后在网站根目录下建立 info.php 文件,内容如下:

<?php

echo phpinfo();

?>

在浏览器中输入 localhost/info.php 出现如下php版本信息界面:

安装成功,说明Nginx能够支持PHP!

1.3 安装可能遇到的问题

①      安装php 和 nginx 建议使用命令在线安装,比较方便,安装内容完整! 安装Nginx 更改配置文件后,注意确定重启服务成功后,再测试配置是否生效。

②      Ubuntu下安装 nginx,若配置出错或版本等问题需要卸载使用如下指令:

sudo apt-get purge nginx nginx-common #卸载所有文件,包括删除配置件。

sudo apt-getautoremove #卸载删除Nginx的不再被使用的依赖包。

③      在Web服务器中php以默认www-data的身份(www-data在nginx的配置文件中可修改,不通版本的nginx , www-data默认的名称也可能不一样)运行程序,需要赋予相应的权限;

找到/etc/sudoers配置文件做如下操作:

若有 Default requiretty 代码段 ,则注释掉,表示不需要控制终端。

否则报错 sudo: sorry, you must have a tty torun sudo

增加 Defaults visiblepw 代码段。

否则报错 sudo: no tty present and no askpassprogram specified

需要给www-data 身份赋予交互免密码权限,配置文件中增加如下代码段

www-data ALL=(ALL) NOPASSWD:ALL   

2.图片服务器配置

2.1  配置Nginx 的 nginx.conf 文件

找到配置文件中相对应得代码段和模块修改或增加 ,内容如下:

        user www-data;

        worker_processes 8;

        pid/usr/local/aiism/nginx/webserver/nginx.pid;

 

        worker_rlimit_nofile 65535;

 

        events {

                useepoll;

                worker_connections65535;

        }

 

        http {

 

                sendfileon;

                #tcp_nopushon;

                tcp_nodelayon;

                keepalive_timeout65;

                types_hash_max_size2048;

 

                include/etc/nginx/mime.types;

                default_typeapplication/octet-stream;

 

                ssl_protocolsTLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref:     POODLE

                ssl_prefer_server_cipherson;

 

                gzipon;

                gzip_disable"msie6";

 

       

  application/javascript text/xmlapplication/xml application/xml+rss text/javascript;

 

                include/etc/nginx/conf.d/*.conf;

                include/etc/nginx/sites-enabled/*;

 

                server{

                        listen    7788;

                          server_namelocalhost;

                        charset utf-8;

          

                          location~ (\.jsp)|(\.do)/ { 

                          proxy_passhttp://120.76.248.146:7001; 

                          proxy_set_headerX-Real-IP $remote_addr; 

         

                          proxy_set_headerHost $host; 

                         proxy_set_headerX-Forwarded-For $proxy_add_x_forwarded_for; 

                        proxy_buffer_size 4k; 

                          proxy_buffers4 32k; 

                          proxy_busy_buffers_size64k; 

                          proxy_temp_file_write_size64k; 

                          proxy_max_temp_file_size512m; 

                          } 

                }

       

                server{

                listen  8888;

                server_name localhost;

           

                charset utf-8;

           

                        location ~ .*\.(gif|jpg|jpeg|png){  

                 

                  #expires 24h; 

                           root /usr/local/aiism/nginx/images/; 

                           access_log /usr/local/aiism/nginx/log_test.log; 

                           proxy_store on; 

                           proxy_store_access user:rw group:rw all:rw; 

                     

                           proxy_redirect   off; 

                     

                           proxy_set_header  Host$host; 

                           proxy_set_header X-Real-IP $remote_addr; 

                          proxy_set_header X-Forwarded-For $remote_addr; 

                           client_max_body_size      10m; 

                           client_body_buffer_size   1280k; 

                           proxy_connect_timeout     900; 

                           proxy_send_timeout         900; 

                           proxy_read_timeout        900; 

                           proxy_buffer_size         1024k; 

                           proxy_buffers             40 1024k; 

                           proxy_busy_buffers_size   1024k; 

                           proxy_temp_file_write_size 1024k; 

                  proxy_temp_path   /usr/local/aiism/nginx/images/; 

              

                  if ( !-e $request_filename) 

                           { 

                           proxy_pass http://120.76.248.146:8888; 

                           } 

                     

                  } 

                  location/ { 

                        roothtml; 

                  index index.html index.htm; 

                  } 

                  error_page   500 502 503 504  /50x.html; 

                  location= /50x.html { 

                root   html; 

                 }

            }

        }

2.2  测试图片服务器

  配置完成后,重新启动nginx服务,在设定的目录下放置一张图片(test.png )后,进行访问,在浏览器输入

127.0.0.1:8888/test.png ,如果可以访问到图片,则说明搭建成功








展开阅读全文

没有更多推荐了,返回首页