php教程 php手册 shtml教程(2)

shtml教程(2)

Jun 06, 2016 pm 08:00 PM
php 지도 시간

#flastmod 和 #fsize 示范 作用: #flastmod 文件最近更新日期 #fsize 文件的长度 语法: !--#flastmod file=" 文件名称 "-- !--#fsize file=" 文件名称 "-- 参数: file 指定包含文件相对于本文档的位置 如 info.txt 表示当前目录下的的 info.txt 文档 virt

#flastmod #fsize 示范

作用:

#flastmod 文件最近更新日期
#fsize 
文件的长度

语法:


参数:

file 指定包含文件相对于本文档的位置 info.txt 表示当前目录下的的info.txt文档
virtual
指定相对于服务器文档根目录的位置 /hoyi/info.txt 表示

注意:文件名称必须带有扩展名。

示例:

将当前目录下news.htm文件的最近更新日期插插入到当前页面
将当前目录下news.htm的文件大小入到当前页面

#exec 示范

作用:将某一外部程序的输出插入到页面中。可插入CGI程序或者是常规应用程序的输入,这取决于使用的参数是cmd还是cgi

语法:


参数:

cmd 常规应用程序
cgi CGI
脚本程序

示例:

将会显示密码文件
将会显示当前目录下文件列表
将会执行CGI程序gb.cgi
将会执行CGI程序access_log.cgi

注意:从上面的示例可以看出,这个指令相当方便,但是也存在安全问题。

禁止方法:

1.   Apache,将access.conf中的"Options Includes ExecCGI"这行代码删除;

2.   IIS中,要禁用 #exec 命令,可修改 SSIExecDisable 元数据库;

#config

作用:指定返回给客户端浏览器的错误信息、日期和文件大小的格式。

语法:



参数:

errmsg 自定义SSI执行错误信息,可以为任何你喜欢的方式。
sizefmt 
文件大小显示方式,默认为字节方式("bytes")可以改为千字节方式("abbrev")
timefmt 
时间显示方式,最灵活的配置属性。

示例:显示一个不存在文件的大小


以千字节方式显示文件大小

语法:


以特定的时间格式显示时间


显示今天是星期几,几月,时区

XSSI

XSSIExtended SSI)是一组高级SSI指令,内置于Apache 1.2或更高版本的mod-include模块之中。其中可利用的的指令有:

#printenv
#set
#if

#printenv

作用:显示当前存在于WEB服务器环境中的所有环境变量。

语法:

#set

作用:可给变量赋值,以用于后面的if语句。

语法:

示例:

#if

作用:创建可以改变数据的页面,这些数据根据使用if语句时计算的要求予以显示。

语法:


 
显示内容

 
显示内容

 
显示内容

示例:


 
欢迎光临 http://www.baidu.com

 
欢迎光临 http://www.google.com

 
欢迎光临 Afly's Blog

注意:用于前面指令中的反斜杠,是用来代换内部的引号,以便它们不会被解释为结束表达式。不可省略。

1Config 命令

Config 命令主要用于修改SSI的默认设置。其中:

Errmsg:设置默认错误信息。为了能够正常的返回用户设定的错误信息,在HTML文件中Errmsg参数必须被放置在其它SSI命令的前面,否则客户端只能显示默认的错误信息,而不是由用户设定的自定义信息。

Timefmt:定义日期和时间的使用格式。Timefmt参数必须在echo命令之前使用。


显示结果为:

Wednesday April 12 2000

也许用户对上例中所使用的%A %B %d感到很陌生,下面我们就以表格的形式总结一下SSI中较为常用的一些日期和时间格式。

Sizefmt:决定文件大小是以字节、千字节还是兆字节为单位表示。如果以字节为单位,参数值为"bytes";对于千字节和兆字节可以使用缩写形式。同样,sizefmt参数必须放在fsize命令的前面才能使用。


2Include 命令

Include 命令可以把其它文档中的文字或图片插入到当前被解析的文档中,这是整个SSI的关键所在。通过Include命令只需要改动一个文件就可以瞬间更新整个站点!

Include 命令具有两个不同的参数:

Virtual:给出到服务器端某个文档的虚拟路径。
File
:给出到当前目录的相对路径,其中不能使用"../",也不能使用绝对路径。


这就要求每一个目录中都包含一个header.html文件。

3Echo 命令

Echo 命令可以显示以下各环境变量:

DOCUMENT_NAME:显示当前文档的名称。
DOCUMENT_URI
:显示当前文档的虚拟路径。例如:


随着网站的不断发展,那些越来越长的URL地址肯定会让人头疼。如果使用SSI,一切就会迎刃而解。因为我们可以把网站的域名和SSI命令结合在一起显示完整的URL,即:

http://YourDomain

QUERY_STRING_UNESCAPED显示未经转义处理的由客户端发送的查询字串其中所有的特殊字符前面都有转义符"/"。例如:

DATE_LOCAL:显示服务器设定时区的日期和时间。用户可以结合config命令的timefmt参数,定制输出信息。例如:


显示结果为:

Saturday the 15 of April in the year 2000

DATE_GMT:功能与DATE_LOCAL一样,只不过返回的是以格林尼治标准时间为基准的日期。例如:

LAST_MODIFIED:显示当前文档的最后更新时间。同样,这是SSI中非常实用的一个功能,只要在HTML文档中加入以下这行简单的文字,就可以在页面上动态的显示更新时间。

CGI环境变量

除了SSI环境变量之外,echo命令还可以显示以下CGI环境变量:

SERVER_SOFTWARE:显示服务器软件的名称和版本。例如:

SERVER_NAME
显示服务器的主机名称,DNS别名或IP地址。例如:

SERVER_PROTOCOL
:显示客户端请求所使用的协议名称和版本,如HTTP/1.0。例如:

SERVER_PORT
:显示服务器的响应端口。例如:

REQUEST_METHOD
:显示客户端的文档请求方法,包括GET HEADPOST。例如:

REMOTE_HOST
:显示发出请求信息的客户端主机名称。

REMOTE_ADDR
:显示发出请求信息的客户端IP地址。

AUTH_TYPE
:显示用户身份的验证方法。

REMOTE_USER
:显示访问受保护页面的用户所使用的帐号名称。

4Fsize:显示指定文件的大小,可以结合config命令的sizefmt参数定制输出格式。

5Flastmod:显示指定文件的最后修改日期,可以结合config 命令的timefmt参数控制输出格式。


这里,我们可以利用flastmod参数显示出一个页面上所有链接页面的更新日期。方法如下:


File

Another File

显示结果为:

File April 19 2000
Another File January 08
2000

6Exec

Exec命令可以执行CGI脚本或者shell命令。使用方法如下:

Cmd:使用/bin/sh执行指定的字串。如果SSI使用了IncludesNOEXEC选项,则该命令将被屏蔽。
Cgi
:可以用来执行CGI脚本。例如,下面这个例子中使用服务端cgi-bin目录下的counter.pl脚本程序在每个页面放置一个计数器:

关于SHTMLHTML的区别

让我们先来看看SHTMLHTML的区别,如果用一句话来解释就是:SHTML 不是HTML而是一种服务器 APIshtml是服务器动态产成的html.

虽然两者都是超文本格式,但shtml是一种用于SSI技术的文件。也就是Server Side Include--SSI 服务器端包含指令。如果Web ServerSSI功能的话,大多数(尤其是基于Unix平台)的WEB服务器,如Netscape Enterprise Server等均支持SSI命令。

 

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

이번 장에서는 라우팅과 관련된 다음과 같은 주제를 학습하겠습니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

See all articles