2

私はプロジェクトをローカルで (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アクセスも持っています。

どんなアイデアでも大歓迎です!

ジョニー

4

1 に答える 1

0

うわー-もう少しデバッグした後、それを理解しました!

この問題は、files.php ファイルで設定されているコンテンツ タイプに関連していました。

if(!headers_sent()) header('Content-Type: application/json');

何らかの理由で、ページのヘッダーが送信される前にこれが発生していました。

なぜこれが私のローカルサイトで起こらなかったのかわかりません.誰かがそれについて話すことができれば、私は喜んでその答えに賛成票を投じます! :)実際には必要ないので、今のところ削除しました。

ありがとうS/O

于 2013-04-24T00:44:30.453 に答える