😶🌫️Nginx官网地址
❤️❤️💕💕🐾🐾
😶🌫️我的学习笔记(github)
区块链技术(也称之为分布式账本技术),是一种互联网数据库技术,其特点是去中心化,公开透明,让每一个人均可参与的数据库记录
❤️💕💕关于区块链技术,可以关注我,共同学习更多的区块链技术。博客http://nsddd.top
[toc]
[root@mail nginx]# cd conf/
[root@mail conf]# ls
enable-php-00.conf enable-php-72.conf enable-php-90.conf koi-win rewrite
enable-php-52.conf enable-php-73.conf enable-php-91.conf luawaf.conf scgi_params
enable-php-53.conf enable-php-74.conf enable-php.conf mime.types scgi_params.default
enable-php-54.conf enable-php-80.conf fastcgi.conf mime.types.default uwsgi_params
enable-php-55.conf enable-php-81.conf fastcgi.conf.default nginx.conf uwsgi_params.default
enable-php-56.conf enable-php-82.conf fastcgi_params nginx.conf.default vhost
enable-php-70.conf enable-php-83.conf fastcgi_params.default pathinfo.conf win-utf
enable-php-71.conf enable-php-84.conf koi-utf proxy.conf
[root@mail conf]# vim nginx.conf
由三个部分组成
第一部分:全局块
第二部分:events块
第三部分:http块**(配置最频繁的部分)**
worker_processes auto;
这个是Nginx服务器并发处理服务的关键配置,值越大,表示可以支持的和并发处理量越多processes :过程
worker_connections 51200;
表示支持的最大连接数
全局块:主要是设置一些影响nginx整体服务运行的配置服务
user www www;
worker_processes auto;
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
user www www;
#nginx的启动用户
worker_processes auto;
#worker这个是启动的数目,对应的cpu内核数
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200; #表示支持的最大连接数
multi_accept on;
}
http
{
include mime.types;
#include luawaf.conf;
#头文件,包含其他的文件 mime.types是文件类型,传输http数据的时候,会在里面加入type,否则浏览器不知道怎么解析文件类型
#sendifile on;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
#保持连接
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
#每一个服务,一个nginx可以开多个主机
#所以叫虚拟主机。vhost
server
{
listen 888;
#不同的serve的端口不一样
server_name phpmyadmin; #域名、主机名称(localhost)
index index.html index.htm index.php;
root /www/server/phpmyadmin;
location ~ /tmp/ {
return 403;
}
#error_page 404 /404.html;
include enable-php.conf;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
#域名后跟着子目录或者lu
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /\.
{
deny all;
}
error_page 500 502 503 504 /50x.html;
#如果报错的话,就报500 502,而且错误文件在50.html中
access_log /www/wwwlogs/access.log;
}
include /www/server/panel/vhost/nginx/*.conf;
}
http块可以包括http块、server块
http
{
include mime.types;
#include luawaf.conf;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
首先配置支持 HTTPS 必须让 Nginx 开启 http_ssl_module
模块,点击查看nginx编译安装参数 ,可以使用nginx -V
查看是否开启TLS SNI support enabled
。
购买/生成 SSL 证书,可以使用免费的证书,比如:Let's Encrypt,免费好用的 HTTPS 证书 。
# 配置 HTTPS
# 配置个http的站点,用来做重定向,当然如果你不需要把 HTTP->HTTPS 可以把这个配置删了
server {
listen 80;
# 配置域名
server_name www.xxoo.com xxoo.com;
# 添加 STS, 并让所有子域支持, 开启需慎重
add_header strict-transport-security 'max-age=31536000; includeSubDomains; preload';
# 配置让这些 HTTP 的访问全部 301 重定向到 HTTPS 的
rewrite ^(.*) https://www.xxoo.com$1 permanent;
}
# 配置 HTTPS
server {
# 配置域名
server_name www.xxoo.com xxoo.com;
# https默认端口
listen 443;
# 添加STS, 并让所有子域支持, 开启需慎重
add_header strict-transport-security 'max-age=31536000; includeSubDomains; preload';
# https配置
ssl on;
ssl_certificate /xxoo/www.xxoo.com.crt;
ssl_certificate_key /xxoo/www.xxoo.com.key;
# 其他按正常配置处理即可...
}
注意,这里证书的格式是
.crt
的。