【发布时间】:2021-09-22 03:04:20
【问题描述】:
我需要在实时服务器上配置我的网站,以便将 CI3 提供的默认 error_404.php 页面替换为 .shtml 类型的自定义错误页面,并使用 SSI 功能(设置变量和包含)。我制作了一个控制器并将我的 .shtml 文件放入 views 文件夹,并成功重定向到 error404.shtml 页面,但网页只是空白。我检查了浏览器控制台,没有出现错误日志。我尝试在根目录(与 index.php 相同级别)中创建一个 .htaccess 文件并在其中添加“+Options Includes”行,但仍然无法读取 SSI。 CodeIgniter 中是否可以使用 SSI?我知道在服务器端 SSI 可以工作,因为所有 PHP 站点都会加载错误页面,但使用 CodeIgniter 创建的页面除外。
这是我加载 shtml 的方式:
<?php
// Error controller
// This controller is used to manage the errors (404)
class Errors extends CI_Controller
{
// Main controller for the contact form
public function error404()
{
// Create your custom controller
// Display page
$this->load->view('errors/error404.shtml');
}
}
这就是error404.shtml的样子:
<!--#set var="code" value="404" -->
<!--#set var="reason" value="Page Not Found" -->
<!--#set var="msg" value="Error" -->
<!--#set var="msg2" value="The page you are looking for does not exist." -->
<!--#set var="favicon" value="a.ico" -->
<!--#set var="logo" value="logo.png" -->
<!--#set var="tagline" value="" -->
<!--#set var="ogimage" value="ogimage.jpg" -->
<!--#include virtual="template.shtml" -->
【问题讨论】:
标签: php codeigniter