我想在一个域上同时运行WordPress和YOURLS。
由于两者需要以不同的方式处理try_files,因此它们需要不同的URL指令。WordPress位于域(domain.tld)的根上,而YOURLS则安装在/go/目录中。
尽管有两个定位规则,但我在YOURLS生成的任何链接(例如domain.tld/g/linkname,都是重定向到外部URL)上获得404,尽管我可以访问YOURLS管理后端。
据我所知,声明位置规则(一个用于/go/,一个用于/)应该足够让Nginx以不同的方式处理直接URLS和/go/ URLS我的想法有什么问题吗?
我已经在Nginx配置中添加了以下内容:
location / {
try_files $uri $uri/ /index.php?$args;
}
location /go/ {
try_files $uri $uri/ /go/yourls-loader.php$is_args$args;
}我遗漏了什么?
发布于 2021-05-25 11:22:44
不确定这是否会对你有直接的帮助。我试着用一个指向你的docker的子目录做一个类似的配置,在多次点击和试用之后,下面的设置对我有效。也许其中的某一部分可能对某些人有用。
location ~ (\/shorturl\/.*) {
if ( $uri ~ ^\/shorturl\/((admin|images|js|css)(\/?)(.*)|.*.(\.html|\.php)) ) {
rewrite /shorturl(/?)(.*) $1$2 break;
}
rewrite (\/shorturl\/.*) $1 break;
proxy_pass http://localhost:9091;
proxy_redirect / /shorturl/;
}附言:我知道如果是邪恶的,请根据您的需要添加代理标头!
https://stackoverflow.com/questions/66012636
复制相似问题