#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; #cms页面预览 upstream cms_server_pool{ server 127.0.0.1:31001 weight=10; } #图片服务 upstream img_server_pool{ server 192.168.25.133:80 weight=10; } #静态资源服务 upstream static_server_pool{ server 127.0.0.1:91 weight=10; } #前端动态门户 upstream dynamic_portal_server_pool{ server 127.0.0.1:10001 weight=10; } #后台搜索(公开api) upstream search_server_pool{ server 127.0.0.1:40100 weight=10; } #前端ucenter upstream ucenter_server_pool{ server 127.0.0.1:13000 weight=10; } #学习服务 upstream learning_server_pool{ server 127.0.0.1:40600 weight=10; } #认证服务 upstream auth_server_pool{ server 127.0.0.1:40400 weight=10; } #微服务网关 upstream api_server_pool{ server 127.0.0.1:50201 weight=10; } #前端教学管理 upstream teacher_server_pool{ server 127.0.0.1:12000 weight=10; } #文件服务 upstream filesystem_server_pool{ server 127.0.0.1:22100 weight=10; } #媒资服务 upstream media_server_pool{ server 127.0.0.1:31400 weight=10; } server { listen 80; server_name www.xuecheng.com; ssi on; ssi_silent_errors on; location / { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/; index index.html index.htm; } location /static/company/ { proxy_pass http://static_server_pool; } location /static/teacher/ { proxy_pass http://static_server_pool; } location /static/stat/ { proxy_pass http://static_server_pool; } location /course/detail/ { proxy_pass http://static_server_pool; } #前端门户课程搜索 location ^~ /course/search { proxy_pass http://dynamic_portal_server_pool; } #后端搜索服务 location /openapi/search/ { proxy_pass http://search_server_pool/search/; } #分类信息 location /static/category/ { proxy_pass http://static_server_pool; } #开发环境webpack定时加载此文件 location ^~ /__webpack_hmr { proxy_pass http://dynamic_portal_server_pool/__webpack_hmr; } #开发环境nuxt访问_nuxt location ^~ /_nuxt/ { proxy_pass http://dynamic_portal_server_pool/_nuxt/; } #静态资源,包括系统所需要的图片,js、css等静态资源 location /static/img/ { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/img/; } location /static/css/ { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/css/; } location /static/js/ { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/js/; } location /static/plugins/ { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/plugins/; add_header Access-Control-Allow-Origin http://ucenter.xuecheng.com; add_header Access-Control-Allow-Credentials true; add_header Access-Control-Allow-Methods GET; } location /plugins/ { alias C:/CODE/JAVA/xczx/XcEduUI/xc-ui-pc-static-portal/plugins/; add_header Access-Control-Allow-Origin http://ucenter.xuecheng.com; add_header Access-Control-Allow-Credentials true; add_header Access-Control-Allow-Methods GET; } #页面预览 location /cms/preview/ { proxy_pass http://cms_server_pool/cms/preview/; } #认证 location ^~ /openapi/auth/ { proxy_pass http://auth_server_pool/auth/; } #微服务网关 location /api { proxy_pass http://api_server_pool; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } #学成网图片服务 server { listen 80; server_name img.xuecheng.com; #个人中心 location /group1 { proxy_pass http://img_server_pool; } #location /group2 { # proxy_pass http://img_server_pool; #} } #学成网静态资源 server { listen 91; server_name localhost; #公司信息 location /static/company/ { alias C:/CODE/JAVA/xczx/XcEduUI/course-static/static/company/; } #老师信息 location /static/teacher/ { alias C:/CODE/JAVA/xczx/XcEduUI/course-static/static/teacher/; } #统计信息 location /static/stat/ { alias C:/CODE/JAVA/xczx/XcEduUI/course-static/static/stat/; } location /course/detail/ { alias C:/CODE/JAVA/xczx/XcEduUI/course-static/static/course/detail/; } #分类信息 location /static/category/ { alias C:/CODE/JAVA/xczx/XcEduUI/course-static/static/category/; } } #学成网媒体服务代理 map $http_origin $origin_list{ default http://www.xuecheng.com; "~http://www.xuecheng.com" http://www.xuecheng.com; "~http://ucenter.xuecheng.com" http://ucenter.xuecheng.com; } #学成网媒体服务代理 server { listen 80; server_name video.xuecheng.com; location /video/ { proxy_pass http://video_server_pool; add_header Access-Control-Allow-Origin $origin_list; #add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Credentials true; add_header Access-Control-Allow-Methods GET; } } #媒体服务 upstream video_server_pool{ server 127.0.0.1:90 weight=10; } #学成网媒体服务 server { listen 90; server_name localhost; #视频存放目录 location /video/ { alias C:/Java_Soft/xczx/video/; } } #学成网用户中心 server { listen 80; server_name ucenter.xuecheng.com; #个人中心 location / { proxy_pass http://ucenter_server_pool; } location /openapi/search/ { proxy_pass http://search_server_pool/search/; } #学习服务 location ^~ /api/learning/ { proxy_pass http://learning_server_pool/learning/; } #认证 location ^~ /openapi/auth/ { proxy_pass http://auth_server_pool/auth/; } } #学成网教学管理中心 server { listen 80; server_name teacher.xuecheng.com; #个人中心 location / { proxy_pass http://teacher_server_pool; } location /api { proxy_pass http://api_server_pool; } location /filesystem { proxy_pass http://filesystem_server_pool; } #媒资管理 location ^~ /api/media/ { proxy_pass http://media_server_pool/media/; } #认证 location ^~ /openapi/auth/ { proxy_pass http://auth_server_pool/auth/; } } }