【问题标题】:start downloading file with ajax开始使用 ajax 下载文件
【发布时间】:2009-10-15 09:49:15
【问题描述】:

我喜欢用 ajax 访问我的 download.php,这样我就可以在 div 中显示一个小的下载屏幕,但是

我的 htaccess 文件中有这个,基本上是说拒绝所有页面的外部访问。 当我试图访问我的 download.php 文件时,我忘记了它

window.location = urlnieuw

是否有解决此问题的方法,并且仍然保护 download.php 以防止直接访问?

或者只是触发一个jquery事件,当链接被点击时

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 

编辑 htaccess 不会阻止直接访问文件

谢谢你的广告,理查德

【问题讨论】:

    标签: php ajax .htaccess download


    【解决方案1】:

    为什么你认为你的 mod_rewrite 规则会阻止远程访问?给定的规则只会将无法直接映射到现有文件或目录的任何 URL 的请求重写到 index.php。对谁可以访问没有限制。

    【讨论】:

    • 我想通了,是我自己造成的,我以为是htaccess。下一个问题是如何防止直接访问文件,包括。但我会先搜索,因为我不熟悉 htaccess 文件。
    • 您可以测试是否请求了.phpRewriteCond %{THE_REQUEST} ^[A-Z]+\ /[^?\ ]*\.php[/?\ ]
    • 谢谢,我不再期待答案了 我到处寻找我也尝试过的地方,但它导致了一些奇怪的无休止的循环 RewriteCond %{HTTP_REFERER} !^$ RewriteCond % {HTTP_REFERER} !^http://(www\.)?domain/.*$ [NC] RewriteRule \.(gif|jpg|php|html|png)$ domain.nl/images/logo.gif [R,L] 你的规则不干扰 index.php
    • 你能不能让它只影响包含文件夹中的包含文件我猜在你的例子中我可以用文件名替换请求。多个文件用逗号分隔|问号|。我的键盘又来了。
    • @Richard:您可以使用此规则以 404 响应 /include/…:RewriteRule ^include($|/) - [L,R=404] 的请求
    猜你喜欢
    • 2011-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-01
    • 2012-06-25
    • 2014-12-28
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    相关资源
    最近更新 更多