系统环境
Nginx
PHP5.3.28
Onethink、Thinkphp3.2.3
项目是由第三方开发的, 也没有规范的文档, 现在由于APP升级旧版的APP也要保留使用.
目前结构目录
api.xxx.com api1.xxx.com 由二级域名对应每个版本 ps: 项目直接复制 ~
这样可以分出来,但每发一个版本就要增加一个二级域名. 再说域名运营对二级域名有限制.
服务目录结构
wwwroot
api.xxx.com
v1
项目版本1
v2
项目版本2
api.xxx.com/v1/Home/Order/create 指向到目录v1中
api.xxx.com/v2/Home/Order/create 指向到目录v2中
配置nginx
server {
listen 80;
server_name api.xxx.com;
location /v1/ {
proxy_pass http://127.0.0.1:8001/;
proxy_redirect http://127.0.0.1:8001/ /v1/;
proxy_set_header Host $host;
}
location /v2/ {
proxy_pass http://127.0.0.1:8002/;
proxy_redirect http://127.0.0.1:8002/ /v2/;
proxy_set_header Host $host;
}
}
server {
listen 8001;
allow 127.0.0.1; # 仅允许本地访问8001端口(如有必要)
deney all;
server_name api.xxx.com;
root api.xxx.com/v1/;
# php 相关的fastcgi配置
}
server {
listen 8002;
allow 127.0.0.1; # 仅允许本地访问8001端口(如有必要)
deney all;
server_name api.xxx.com;
root api.xxx.com/v2/;
# php 相关的fastcgi配置
}