我目前正在构建我的第一个基于PHP的网站。整个网站位于主目录:example.com
我希望用户可以通过访问例如example.com/page,example.com/another_page,example.com/directory/some_page等链接找到我网站的不同页面。
为此,我创建这些目录,并在index.php中添加以下php代码:
<?php
include("/home/user/domains/example.com/public_html/index.php");
?>
这很好用,页面包含在内。问题是样式表不是。它只适用于主文件夹。我尝试了这两个HTML片段:
<link href="Stylesheet.css" rel="stylesheet" type="text/css" />
<link href="/home/user/domains/example.com/public_html/Stylesheet.css" rel="stylesheet" type="text/css" />
但它们都不起作用。
这如何在HTML中工作,如何访问主目录?
提前致谢
答案 0 :(得分:3)
css文件已下载并包含在客户端,而不是包含文件在服务器端的php include
语句。< / p>
从客户角度来看,css的路径应该“有意义”,并且可能相对于public_html
目录指定。也就是说,如果它直接驻留在public_html
目录中,那么该行应该是
<link href="/Stylesheet.css" rel="stylesheet" type="text/css" />
答案 1 :(得分:2)
浏览器无法查看public_html下的所有目录。 Web服务器为浏览器提供文档根。您需要仅使用/
来引用它:
<link href="/Stylesheet.css" rel="stylesheet" type="text/css" />
还要考虑使用mod_rewrite而不是在任何地方创建目录和PHP文件。我想你会发现它更易于维护。
答案 2 :(得分:1)
这是服务器端访问的绝对路径:
<?php
include("/home/user/domains/example.com/public_html/myDirectory/Stylesheet.css");
?>
但是,您希望从Web服务器进行访问。 Web服务器的绝对路径如下,其中/
是Web服务器的根目录,myDirectory
是根目录下的目录位置:
<link href="/myDirectory/Stylesheet.css" rel="stylesheet" type="text/css" />