• CentOS6.x安装配置nginx [转]


     
    nginx安装
    nginx的官网:http://nginx.org/
     
    相应下载页面:http://nginx.org/en/download.html
     
    我这里使用nginx的yum在线安装

    wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

    安装源库

    chmod +x nginx-release-centos-6-0.el6.ngx.noarch.rpm 

    rpm -i nginx-release-centos-6-0.el6.ngx.noarch.rpm 

    安装nginx

    yum install nginx

     
    安装完成后
    默认nginx配置文件: /etc/nginx/nginx.conf         【nginx主要的配置文件】 
    默认nginx的ssl配置文件: /etc/nginx/conf.d/ssl.conf 【配置SSL证书的,也可以并入到nginx.conf文件里】 
    默认nginx的虚拟主机配置文件: /etc/nginx/conf.d/virtual.conf 【如同Apache的虚拟主机配置,也可以并入到nginx.conf文件里】 
    默认的web_root文件夹路径: /usr/share/nginx/html 【web目录夹,放置Magento主程序】 
     
    配置iptables

    iptables -I INPUT 5 -p tcp --dport 80 -j ACCEPT

     
    启动nginx

    service nginx start

    打开IP地址 可见“Welcome to nginx!”表示安装成功。

     
    =============================================================
    以下自己加的,非root启动nginx
    先关闭默认启动的nginx

    chkconfig --level 2345 nginx off

     
    复制/etc/nginx/nginx.conf到别的地方

    cp /etc/nginx/nginx.conf /home/user/etc/nginx/nginx.conf

     
    启动

    /usr/sbin/nginx -c /home/user/etc/nginx/nginx.conf

     
    关闭

    killall nginx


     
    =======================================================
    conf改成下如下
    user  nginx;
    worker_processes  1;
     
    error_log  /home/user/log/nginx/error.log warn;
    pid        /home/user/log/nginx/run/nginx.pid;
     
     
    events {
        worker_connections  1024;
    }
     
     
    http {
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;
     
        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  /home/user/log/nginx/access.log  main;
     
        sendfile        on;
        #tcp_nopush     on;
     
        keepalive_timeout  65;
     
        gzip  on;
     
        include /home/user/etc/nginx/conf.d/*.conf;
    }

     
    /home/user/etc/nginx/conf.d/default.conf;里面
    server {
        listen       8080;
    注意:端口是1024以下,一定要root权限启动才可以绑定(这是Linux系统机制问题),否则非root启动会提示无法绑定端口
     
    ==========================================
    非root用户启动,使用80端口:

    cd /usr/sbin

    发现:
    -rwxr-xr-x. 1 root root  834352 Dec 12 00:57 nginx
    按照网上的说法,给nginx添加s的权限:

    chmod u+s nginx

    再查看:
    -rwsr-xr-x. 1 root root  834352 Dec 12 00:57 nginx
     
    再次以非root启动:
    root      1736     1  0 23:51 ?        00:00:00 nginx: master process /usr/sbin/nginx -c /home/user/etc/nginx/nginx.conf
    nginx     1737  1736  0 23:51 ?        00:00:00 nginx: worker process  
     
    主线程还是root。子线程不一定是root了
    另外:
    如果nginx设置目录在/home/user下面。
    /home/user一定要给o+x的权限,否则会报403 forbidden
    20160615补充:
    以上权限问题由于selinux引起,不再建议添加S权限这类的,会引起安全问题。
    例如:nginx无法转发upstream,可以用 

    setsebool -P httpd_can_network_connect 1

    解决。
    其他的同样可以配置对应的selinux进行解决。
  • 相关阅读:
    构造函数初始化与赋值
    C代码中如何调用C++ C++中如何调用C
    C用函数指针模拟重载 C++重载
    【2019.10.30】意料之外的小黄衫——获得小黄衫感言
    【2019.10.30】SDN上机第1次作业
    【2019.10.17】十天Web前端程序员体验(软件工程实践第五次作业)
    【2019.10.07】《重生之我是程序员》
    【2019.09.30】“福大同好”——原型设计展示~
    【2019.09.30】构建之法《四五八章读后感》
    【2019.09.25】《构建之法》前三章读后感
  • 原文地址:https://www.cnblogs.com/jimcsharp/p/5786418.html
Copyright © 2020-2023  润新知