相关疑难解决方法(0)

PHP:如何阻止对文件的直接URL访问,但是仍然允许登录用户下载它?

我有一个网站,用户应该可以登录并听一首歌(一个自创的mp3).我想这样做,以便登录用户可以监听/下载/无论如何,该文件应驻留在服务器上(不存储在MySQL数据库中),但不能被具有该路径的非用户访问到URL.

例如:说我的mp3位于mysite.com/members/song.mp3如果您已登录,您应该能够看到mysite.com/members/index.php页面,该页面将允许访问该歌曲. mp3文件.如果您尚未登录,则mysite.com/members/index.php页面将不会显示song.mp3文件,并且直接链接到该文件不应授予访问权限.

我很确定这是通过htaccess完成的,我已经做了很多谷歌搜索,并在这里搜索.我找到的两个最接近的答案是这个htaccess指南http://perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/和这个StackOverflow问题阻止通过http直接访问文件但允许php脚本访问但是既不回答我的所有问题也不符合我的标准.我错过了什么?

php .htaccess access-control hotlinking

37
推荐指数
2
解决办法
6万
查看次数

组织php项目文件

我是网络开发的新手,最近我用Php/Mysql创建了一个Web应用程序,现在我想把它放到服务器上,但我觉得我的文件组织很糟糕(非常糟糕).

我的项目文件结构看起来像那样

|--XAMPP htdocs
    |--MyProject
        |--config.php
        |--functions.php
        |--header.php
        |--nav.php
        |--index.php
        |--js   
        |--css
        |--images
        |--register
            |--index.php
        |--messages
            |--inbox
                |--index.php
                |--handle_inbox.php
            |--outbox
                |--index.php
                |--handle_outbox.php
            |--trash
                |--index.php
                |--handle_trash.php
            |--uploaded_files
        |-- ...

我能做些什么来改善这种结构并使其安全?

php project-organization

7
推荐指数
2
解决办法
1万
查看次数

允许在我网站的 <video> 元素中播放视频,但不允许通过直接链接播放

我使用了以下技巧:

首先,我禁用了右键单击以防止用户使用save asget link使用此 HTML5:

<body oncontextmenu="return false;">
</body>
Run Code Online (Sandbox Code Playgroud)

第二:我使用的controlsList="nodownload",但它工作正常,仅适用于Chrome 58+按照问题这个,以后我可能会考虑海关所示的控制这里

<video width="512" height="380" controls controlsList="nodownload"
       poster="https://archive.org/download/WebmVp8Vorbis/webmvp8.gif" >
      <source src="videos/289522.mp4" type="video/mp4">
      <source src="videos/289522.ogv" type="video/ogg">
      <source src="videos/289522.webm" type="video/webm">
      Your browser doesn't support HTML5 video tag.
</video>
Run Code Online (Sandbox Code Playgroud)

我仍然需要防止用户下载它,以防他通过其他方式获得链接,我发现了一些关于 using 的讨论.htaccess,所以我在videos文件夹中创建了一个,并尝试了这个:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://my.domain.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.my.domain.com/.*$ [NC]
RewriteRule .(mp4|mp3|avi)$ - [F]`
Run Code Online (Sandbox Code Playgroud)

并用作替代方式,此:

<Files "reminder.php">
        Order Deny,Allow
        Deny from all
        Allow from http://my.domain.com/
        Allow from http://my.domain.com/
</Files> …
Run Code Online (Sandbox Code Playgroud)

html php .htaccess

6
推荐指数
1
解决办法
6109
查看次数