mirror of
https://github.com/mail-in-a-box/mailinabox.git
synced 2026-03-12 17:07:23 +01:00
Fix url redirection when a remote nextcloud is used so that .well-known/caldav and carddav work properly, as well as the redirecting /cloud to the remote Nextcloud. Since the nginx config is replaced by the management daemon whenever a new domain is added, this change adds a hooking mechanism for setup mods.Fix url redirection when a remote nextcloud is in use. This corrects redirection for /.well-known/caldav, /.well-known/carddav and /cloud to send the client to the remote nextcloud. This requires an nginx configuration change, and since the nginx config is replaced by the management daemon whenever a new domain is added, this change adds a hooking mechanism for setup mods allowing them to intercept and modify the resultant nginx config.
This commit is contained in:
@@ -57,6 +57,10 @@ rest_urlencoded() {
|
||||
|
||||
local data=()
|
||||
local item output onlydata="false"
|
||||
|
||||
if [ ! -z "$auth_user" ]; then
|
||||
data+=("--user" "${auth_user}:${auth_pass}")
|
||||
fi
|
||||
|
||||
for item; do
|
||||
case "$item" in
|
||||
@@ -86,9 +90,9 @@ rest_urlencoded() {
|
||||
esac
|
||||
done
|
||||
|
||||
echo "spawn: curl -w \"%{http_code}\" -X $verb --user \"${auth_user}:xxx\" ${data[@]} $url" 1>&2
|
||||
echo "spawn: curl -w \"%{http_code}\" -X $verb ${data[@]} $url" 1>&2
|
||||
# pipe through 'tr' to avoid bash "warning: command substitution: ignored null byte in input" where curl places a \0 between output and http_code
|
||||
output=$(curl -s -S -w "%{http_code}" -X $verb --user "${auth_user}:${auth_pass}" "${data[@]}" $url | tr -d '\0')
|
||||
output=$(curl -s -S -w "%{http_code}" -X $verb "${data[@]}" $url | tr -d '\0')
|
||||
local code=$?
|
||||
|
||||
# http status is last 3 characters of output, extract it
|
||||
|
||||
Reference in New Issue
Block a user