【问题标题】:htaccess file ignored addhandler and directoryindex sttings not executedhtaccess 文件忽略了 addhandler 和 directoryindex 设置未执行
【发布时间】:2014-09-20 12:26:32
【问题描述】:

我刚刚用 php 和 mysql 服务器设置了 Apache 服务器。 我的问题是我的 html 文件中有 php 块,但它们根本没有执行。 如果 html 文件包含在 php 文件中,则执行块。因此,似乎 php 模块不提供 html 文件。

我试图在 htaccess 文件中更改它:

# Do not remove this line, otherwise mod_rewrite rules will stop working
RewriteBase /

#AddHandler application/x-httpd-php .html .php 
#AddHandler php5-script  .php
#AddHandler php5-script  .html

#AddType text/html .php
#AddType text/html .html
#AddType application/x-httpd-php .html

RemoveHandler .html .htm AddType application/x-httpd-php5 .html .htm

DirectoryIndex home.html index.php

我可以看出 htaccess 文件被忽略了,因为它不执行 directoryIndex 命令。 上面所有的 AddType 和 AddHandler 我都试过了,现在都被注释掉了。

我已经添加到 httpd.conf 文件中:

AllowOverride All

但是当我保存它时,会出现一个警报,指出文件已成功上传,但在设置权限或时间戳时出现错误。

在 Apache 文档中,它建议我在某个对话框中打开忽略权限错误,但我在任何地方都看不到这些对话框。 我在哪里可以找到这些。它在 WinSCP 中吗?如果是的话在哪里。

我是否正在为我的 html 与 php 块问题寻找正确的方向, 或者是 addHandler 和 addType 不能解决问题。 进行这些更改的最佳位置是什么?

【问题讨论】:

  • 您是否将AllowOverride All 添加到您的conf 的Directory 指令中?
  • 我真的不明白为什么您希望 html 模板由 php 解释器处理。你为什么不把 html 代码放到你的 php 文件中,反之亦然? (例如将 html 文件重命名为 php)
  • 我将 AllowOverride 放在 httpd.conf 文件中。我实际上相信服务器以某种方式忽略了这个文件,并且我也将 DirectoryIndex home.html 命令放在那里(我把它放在那里作为检查,以查看更改是否有任何效果,但它们没有。)是应该有一个优先于所有内容的 VHOST 文件? (我在亚马逊上)我在哪里或如何找到它。我可以使用 Putty 的命令找到它吗?
  • 我使用 html 文件中的 php 块来包含导航栏、标题和自定义对象等内容,这些对象在每个页面上看起来都相同,但在包含文件之前从文件中读取了不同的内容这页纸。如果我把它变成一个 php 文件,我需要回显所有的 html 部分,然后你会遇到交替双引号和单引号的问题。此外,我已经以这种方式设置了整个网站。改变它将是一项艰巨的工作。我的网站首先在另一台主机上,完全没有问题。所以我只需要提供这些 .html 文件

标签: apache .htaccess


【解决方案1】:

很抱歉给您带来麻烦。事实证明,只需将文件扩展名从 html 更改为 php 就足够了。 我一直认为您必须在 php 页面上回显任何 HTML 内容,但事实并非如此。 所以现在它只是运行。 谢谢

【讨论】:

    猜你喜欢
    • 2012-03-08
    • 1970-01-01
    • 2020-01-19
    • 1970-01-01
    • 2016-07-15
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    相关资源
    最近更新 更多