403 获取图像时出错,但未获取其他资源时出错


403 Error while getting images but not other resources

我在 ubuntu 上安装了 xampp(/opt/lampp (,并在 /home/mustafa/public_html 中创建了一个 public_html 文件夹(我认为它是一个符号链接,我是 Linux 的新手(,我将 php 文件和其他资源放在 public_html 文件夹中,问题是当我想获取图像之类的东西时,我收到 403 错误(禁止访问(,但其他文件还可以,如 PHP, CSS,JS文件。问题出在哪里?我该怎么办?

更新

终端中ls -l /home/mustafa/public_html/templates/assets/images/的输出:

total 8
-rwxrwx--- 1 mustafa mustafa 4638 Feb 17 22:06 hbg.png
ls -l /home/mustafa/public_html/templates/assets/style/
total 16
-rw-rw-r-- 1 mustafa mustafa 1571 Feb 23 13:06 style.css
-rw-rw-r-- 1 mustafa mustafa 1567 Feb 23 13:06 style.css~
-rw-rw-r-- 1 mustafa mustafa  689 Feb 23 18:07 style_I.css
-rw-rw-r-- 1 mustafa mustafa  691 Feb 23 17:58 style_I.css~

我将图像移动到其他目录,发现我无法访问public_html和子目录中的任何图像

在我看来

,另一组无法访问基于您的ls -l输出的图像。

它显示rwxrwx---而您的 css 文件rw-rw-r-- .

您应该chmod 664图像,以便它们与您的css文件匹配,或者chown apache所有文件(假设apache作为apache运行(,看看是否有效。

要检查哪个进程正在运行 apache,您可以使用ps aux | grep httpd

[user@host ~]$ ps aux | grep httpd
root      6407  0.0  0.3  11204  3288 ?        Ss   09:06   0:00 /usr/sbin/httpd
apache    6409  0.0  0.2  11340  2952 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6410  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6411  0.0  0.2  11340  2940 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6412  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6413  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6414  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6415  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
apache    6416  0.0  0.2  11340  2948 ?        S    09:06   0:00 /usr/sbin/httpd
root      6426  0.0  0.0   5500   720 pts/1    S+   09:14   0:00 grep httpd

如果您使用的是共享主机计划 - 请确保 plesk 中的设置没有启用限制并发 IP 连接数并将其设置为特定数量。我打开了它并将其设置为 10 个并发连接(只是在测试此选项(,我会取回一定数量的文件 - 其余的文件将被禁止,因此某些脚本无法执行等等。

对于 linux 托管来说可能也是如此。

因此,那些 brothas 测试和玩转共享主机 - 转到 Web 服务器设置 ->通过 IIS 动态 IP 限制防止 DoS 攻击 - 并确保禁用所有内容。

运气

我也有类似的问题。我在 img 中创建了一个文件夹,即 img> some_folder>资产。阅读@sjdaws答案后,我查看了我的文件夹限制,发现它们有问题。将它们更改为

chmod 0755 some_folder 

解决了我的问题。

<小时 />

仅供参考:在 Linux 中

<小时 />

4 用于读取

2 用于写入

1 表示执行

所以

7 (4+2+1( 表示读取、写入和执行

6 (4+2( 表示读、写

5 (4+1( 表示读取和执行

4 表示读取

3 (2+1( 表示写入和

执行

2 表示写入

1 表示执行

所以我对 755 含义的回答是

  1. 前 7 个是针对我的帐户的,即我具有完全访问权限(读写和执行(
  2. 第二个 5 是针对我组中的其他帐户。 5 表示他们具有读取和执行访问权限。这是必需的,因为Appache(www帐户(需要读取和执行访问some_folder。
  3. 第三个 5 是给其他人的帐户。他们还具有some_folder读取和执行访问权限。