[英]php nginx X-Accel-Redirect headers
我有一個關於使用nginx保護帶有靜態文件的文件夾的問題,所以基本上我在nginx設置上有根文件夾:
/home/rise/rises/wwwdir
安全文件夾是:
/home/rise/rises/videop
如我們所見,我將該文件夾移到了根文件夾之外,以防止/僅允許根據條件查看
當我第一次發布前進行搜索時,我讀到了一些訪問根外部videop文件夾的想法,我需要在nginx conf中創建這樣的別名,並進行內部訪問
location /videop {
root /home/rise/rises/;
internal;
}
但是我在PHP方面要加載視頻...
$aliasedFile = '/videop/5_.m3u8';
$filename = '5_.m3u8';
header("Content-Description: File Transfer");
header("Content-Type application/x-mpegURL ");
header('Content-Disposition: attachment; filename='.$filename.'');
header('X-Accel-Redirect: '. $aliasedFile);
readfile($aliasedFile);
我想念什么嗎?
您的root
指令的URL末尾帶有/
,后跟/
,因此請使用:
location /videop {
root /home/rise/rises;
internal;
}
您的PHP的標頭格式不正確,在Content-Type
之后應包含:
PHP不應該包含主體。 readfile
錯誤。 PHP的全部目的是發出一個內部重定向,該重定向由nginx
拾取。 因此,PHP應該僅返回header
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.