nginx配置

1.上篇博客介绍nginx的安装,安装玩的nginx应该是这样的

2.配置nginx时,去执行日志的创建,再去创建每一个配置作为一个单独的文件

mkdir -p /data0/logs

mkdir -p /data0/logs/cms

mkdir -p /data0/logs/api

mkdir -p /data0/dk/cms

mkdir -p /data0/dk/api

touch /data0/logs/nginx_error.log;

touch /data0/logs/nginx.pid;

mkdir /usr/local/nginx/conf/vhost

touch /usr/local/nginx/conf/vhost/test.conf

touch /data0/logs/api.access.log

touch /data0/logs/cms.access.log

这两行的代码是为了一个配置就用一个配置文件,这样更方便管理维护,我可以创建test.conf,也可以创建test1.conf

3.执行代码(vim nginx.conf),删除以前代码,复制以下代码

user  www www;
worker_processes auto;

#日志目录你可以自己随便定义

worker_rlimit_nofile 102400;
error_log /data0/logs/nginx_error.log;
pid /data0/logs/nginx.pid;

events {
  use epoll;
  worker_connections 20480;
  multi_accept on;
}

http {
include mime.types;
default_type application/octet-stream;
charset utf-8;
server_names_hash_bucket_size 256;
client_header_buffer_size 256k;
large_client_header_buffers 4 256k;
client_header_timeout 300s;
client_body_timeout 300s;
client_max_body_size 100m;
server_name_in_redirect off;
log_format main '$remote_addr - $remote_user [$time_local] $request $status $body_bytes_sent $host $upstream_addr $upstream_response_time $http_user_agent $http_referer $gzip_ratio';
access_log off;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
keepalive_timeout 300;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;


gzip on;
gzip_min_length 1k;
gzip_buffers 96 8k;
gzip_comp_level 5;
gzip_vary on;
#gzip_static on;
gzip_http_version 1.1;
gzip_disable "MSIE [1-6]." "Mozilla/4.0[678]";
gzip_types text/xml text/plain text/css application/javascript application/x-javascript application/rss+xml image/jpeg image/gif image/png;

open_file_cache max=200000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;

include vhost/*.conf;
}

4.接下来配置每个单独的配置文件,(cd vhost , vim test.conf),这个只是默认http的,https的把80端口换成443,在去添加https的证书

server {
listen 80 default ;
root html;
charset utf-8;
access_log /data0/logs/api.access.log main buffer=64k flush=15s;
resolver_timeout 10s;

#add_header Access-Control-Allow-Origin *;
add_header X-Frame-Options DENY;

location /test/test/{
index index.php;
if (!-e $request_filename) {
rewrite ^/(.*)$ /test/test/index.php last;
break;
}
}

location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

}

5.先用这个命令杀掉nignx进程,ps -ef | grep nginx | awk {'print $2'} | xargs kill -9

再去启动nginx,/usr/local/nginx/sbin/nginx

重启命令nginx,/usr/local/nginx/sbin/nginx -s reload

停止命令nginx,/usr/local/nginx/sbin/nginx -s stop

原文地址:https://www.cnblogs.com/dyj--php/p/9298491.html