更新文件: rclonemount.sh, runembysim.sh, nginx/conf.d/emby.conf, nginx/conf.d/externalUrl.js

This commit is contained in:
ZJP Monitor
2025-07-29 00:02:10 +08:00
parent 28a03a58d9
commit ee435e6fd0
4 changed files with 33 additions and 9 deletions

View File

@ -36,6 +36,7 @@ server{
# 使用 JavaScript 模块处理响应
#js_body_filter rewritePlaybackInfo;
js_header_filter addExternalUrl.HeaderFilter;
}
location ~* /videos/(\d+)/original {

View File

@ -213,9 +213,10 @@ const redirectUrl = (r) => {
r.return(302, link);
}
const rewritePlaybackInfo = async (r, data, flags) => {
//const rewritePlaybackInfo = (r) => {
// 获取响应体
//let body = r.responseText;
r.error("Original response body: " + r.responseText);
//let data = r.responseText;
//r.error("Original response body: " + r.responseText);
if (flags.last === false) {
oriData += data;
r.error(`flags.last: ${flags.last} , data.length: ${data.length}`);
@ -244,14 +245,22 @@ const rewritePlaybackInfo = async (r, data, flags) => {
}
// 返回修改后的 JSON
// r.return(200, JSON.stringify(data));
//r.return(200, JSON.stringify(data));
// } catch (e) {
// // 如果 JSON 解析失败,返回原始响应并记录错误
// r.warn('Failed to parse JSON: ' + e);
// r.return(200, body);
// }
// r.error(`addUrldata.length: ${JSON.stringify(data).length}`)
// r.error(`addUrldata.length: ${JSON.stringify(data).length}`);
//
// Remove Content-Length header
delete r.headersOut['Content-Length'];
// Set Transfer-Encoding to chunked
r.headersOut['Transfer-Encoding'] = 'chunked';
r.sendBuffer(JSON.stringify(data), flags);
//r.sendBuffer(JSON.stringify(data));
r.done();
}
function cacheRedirect(r) {

View File

@ -19,6 +19,7 @@ progdir=$(pwd)
num=$(mount |grep "/external"|wc -l)
if [ $num -lt 1 ]; then
mkdir -p external >/dev/null 2>&1
mkdir -p emby.external >/dev/null 2>&1
mount -o bind,shared emby.external external
echo "mount emby.external to external to mark shared"
fi

View File

@ -20,10 +20,10 @@ progdir=$(pwd)
SCRIPT_NAME=$(basename "$0")
# 检查是否有相同的脚本在运行(排除当前进程)
if pgrep -f "$SCRIPT_NAME" | grep -v "$$" > /dev/null; then
echo "脚本已在运行,退出..."
exit 1
fi
#if pgrep -f "$SCRIPT_NAME" | grep -v "$$" > /dev/null; then
# echo "脚本已在运行,退出..."
# exit 1
#fi
mkdir -p emby.tmp emby.cache >/dev/null 2>&1
chmod 777 emby.tmp emby.cache
@ -34,6 +34,7 @@ chmod 777 emby.tmp emby.cache
num=$(mount |grep "/external"|wc -l)
if [ $num -lt 1 ]; then
mkdir external >/dev/null 2>&1
mkdir emby.external >/dev/null 2>&1
mount -o bind,shared emby.external external
echo "mount emby.external to external to mark shared"
fi
@ -102,10 +103,22 @@ if [ $? -eq 0 ]; then
sed -i -e "s|- .*external:/external|- ${progdir}/external:/external|g" docker-compose.yml
sed -i -e "s|- .*emby.tmp:/tmp|- ${progdir}/emby.tmp:/tmp|g" docker-compose.yml
sed -i -e "s|- .*emby.cache:/cache|- ${progdir}/emby.cache:/cache|g" docker-compose.yml
docker stop embyUrl-nginx
docker stop embysim
docker-compose down
docker-compose up -d
else
docker stop embyUrl-nginx
docker rm embyUrl-nginx
docker run -d \
--name embyUrl-nginx \
-v $progdir/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v $progdir/nginx/conf.d:/etc/nginx/conf.d \
-v $progdir/emby.tmp:/tmp \
-p 8096:80 \
--restart on-failure \
nginx:alpine
docker stop embysim
docker rm embysim
docker run -d \
@ -116,7 +129,7 @@ else
-v $progdir/emby.tmp:/tmp \
-v $progdir/emby.cache:/cache \
--device /dev/dri:/dev/dri \
-p 8096:8096 \
-p 8097:8096 \
-p 8920:8920 \
--env UID=1000 \
--env GID=100 \