Copy link to clipboard
Copied
We have FMS interactive configured to do RTMP and HLS streaming. However the clips still can be downloaded through http://domain.name.com/vod folder. Is there a way to disable progressive downloads? While at it is there a way to disable HDS also? I want to allow HLS and RTMP only.
In that case just change HttpStreamingContentPath to correct location of the media folder under hls-vod tag. like this:-
<Location /hls-vod>
HLSHttpStreamingEnabled true
HLSMediaFileDuration 8000
HttpStreamingContentPath "<application-folder-path>/vod/media"
HLSFmsDirPath ".."
HLSJITConfAllowed true
Options -Indexes FollowSymLinks
</Location>
Restart Apache.
Copy link to clipboard
Copied
Reason for your data available for progressive dowload is because its there in webroot. Webroot/<extendend-path> is by default available to any client via http://server-name/<extendend-path> unless you have taken measures to protect it inside Apache's httpd.conf.
You can do one thing. Keep your content outside Apache's webroot. Say C:/myvideos/. for example there is a video there sample.f4v i.e C:/myvideos/sample.f4v
Now you can change the location "HttpStreamingContentPath" pointing to from "../webroot/vod" to "c:/myvideos/" under hls-vod inside httpd.conf (Apache/conf)
<Location /hls-vod>
HLSHttpStreamingEnabled true
HLSMediaFileDuration 8000
HttpStreamingContentPath "C:/myvideos/"
HLSFmsDirPath ".."
HLSJITConfAllowed true
Options -Indexes FollowSymLinks
</Location>
Or you can disable(modify) content availibilty by making appropriate changes unders in httpd.conf
<Directory "../webroot">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
To disable HDS-Live, set "HttpStreamingEnabled" to false under hds-live location directive
<Location /hds-live>
HttpStreamingEnabled false
To disable HDS-vod, set "HttpStreamingJITPEnabled" to false under hds-vod location directive
<Location /hds-vod>
HttpStreamingJITPEnabled false
To disable HDS-vod offline fragmented content, set "HttpStreamingEnabled" to false under vod location directive
<Location /vod>
HttpStreamingEnabled false
You need to restart the Apache server after making the changes to get them reflected next time..
Hope it help
Copy link to clipboard
Copied
Will this work?
<Directory "../webroot">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Deny from all
</Directory>
Copy link to clipboard
Copied
I guess, yes .. but it may deny all request to webroot.. Even everything beyond FMS usage like your own hosted pages, FMS default index.html will not be allowed.. I hope you underrstand what all you are restricting as per your usage/requirement..
Copy link to clipboard
Copied
Ahh, yes you are right. This is not good.
I'm looking at VOD_DIR and VOD_COMMON_DIR options in fms.ini now. Tell me, if I do the following:
Put all my files under fms/applications/vod/media instead of fms/webroot/vod will HLS and RTMP work? Or do I need additional adjustments in httpd.conf?
Copy link to clipboard
Copied
In that case just change HttpStreamingContentPath to correct location of the media folder under hls-vod tag. like this:-
<Location /hls-vod>
HLSHttpStreamingEnabled true
HLSMediaFileDuration 8000
HttpStreamingContentPath "<application-folder-path>/vod/media"
HLSFmsDirPath ".."
HLSJITConfAllowed true
Options -Indexes FollowSymLinks
</Location>
Restart Apache.
Copy link to clipboard
Copied
Thank you. This works.
Copy link to clipboard
Copied
Note for others trying to achieve the same. You can also disable progressive downloads by adding the following to your httpd.conf:
<Location /vod>
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Deny from all
</Location>
This way only links that start with http://yourdomain.com/vod will be disabled and you can still have access to Administration Console.