* now 302s properly (WiP?)

merge-requests/3/merge
Dominika 2021-12-19 03:36:00 +01:00
parent 0793241a3b
commit 5be51165e2
1 changed files with 22 additions and 15 deletions

View File

@ -1,14 +1,21 @@
if [[ "${cfg[unbuffered]}" != true ]]; then
printf "HTTP/1.0 200 OK
${cfg[extra_headers]}\r\n"
else
echo "uh oh - we're running unbuffered" > /dev/stderr
fi
if [[ ${r[status]} == 200 ]]; then
get_mime "${r[uri]}"
[[ "$mimetype" != '' ]] && printf "content-type: $mimetype\r\n"
fi
function __headers() {
if [[ "${cfg[unbuffered]}" != true ]]; then
if [[ "${r[headers]}" != *'Location'* ]]; then
printf "HTTP/1.0 200 OK\r\n"
else
printf "HTTP/1.0 302 aaaaa\r\n"
fi
[[ "${r[headers]}" != '' ]] && printf "${r[headers]}"
printf "${cfg[extra_headers]}\r\n\r\n"
else
echo "uh oh - we're running unbuffered" > /dev/stderr
fi
if [[ ${r[status]} == 200 ]]; then
get_mime "${r[uri]}"
[[ "$mimetype" != '' ]] && printf "content-type: $mimetype\r\n"
fi
}
if [[ ${r[status]} == 212 ]]; then
if [[ "${cfg[unbuffered]}" == true ]]; then
@ -16,7 +23,7 @@ if [[ ${r[status]} == 212 ]]; then
else
temp=$(mktemp)
source "${r[view]}" > $temp
[[ "${r[headers]}" != '' ]] && printf "${r[headers]}\r\n" || printf "\r\n"
__headers
cat $temp
rm $temp
fi
@ -24,21 +31,21 @@ if [[ ${r[status]} == 212 ]]; then
elif [[ "${cfg[php_enabled]}" == true && "${r[uri]}" =~ ".php" ]]; then
temp=$(mktemp)
php "${r[uri]}" "$(get_dump)" "$(post_dump)" > $temp
[[ "${r[headers]}" != '' ]] && printf "${r[headers]}\r\n" || printf "\r\n"
__headers
cat $temp
rm $temp
elif [[ "${cfg[python_enabled]}" == true && "${r[uri]}" =~ ".py" ]]; then
temp=$(mktemp)
python "${r[uri]}" "$(get_dump)" "$(post_dump)" > $temp
[[ "${r[headers]}" != '' ]] && printf "${r[headers]}\r\n" || printf "\r\n"
__headers
cat $temp
rm $temp
elif [[ "${r[uri]}" =~ \.${cfg[extension]}$ ]]; then
temp=$(mktemp)
source "${r[uri]}" > $temp
[[ "${r[headers]}" != '' ]] && printf "${r[headers]}\r\n" || printf "\r\n"
__headers
if [[ "${cfg[encoding]}" != '' ]]; then
iconv $temp -f UTF-8 -t "${cfg[encoding]}"
else