3

我正在使用 php。

当我在 google 的服务器上使用 jquery-1.3.2-min.js 时,它会加载并且一切运行正常。

但是当我尝试使用我下载到服务器的那个时,Firebug 给了我这个:

1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2<html><head>
3<title>403 Forbidden</title>
4</head><body>
5<h1>Forbidden</h1>
6<p>You don't have permission to access /path/to/scripts/jquery-1.3.2.min.js
7on this server.</p>
8<hr>
9<address>Apache/2.2.12 (Ubuntu) Server at localhost Port 80</address>
10</body></html> 

我该如何解决?我是否必须更改 Apache 中的某些设置。

另一件事是有另一个 js 文件(使用 jquery 的那个)加载得很好。它与 jquery-1.3.2.min.js 位于同一文件夹中(即在脚本文件夹中)。

4

7 回答 7

12

听起来像是文件本身的权限问题。尝试

chmod 755 /local/path/to/jquery-1.3.2.min.js
于 2010-01-16T18:48:39.293 回答
2

我刚刚发生了一件非常相似的事情。为我解决的问题是获取不起作用的文件并将文件的内容复制到一个新文件中。EG 在我的实例中,获取 JQuery 文件,打开它,复制到一个新的 JS 文件中,保存,移动旧文件,将新文件放在同名的相同位置......然后一切正常。

于 2011-10-05T10:02:31.033 回答
0

您需要检查您的用户对这些目录/文件的权限。如果您无法自行解决此问题,请考虑与您的房东联系。

于 2010-01-16T18:48:57.377 回答
0

如果 apache 可以读取一个文件但不能读取另一个文件。使用chmodchown检查文件的权限,看看是否有区别。将文件设置为与加载正常的其他 javascript 文件相同的权限。

于 2010-01-16T18:50:42.860 回答
0

除了检查权限外,还可以在路径前加上前缀,然后查看:

$_SERVER[DOCUMENT_ROOT];
于 2010-01-16T18:51:24.247 回答
0

此解决方案不会解决您的权限问题,但最好从 Google 加载 jQuery 库。

Google 托管了几个流行的 JS 库。

主要优点是很多人已经从谷歌加载了文件,所以他们已经在缓存中了。这样,您可以节省大量带宽,并且页面对于大多数访问者来说加载速度更快。

您可以只使用此 URL 来包含 api。(更多信息

http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js

于 2010-01-16T18:54:04.163 回答
0

如果在 apache 中启用了 suphp 模块,您必须调整 jquery 文件的权限和所有者。查看文件的权限

cd /path/to/scripts
ls -l *.js

如果权限不同,您可以调整 jquery-1.3.2.min.js 文件的权限,例如

chmod 664 jquery-1.3.2.min.js

如果所有者不同,您可以调整它

chown user:group jquery-1.3.2.min.js
于 2010-01-16T18:54:03.973 回答