我在本地使用xampp,在不同的项目上工作。我通常在网站上使用包含的顶级菜单。
目录示例:
C:\xampp\htdocs\site1
C:\xampp\htdocs\site2
在包含的顶部菜单中,我将链接提供给
<a href="/site1/page1">Link</a>
<a href="/site1/page2">Link</a>
....
<a href="/site1/page7">Link</a>
但是当我将站点上传到远程服务器上时,这个链接不起作用。因为根文件夹不是htdocs
。根文件夹是site1
或site2
什么的。
在处理site1
时,我必须将默认根目录设置为"site1“,并将链接设置为
<a href="/page1">Link</a>
<a href="/page1">Link</a>
它同时适用于两个方面(本地-远程)
问:如何在不改变本地根目录的情况下,在包含的顶部菜单中提供链接。我试过做../page1
。对于主页面,它起作用了,但对于子页面却不起作用。
发布于 2015-09-23 06:03:09
创建一个config.php文件。在您的远程站点上,这只会保持:
$path='/';
将它放在与菜单文件相同的目录中,在菜单文件中包含config.php:
<?php require_once('config.php'); ?>
并定义如下链接:
<a href="<?= $path ?>page1">Link1</a>
<a href="<?= $path ?>page2">Link2</a>
在本地计算机上,根据您正在处理的站点编辑配置文件:
$path='/site1/';
发布于 2015-09-23 03:45:39
使用
<a href="http://<?php echo $_SERVER['SERVER_NAME']; ?>/page1"> Link</a>
或者创建一个config.php并定义路径,如
$localhost = true // change this to false when you upload to server
if($localhost) {
$root_path = 'http://localhost/site1/';
} else {
$root_path = 'http://'.$_SERVER['SERVER_NAME'].'/';
}
define('ROOT_PATH', $root_path);
并将此config.php包含在需要定义路径的所有文件中。
<?php
include_once(dirname(__FILE__)."/config.php");
?>
<a href="<?php echo ROOT_PATH;?>/page1">Link</a>
https://stackoverflow.com/questions/32738539
复制