關於phpcms v9的404頁面實現

來源:互聯網
上載者:User

在phpcms 中,遇到沒有的欄目或者內容,只是提示沒有相應的資訊,但返回的狀態代碼依然是200,在最佳化上達不到效果,

那麼將如何來實現,其實也簡單,下面為操作步驟:

首先在網站根目錄,建一個page404.php檔案,

<?php header('http/1.1 404 Not found');?>或  <?php    header( $_SERVER['SERVER_PROTOCOL']." 404 Not Found", true, 404 );?>或<?php    header( $_ENV['SERVER_PROTOCOL']." 404 Not Found", true, 404 );?>404頁面

然後在phpcms/module/content/index.php中找到lists和show.

if(!$catid || !$id) header('location:/page404.php');if(!isset($CATEGORYS[$catid]) || $CATEGORYS[$catid]['type']!=0)        header('location:/page404.php');if(!$r || $r['status'] != 99)         header('location:/page404.php');

在lists中:

if(!isset($CATEGORYS[$catid]))

        header('location:/page404.php');

這樣就可以,返回的狀態代碼是正確的。

現在有一種更好的方法,因為按上面的話,中間一步是302跳轉。

我們可以在global.fnc.php裡面建一個404頁面函數:

function page404(){header($_SERVER['SERVER_PROTOCOL']." 404 Not Found", true, 404 );require('page404.php');exit();}

然後把上面的header('location:/page404.php');替換成page404()就可以了。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.