2017-07-31 233 views
0

我正在使用USBWebServer(Apache,PHP,MySql)在本地开发一个网站,并且我想使用SSI,所以我可以包含诸如页眉,页脚等内容。SSI包括不在服务器上工作,但在本地工作

在我的.htaccess我已经把下列指令:

Options +Includes 

AddType text/html .shtml 
AddOutputFilter INCLUDES .shtml 

我有主index.shtml和里面我有指令:

<!--#include virtual="./files/navbar.shtml" --> 
<!--#include virtual="./files/contact.shtml" --> 

和它工作得很好。

但是,当我上传网站到我的网络服务器,与.htaccess中的指令相同时,index.shtml不能包含任何内容。

我目前的解决方法是index.shtml更改为index.php文件,并使用PHP包括像:

<?php 
virtual('./files/navbar.shtml'); 
?> 

,但我想知道为什么在服务器上按预期SSI不工作,我能做些什么来使它与.shtml一起工作?

回答

0

假设您的服务器上的网络服务器是2.x Apache: 您必须启用包含模块。如果您在服务器上有管理员权限,可以通过执行作为根

a2enmod include 

并重新启动以“服务的Apache2重启”或“/etc/init.d/apache2重启”的WebService自己做。
如果不是,你必须问你的管理员或服务器提供商。 另外,.htaccess的使用可能受服务器配置的限制,请参阅是否允许配置overover或类似选项(或再次询问您的管理员)。

相关问题