一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機(jī)|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識(shí)|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - 服務(wù)器知識(shí) - Apache下開(kāi)啟SSI配置使html支持include包含的方法

Apache下開(kāi)啟SSI配置使html支持include包含的方法

2021-11-16 17:03服務(wù)器技術(shù)網(wǎng) 服務(wù)器知識(shí)

這篇文章主要介紹了Apache下開(kāi)啟SSI配置使html支持include包含的方法,需要的朋友可以參考下

寫(xiě)頁(yè)面的同學(xué)通常會(huì)遇到這樣的煩惱,就是頁(yè)面上的 html 標(biāo)簽越來(lái)越多的時(shí)候,尋找指定的部分就會(huì)很困難,那么能不能像 javascript 一樣寫(xiě)在不同的文件中引入呢?答案是有的,apache 能做到。

舉個(gè)簡(jiǎn)單的例子,比如有如下的 html 文件(命名為 index.html):

?
1
2
<input type='text' />
<input type='button' value='press' />

一個(gè)簡(jiǎn)單的文本框和按鈕,我現(xiàn)在想把按鈕部分的 html 寫(xiě)在另一個(gè) .html 的文件中(比如說(shuō)叫 btn.html)然后引入到 index.html 中,要怎么做呢?

1、加載 ssi 模塊

首先要加載 ssi 模塊。打開(kāi) apache 的配置文件 httpd.conf,這個(gè)文件應(yīng)該都已經(jīng)很熟悉了,前面的文章中多次提到。找到這么一行 LoadModule ssl_module modules/mod_ssl.so,把前面的注釋(#)去掉。

2016.01.11 更:

經(jīng)本地測(cè)試,此步驟并不是必須的,多謝 whuper 指出。

2、添加需要的文件類型

同樣在 httpd.conf 文件下找到如下兩行代碼:

?
1
2
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

有注釋的話一樣去掉注釋。因?yàn)槭褂?ssi 技術(shù)的默認(rèn)文件名為 .shtml,所以我們需要在配置文件中對(duì) .shtml 后綴名進(jìn)行設(shè)置,并按自己的需求設(shè)置需要對(duì) ssi 技術(shù)進(jìn)行解析的文件類型設(shè)置。

比如這里我要用 .html 的文件進(jìn)行操作,所以可以在上面兩行代碼末添加,比如這樣:

?
1
2
AddType text/html .shtml .html
AddOutputFilter INCLUDES .shtml .html

3、添加 INCLUDES
還是在 httpd.conf 文件中,找到這樣一行 Options Indexes FollowSymLinks,在后面添加 INCLUDES,變成這樣:

Options Indexes FollowSymLinks INCLUDES

需要注意的是,ssi 可以利用 shell 來(lái)執(zhí)行命令,因此這個(gè)功能是有危險(xiǎn)的,它會(huì)執(zhí)行任何包含在 exec 標(biāo)記中的命令,如果你的用戶有權(quán)限修改你的網(wǎng)頁(yè)內(nèi)容,建議把該功能關(guān)閉。當(dāng)然你還可以加上IncludesNOEXEC 參數(shù),來(lái)關(guān)閉 exec 功能,同時(shí)又保留 SSI 。此時(shí)改為: Options Indexes FollowSymLinks INCLUDES IncludesNOEXEC

4、重啟 apache

最后一點(diǎn),重啟 apache 千萬(wàn)不能忘記,有些童鞋剛開(kāi)始配置 apache 的時(shí)候,經(jīng)常會(huì)說(shuō)怎么不起作用啊,很多時(shí)候就是忘記重啟了。

5、實(shí)踐
通過(guò)這樣的配置我們就能在 html 頁(yè)面中引入 html 文件了,比如這樣:

?
1
2
<input type='text' />
<!--#include virtual="btn.html" -->

也可以用 file 參數(shù):

?
1
2
<input type='text' />
<!--#include file="btn.html"-->

有什么區(qū)別呢...

include 元素能按 file 屬性或 virtual 屬性判斷應(yīng)該包含的文件。file 屬性是一個(gè)相對(duì)于當(dāng)前目錄的文件路徑,即不能是一個(gè)絕對(duì)路徑(以 "/" 開(kāi)頭)或包含 "../" 的路徑,也就是說(shuō)被包含文件可以在同一級(jí)目錄或其子目錄中,但不能在上一級(jí)目錄中。virtual 屬性可能更有用,它是一個(gè)相對(duì)于被提供的文檔的URL ,可以以 "/" 開(kāi)頭,但必須與被提供的文檔位于同一服務(wù)器上,virtual 文件名是 Web 站點(diǎn)上的虛擬目錄的完整路徑。

通俗地說(shuō),virtual 相當(dāng)于絕對(duì)路徑(從服務(wù)器根目錄出發(fā)),而 file 相當(dāng)于相對(duì)路徑(而且文件還不能在上級(jí)目錄)。所以一般用 virtual 就 ok 了。

參考:

讓Apache支持SHTML(SSI)的配置方法

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本中文字幕在线观看视频 | 动漫美女隐私尿口图片 | 99热成人精品免费久久 | 欧美xxx000喷水 | 日本69av| 私人影院在线播放 | 高清在线观看免费入口 | 国产精品欧美亚洲韩国日本99 | 黄情视频| 国产麻豆流白浆在线观看 | 欧美老女人b | 香蕉成人国产精品免费看网站 | 天天爽天天干天天操 | 青青青国产视频 | 精品卡1卡2卡三卡免费视频 | 日韩拍拍拍 | 国人精品视频在线观看 | 色噜噜狠狠色综合 | 激情男人天堂 | 9420高清完整版在线观看国语 | 国产探花在线视频 | 97色| 啊啊啊好大好爽视频 | 日本高免费观看在线播放 | 精品国产一区二区三区久久久狼 | 十大免费批日的软件 | 亚洲国产欧美在线人成aaa | 亚洲天堂视频在线免费观看 | 国产99精品成人免费视频 | 免费一区 | 国产免费不卡视频 | 欧美在线播放成人免费 | 国产愉拍精品视频手机 | 久久99精品国产免费观看 | 视频一区国产精戏刘婷 | 国产91精品久久久久久久 | 天天做天天爰夜夜爽 | 欧美视频黑鬼大战白妞 | 亚洲视频在线观看免费视频 | 男人影院天堂网址 | 岛国在线播放v片免费 |