来访~102006 文章~106 评论~25
2022年10月20日 作者 张临志

一台服务器使用两个域名发布两个项目nginx配置

最近在服务器上部署了一个用来开放后台数据接口jeecg boot框架的平台网站,然后新增了个http://data.zhanglinzhi.com的二级域名,使用81端口转发,进行了nginx的配置优化,如下:

user www-data;
worker_processes auto;
pid /run/nginx.pid;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
proxy_hide_header X-Powered-By;
proxy_hide_header Server;

##
# SSL Settings
##
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;

##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

# gzip config
gzip on;
gzip_min_length 1k;
gzip_comp_level 9;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary on;
gzip_disable “MSIE [1-6]\.”;

##
# Virtual Host Configs
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
server {
listen 443 ssl;
server_name bbb.com;
root /xxx/xxx;
index index.html index.htm index.php;
ssl_certificate /xxx/xxx.pem;
ssl_certificate_key /xxx/xxx.key;
ssl_session_timeout 5m;
ssl_ciphers xxx;
ssl_protocols xxx
ssl_prefer_server_ciphers on;

access_log /var/log/nginx/zhang-access.log;
error_log /var/log/nginx/zhang-error.log;

location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~* \.(ini|docx|txt|doc)$ {
deny all;
}
location ~* \.html$ {
deny all;
}
}

server {
listen 81;
server_name aaa.com;
location / {
root /xxx/xxx/xxx;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.html?s=$1 last;
break;
}
}
}
server {
listen 80;
server_name aaa.com;
location / {
proxy_pass http://localhost:81; # 转发
}
}
server {
listen 80;
server_name bbb.com;
location / {
proxy_pass http://localhost:443;
}

return 301 https://www.bbb.com$request_uri;

}
}