我一直在本地(在MAMP中)开展项目,并决定将其上传到我的LAMP服务器。此服务器之前正在运行,但在上传所有新内容之后,它不会呈现HTML,只是将源代码显示为纯文本。
所有PHP似乎都正常工作,因为它显示正确的内容。
无济于事,我尝试使用header("Content-Type: text/html")
明确设置内容类型。当我删除PHP包含而不是直接使用HTML时,它可以正常工作。
我正在使用包含其他一些内容的 index.php 文件:
<?php
include_once 'header.php';
include_once 'inc/window.php';
createWindow();
include_once 'footer.php';
?>
也许我的 header.php 文件也可能包含一些线索:
<?php session_start(); ?>
<!doctype html>
<html>
<?php
include_once 'inc/files.php';
$files = json_decode(getFiles($ids));
?>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<?php
$title = '';
foreach($files as $i=>$file){
$title .= $file->content . ' ';
if(count($file) > 1 && $i < count($file)-1) $title .= '+ ';
}
?>
<title>* <?php echo strtolower($title); ?></title>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="stylesheet/less" type="text/css" href="css/main.css">
<script src="js/libs/modernizr-2.0.6.min.js"></script>
</head>
<body>
我的环境正在运行PHP5 +(5.3我相信?),Ubuntu和Apache2。我也有webmin和SSH访问。
任何想法都将不胜感激!
强尼
答案 0 :(得分:0)
该问题与files.php文件中设置的内容类型有关:
if(!headers_sent()) header('Content-Type: application/json');
出于某种原因,在发送页面标题之前遇到了这种情况。
我不确定为什么在我的本地网站上没有发生这种情况,如果有人能说出来,我会很高兴地对这个答案进行投票! :)我暂时删除了它,但因为它不是真的必要。
谢谢S / O