手记

Linux安装Nginx并配置启动命令

##安装前能够准备工作起来,因为Nginx依赖于gcc的编译环境,所以,需要安装编译环境来使Nginx编译

百胜安装gcc-c++ Nginx的http模块需要使用pcre来解析正则表达式,安装pcre 需要百胜安装-y pcre pcre-devel 依赖的解压包 yum install -y zlib zlib-devel ssl功能需要openssl库,安装openssl yum install -y openssl openssl-devel ##下载Nginx可以自己创建一个包,将nginx下载到这个路径,我设置的路径/opt /crm/nginx如果需要其他nginx版本的可以参考nginxwget http://nginx.org/download / nginx - 1.10.2.tar.gz下载完后压tar zxvf nginx - 1.10.2.tar.gz进入解压后的nginx目录 [root@localhost src]# cd nginx-1.10.2 [root@localhost nginx-1.10.2]# ./configure && make && make安装 如果要使用ssl ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module 注意:如果文件配置了ssl,检查配置报错

` nginx -t nginx:[emerg]unknown directive ssl错误去nginx安装的./configure --with-http_ssl_module 注意生成新的文件复制到目录cp objs / nginx /usr/local/nginx/sbin/nginx显示就搞定[root@iZ2ze02hshpth1x0vxo8r6Z sbin]# ./nginx -t nginx: 配置文件/usr/local/nginx/conf/nginx.conf 语法ok nginx: 配置成功文件/ usr /local/nginx/conf/nginx .conf 测试成功[root@iZ2ze02hshpth1x0vxo8r6Z sbin]# 安装完后查看安装目录 [root@izbp10k7vskcf4soxxbp5gz /]# whereis nginx nginx: /usr/local/nginx [root @izbp10k7vskcf4soxxbp5gz /]# 通过查找文件名方式 [root@izbp10k7vskcf4soxxbp5gz /]# find / -name nginx /opt/crm/nginx /opt/crm/nginx/nginx-1.10.2/objs/ nginx /usr/local/nginx /usr/local/nginx/sbin/nginx [root@izbp10k7vskcf4soxxbp5gz /]# 直接执行

[root@izbp10k7vskcf4soxxbp5gz /]# /usr/local/nginx/sbin/nginx [root@izbp10k7vskcf4soxxbp5gz /]# ps -ef | grep nginx root 46 1 0 09:32?00:00:00 nginx:主进程没有/usr/local/nginx/sbin/nginx -c /usr/local nginx/conf/nginx.67 4666 0 09:32 ?_停止nginx的命令为/usr/local/nginx/sbin/nginx -s stop重启nginx的命令为/usr/local/nginx/sbin/nginx -s重新加载配置方式去到/usr/lib/systemd /system /目录新建一个nginx服务,执行权限 vim /usr/lib/systemd/system/nginx.service chmod +x /usr/lib/systemd/system/nginx.service 打开文件nginx.service新建内容 [Unit] Description=nginx - 高性能网络服务器

After=network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStartPre=/usr /local/nginx/sbin/nginx -t - c /usr/local/nginx/conf/nginx.conf ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/usr/local/nginx/sbin/ nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s stop ExecQuit=/usr/local/nginx/sbin/nginx -s quit

PrivateTmp=true [安装] WantedBy=multi-user.target 保存之后重载Ststemctl在启动服务之前,需要先重载systemctl命令systemctl daemon-reload 配置完之后

systemctl status nginx systemctl start nginx systemctl stop nginx systemctl restart nginx 附上配置

#用户没有人;worker_processes 1;

#error_log 日志/error.log;#error_log 日志/error.log 通知;#error_log 日志/error.log 信息;

#pid 日志/nginx.pid;

事件 { worker_connections 65535; }

http {
include 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  logs/access.log  main;

sendfile        on;
#tcp_nopush     on;

#keepalive_timeout  0;
keepalive_timeout  65;

gzip    on;
#允许压缩的最小字节数
gzip_min_length 1k;
#4个单位为16k的内存作为压缩结果流缓存
gzip_buffers 4 16k;
#设置识别HTTP协议版本,默认是1.1
gzip_http_version 1.1;
#gzip压缩比,可在1~9中设置,1压缩比最小,速度最快,9压缩比最大,速度最慢,消耗CPU
gzip_comp_level 2;
#压缩的类型
gzip_types text/plain application/x-javascript text/css application/xml;
#让前端的缓存服务器混村经过的gzip压缩的页面
gzip_vary   on;


# 配置转发到8700 端口
upstream  huida{
  server  127.0.0.1:8700;
}

server {
    listen       80;
    listen       443 ssl;  					 # 配置https,监听433端口
    server_name  xxx.xxx;                    # 注意如果申请了域名配置再此,如果配置了证书才能https访问

    error_page 405 =200 $request_uri;
   
    ssl_certificate  cert/7629385.pem;
    ssl_certificate_key cert/7629385.key;

    client_max_body_size 50m;
    underscores_in_headers on;

    proxy_set_header Host      $host;
    proxy_set_header  X-Real-IP        $remote_addr;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    index index.htm index.html index.php;

    proxy_connect_timeout 60; #建立tcp协议的连接时间
    proxy_send_timeout 60;    #发送接口的时间
    proxy_read_timeout 60;    #读取时间(接口响应时间)

    #charset koi8-r;
    #access_log  logs/host.access.log  main;

    
	# 配置转发
  location /huida/ {

             add_header 'Access-Control-Allow-Origin' '*';
             add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
             add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,Token';
             add_header 'Access-Control-Expose-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,Token';

          proxy_pass http://huida;
     }


    location / {
        root   /home/html/huida/;
        index  index.html index.htm;
    }


    #静态文件交给nginx处理 代理前端静态资源
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
    {

     root /home/html/huida/;
            expires 12;
    }

    #静态文件交给nginx处理
    location ~ .*\.(js|css)?$
    {
      root /home/html/huida/;

        expires 15d;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening 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's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}


# another virtual host using 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 ssl;
# server_name 本地主机;    # ssl_certificate cert.pem;     # ssl_certificate_key cert.key;     # ssl_session_cache 共享:SSL:1m;     # ssl_session_timeout 5m;     # ssl_ciphers HIGH:!aNULL:!MD5;     # ssl_prefer_server_ciphers 开启;    # 位置 / {     # 根 html;     # 索引 index.html index.htm;     # }     #}     } ```
0人推荐
随时随地看视频
慕课网APP