我目前正在开发一个相当复杂的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的新手。如果我应该玩其他配置选项,可能性是我不熟悉它们。
答案 0 :(得分:0)
如果从CSS网址中删除最后一个“/”,该怎么办:
<link rel="stylesheet" href="themes/custom-theme/jquery-ui-1.8.6.custom.css" />
(您目前正尝试将“jquery-ui-1.8.6.custom.css”作为目录访问...)