I have user permissions on my .html
files other than 0744
. They are actually set to 0700
so to get around this, I have suPHP set up, and I use a load.php
file to access and load all the files. The file in question is a simple .html
file like so:
test.html (0700):
<html>
<head>
<link rel="stylesheet" type="text/css" href="test.css" />
</head>
<body>
<p> why is this not working?</p>
</body>
</html>
test.css (0744):
body
{
background-color:#bbcbde;
}
p
{
background-color:#bfc4de;
color:'red' ;
border:'solid black';
font-size:35pt;
}
load.php (0744):
$page = $_GET['page'];
header("Location: http://www.example.com/" . $fileName);
exit;
Note: the css file I have set to normal 0744 permissions for debugging purposes.
If I type http://www.example.com/load.php?page=test.html
the page loads find. However, I suspect that the css file is being used from a cache because none of the changes to test.css
are applied to test.html
. If I remove the line
<link rel="stylesheet" type="text/css" href="test.css" />
The change is reflected as the background becomes white again. However, if I move the css
file to, for example test2.css
, and change the style (ie. different colors) and link to that instead, the changes are suprisingly not applied. If I move test.css
to test2.css
without linking to the new name (similar to deleting the file), the css
effect is still applied! Similarly if I chmod
test.css
to 0000 it still uses the style sheet. Also I know the .css
file is not corrupted because I con open up test.html
locally on my machine.
Does anyone have any idea what's going on because I don't have the foggiest.
EDIT as per Murray McDonald's answer below, I traced down the problem to having to do with a 304: Not Modified status code. Why Is this being returned when the file has clearly changed?
I figured out what my problem (albeit with great support from Murray). I have my folders set up like so
I thought that
would launch the page from within the correct folder, but even if I type the following into the browser
module.php
, when searching fortest.css
returns/test.css
and not/test/test.css
which is what I want. Now, the question is how I tell php to set the working directory.