.htaccess允许localhost问题

时间:2009-08-15 06:02:33

标签: .htaccess localhost

情况......

我计划运行一个用于备份数据库的cron作业。由于php的安装方式,我不得不使用lynx来执行正在执行备份的php脚本。

因为这个脚本必须存在于我的public_html文件夹中,所以我想拒绝所有请求,除了直接来自我的服务器的请求(即:localhost)。另外,我假设我将来自的ip是127.0.0.1。我不确定这是否属实,但我想不出在这种情况下我的ip会是什么。我是否正确运行cron作业并从127.0.0.1命中脚本?

这是我的.htaccess的样子:

order allow,deny
deny from all
allow from 127.0.0.1

结果,我不断获得403 Forbidden。除了我自己,这是我想要为其他所有人做的事情。也许我会以错误的方式解决这个问题......有谁看到我做错了什么?

5 个答案:

答案 0 :(得分:29)

反过来使用订单,即:

order deny,allow
deny from all
allow from 127.0.0.1

答案 1 :(得分:5)

<强> Require local

如果满足以下任一条件,本地提供程序允许访问服务器:

  • 客户地址匹配127.0.0.0/8
  • 客户端地址为:: 1
  • 连接的客户端和服务器地址都相同

这样可以方便地匹配源自本地主机的连接:

  

Require local

答案 2 :(得分:0)

狮子座的答案解决了我的问题。这是我设置的,因此我可以阻止直接访问图像:

<IfModule mod_rewrite.c>
<Files ~ "\.(jpg|jpeg|png|gif|pdf|txt|bmp|mp4|mov|ogg|wmv|webm|flv|mpg|mp2|mpeg|mpe|mpv|m4p|m4v|mp3|wav|acc|oga|m4a)$">
   order deny,allow
   deny from all
   Require local
   allow from all
</Files>
</IfModule>

我不想输入IP,以防以后更改本地IP

答案 3 :(得分:0)

在我添加以下内容之前,这里的所有答案都不允许我访问http://localhost:8888/

if constexpr (std::is_constructible_v<T, Args...>) {
    new (ptr) T(std::forward<Args>(args)...);
} else {
    new (ptr) T{std::forward<Args>(args)...};
}

因此,就我而言,这是我的整个allow from localhost 文件:

.htaccess

order deny,allow deny from all # my IP allow from xx.xx.xx.xx (use your own IP address here) # Local development allow from localhost 是代码注释。该文件仅允许我从浏览器在线(IP)访问本地站点,而从本地主机访问本地站点。

请记住,使用#时顺序很重要。您先将order deny,allow个放在文件中,然后再将deny个放在文件中。

答案 4 :(得分:0)

尝试在您的/ assets /文件夹中添加具有以下内容的.htaccess文件:

Options +Indexes
# or #
IndexIgnore *

这样,您将在浏览器中看到文件夹为空。