【发布时间】:2010-12-23 23:55:54
【问题描述】:
我目前正在开发一个相当复杂的 HTML5 应用程序。到目前为止,我只是通过直接从我的文件系统启动 HTML 文件进行测试,不涉及服务器。但是,我现在需要使用 localStorage,as has been previously discussed on StackOverflow,localStorage 不会在那个环境中持续存在,所以我现在必须引入某种主机服务器。
我设置了 Apache 2.2.17,配置为 localhost。我将 DocumentRoot 配置为包含我的 HTML 文件(该文件简称为 index.html)的目录,因此我现在可以以 http://localhost/index.html. 的身份访问该页面我已经确认 localStorage 将在此设置中正确保留。
然而,我遇到了一个非常严重的问题,它会导致除了开发人员之外几乎任何人都无法使用该网站。我的大部分布局都依赖于一个自定义的 jQueryUI 主题,我在 <head> 中访问它,如下所示:
<link rel="stylesheet" href="themes/custom-theme/jquery-ui-1.8.6.custom.css/">
当我直接从我的文件系统启动 HTML 文件时,此相对路径运行良好。然而,Apache 似乎没有找到它。根据 Firebug,它正在返回:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head></body>
<h1>Not Found</h1>
<p>The requested URL /themes/custom-theme/jquery-ui-1.8.6.custom.css/ was not found on this server.<p>
</body></html>
知道什么给了?我想不出任何理由为什么相对路径在 Apache 下的行为与我直接从文件系统使用它时不同,而且很明显它位于我的 DocumentRoot 的子目录中,所以我希望它可以被 Apache 访问服务器。
有什么线索吗?
FWIW,我是一位非常有经验的程序员,但在设置 Apache 方面是新手。如果还有其他我应该使用的配置选项,我很可能对它们并不熟悉。
【问题讨论】:
标签: apache html relative-path