我在使用某些PHP代码的网站上遇到了一些问题。
我的网站主要使用html和php。我没有在每个页面的顶部重复大量的脚本行,而只是使用php include语句:
<?php include('main.php'); ?>
我的网站上有一个本地WAMP服务器以及html和php文件的混合。
当我在本地运行所有内容时,它们运行得非常好并且“包含”语句有效
但是,当我将所有内容上传到我在goDaddy上托管的网站时,include语句仅适用于.php文件。如果我在.html文件中使用它就会失败。它只是没有任何内容。
我看过一些帖子说这可以通过使用.htaccess文件来解决。目前我的网站上没有一个。我确实尝试将一个上传到根目录,但唯一的效果是当我点击页面时它显示“另存为”对话框。
我猜测我的语法错误或者我走错了路来解决这个问题。
以下是我的.htaccess文件的内容。关于如何让include语句在.html文件中工作的任何想法都会很棒。感谢。
#
# Server root folder www .htaccess
# This file provides server security limiting access to the localhost only.
# Comment next four lines to deactivate. (Allows external access)
#
# Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
# Allow from ::1
AddType application/x-httpd-php .html .php .htm
# To allow execution of cgi scripts in this directory uncomment next two lines.
# AddHandler cgi-script .pl .cgi
# Options +ExecCGI +FollowSymLinks
# Activate this section to use the Private Server Feature!
# Defaults: Username - root; Password - root
# Note AuthUserFile: File path is relative to server root
# To lock server, uncomment the next 4 lines. (A name and password is required)
#AuthName "Uniform Server - Server Access"
#AuthType Basic
#AuthUserFile ../../../htpasswd/www/.htpasswd
#Require valid-user
答案 0 :(得分:2)
尝试使用:
AddHandler x-httpd-php5-cgi .html
见这里:http://httpd.apache.org/docs/2.2/mod/mod_mime.html#addhandler
答案 1 :(得分:2)
您所要做的就是将包含它的所有文件更改为 .php 文件。它不会对它们产生负面影响,只是浏览器会知道将其解释为php。
您的所有格式仍然有效。
答案 2 :(得分:1)
如果您在HTML文件中使用<?php include ... ?>
,则无效。原因?如果文件具有.html
扩展名,则浏览器不会期望PHP,因此它不会执行任何操作。如果您在任何文件中有任何PHP代码,请为该文件提供.php
扩展名。 (除非你有特殊原因不这样做......?)