设为首页 收藏本站
查看: 1109|回复: 0

[经验分享] Linux下安装NGINX

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-4-23 09:22:43 | 显示全部楼层 |阅读模式
http://sourceforge.net/projects/pcre/files/pcre   (PCRE正则表达式库官方网址)

安装NGINX前要先安装PCRE正则表达式库:
./configure --prefix=/usr/local/pcre 出现以下错误 (一般./configure即可, 笔者这里是直接./configure命令)
configure: error: You need a C++ compiler for C++support.  (解决办法: yum install -y gcc gcc-c++)
make
make install

下面开始安装NGINX:
安装NGINX:
yum install libtool
yum install zlib zlib-devel
yum install openssl
./configure --prefix=/usr/local/nginx--with-http_stub_status_module
make
make install
检查是否安装成功:
cd  /usr/local/nginx/sbin
./nginx -t
./nginx: error while loading shared libraries: libpcre.so.1: cannotopen shared object file: No such file or directory
从错误看出是缺少lib文件导致,进一步查看下:
ldd $(which/usr/local/nginx/sbin/nginx)
4f925fc3tdddb941abe4d&690.jpg
可以看出 libpcre.so.1 => not found并没有找到,进入/lib目录中手动链接下(这里的/lib目录指的是系统的根目录下面的lib目录)
32位系统 [iyunv@mysqlslave lib]# ln -s /usr/local/lib/libpcre.so.1/lib
64位系统 [iyunv@mysqlslave lib]# ln -s /usr/local/lib/libpcre.so.1/lib64
结果显示:
nginx: the configuration file /usr/local/nginx/conf/nginx.confsyntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test issuccessful
启动nginx:
cd /usr/local/nginx/sbin 目录下面 输入 ./nginx 启动nginx
ps -ef|grep nginx
4f925fc3tdddb9597057f&690.jpg
netstat -nap|grep :80  //查看80端口被哪个进程占用
service iptables stop  //把防火墙打开,否则nginx不能被访问
--------------------------------------------------------------------------------------------------
安装完nginx后需要配置监听的IP地址和端口,笔者这里是针对memcached+tomcat6做的配置,进入nginx的安装目录,笔者这里是/usr/local/nginx/conf这个目录,打开nginx.conf这个文件做如下修改:
[iyunv@mysqlmaster conf]# less nginx.conf
#user  nobody;
#user www www;
worker_processes  1;
#error_log  logs/error.log;
#error_log  logs/error.log notice;
#error_log  logs/error.log info;
#pid       logs/nginx.pid;
pid        /usr/local/nginx/logs/nginx.pid;
events {
    use epoll;
    worker_connections 1024;
}
http {
    include      mime.types;
    default_type application/octet-stream;
   
    include     /usr/local/nginx/conf/proxy.conf;   #一定要指向代理文件

    #log_format main  '$remote_addr -$remote_user [$time_local] "$request" '
    #               '$status $body_bytes_sent"$http_referer" '
    #               '"$http_user_agent""$http_x_forwarded_for"';

    #access_log logs/access.log  main;

    sendfile      on;
    #tcp_nopush    on;
    tcp_nopush    on;

    #keepalive_timeout 0;
    keepalive_timeout 65;

    #gzip on;

    upstream backend {
       #   ip_hash;
       server 192.168.0.93:8080;
       server 192.168.0.92:8080;
       #jvm_route $cookie_JSESSIONID|sessionidreverse;
    }
    server {
       listen     80;
       server_name 192.168.0.93;

       #charset koi8-r;
       charsetutf-8;

       #access_log logs/host.access.log  main;

       location / {
           root  html;
           index index.html index.htm;
          proxy_pass http://backend;
          #proxy_redirect default;
          proxy_set_header XReal-IP $remote_addr;
          proxy_connect_timeout 10;
          #client_max_body_size 100m;
       }

       #error_page  404           /404.html;

       # redirect server error pages to the static page/50x.html
       #
      
       location ~^/(WEB-INF)/ {
          denyall;
       }

       error_page   500 502 503 504 /50x.html;
       location = /50x.html {
           root  html;
       }
       # proxy the PHP scripts to Apache listening on127.0.0.1:80
       #
       #location ~ \.php$ {
       #   proxy_pass  http://127.0.0.1;
       #}
       # pass the PHP scripts to FastCGI serverlistening on 127.0.0.1:9000
       #
       #location ~ \.php$ {
       #    root         html;
       #   fastcgi_pass  127.0.0.1:9000;
       #   fastcgi_index  index.php;
       #   fastcgi_param  SCRIPT_FILENAME /scripts$fastcgi_script_name;
       #    include      fastcgi_params;
       #}
       # deny access to .htaccess files, if Apache'sdocument root
       # concurs with nginx's one
       #
       #location ~ /\.ht {
       #    deny all;
       #}
    }
    # another virtual hostusing mix of IP-, name-, and port-based configuration
    #
    #server {
    #   listen      8000;
    #   listen      somename:8080;
    #   server_name  somename alias  another.alias;

    #   location / {
    #       root  html;
    #       index index.html index.htm;
    #   }
    #}
    # HTTPS server
    #
    #server {
    #   listen      443;
    #   server_name  localhost;
    #   ssl               on;
    #   ssl_certificate     cert.pem;
    #   ssl_certificate_key cert.key;
    #   ssl_session_timeout  5m;
    #   ssl_protocols  SSLv2 SSLv3TLSv1;
    #   ssl_ciphers HIGH:!aNULL:!MD5;
    #   ssl_prefer_server_ciphers  on;
    #   location / {
    #       root  html;
    #       index index.html index.htm;
    #   }
    #}
}
还需要在/usr/local/nginx/conf目录下手动建立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;
--------------------------------------------------------------------------------------------------
最后的/usr/local/nginx/conf目录下文件截图如下:
4f925fc3gx6BTNnXIjx23&690.jpg

--------------------------------------------------------------------------------------------------
最后再多提一句日志的问题,nginx的默认日志目录为/usr/local/nginx/logs目录,这个目录下面有3个文件,分别是access.log,error.log和nginx.pid,其中error.log是错误日志,如果在启动nginx时遇到错误可以到这里来查看错误问题。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-59888-1-1.html 上篇帖子: linux下安装nginx 下篇帖子: 制作nginx的RPM包 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表