通过 .htaccess 启用 PHP 短打开标签
Posted
技术标签:
【中文标题】通过 .htaccess 启用 PHP 短打开标签【英文标题】:Enable PHP short open tags via .htaccess 【发布时间】:2013-09-28 04:59:39 【问题描述】:我目前正在浏览一个 CMS 系统的教程,不幸的是它使用了短开放标签。
我已经确认我的主机不会在他们的 php 配置中允许这些,但他们在 Apache 模式下运行 PHP(而不是 CGI)。据我所知,这应该允许我在 .htaccess 文件中将 short_open_tag
标志设置为 on
。
但是,这似乎不起作用。在根目录中,我创建了一个仅包含以下行的 .htaccess 文件,但仍会忽略短打开标记。
php_flag short_open_tag on
我做错了吗?如果没有,任何人都可以建议为什么它可能不起作用?谢谢。
注意:有人将此问题标记为正在其他地方回答。所确定的问题不仅没有公认的答案,而且基于 PHP 配置在 CGI 模式下运行,而不是 Apache 模式。
【问题讨论】:
如果您只是在教程的帮助下进行编码,那么当他们使用<?
时,只需写 <?php
- 或者您只是复制并粘贴整个教程?
我认为你应该在 .htaccess 文件中尝试php_value short_open_tag 1
我想你可以通过php_value short_open_tag 1
来完成它
@SmokeyPHP - 本教程附带了一组文件,因此替换短标签很遗憾不是一个选项。
您应该尝试php_admin_flag short_open_tag 1
,但您的提供商也可以禁用此功能。您应该使用自己的配置在 localhost 上尝试本教程。
【参考方案1】:
试试这个
<IfModule mod_php5.c>
php_value short_open_tag 1
</IfModule>
这样就可以解决问题了
【讨论】:
是的,我相信大多数主机提供商都允许覆盖 php 配置。 从技术上讲,您应该使用php_flag
而不是php_value
:secure.php.net/manual/en/configuration.changes.php。【参考方案2】:
对于.htaccess
,它应该是php_value short_open_tag 1
对于 ini 文件,它是 short_open_tag=On
。
如果它在.htaccess
中不起作用,那么您可以尝试在您的站点根目录中添加您自己的php.ini
。也就是说,它不太可能奏效。
简单地说,服务器管理员可能已经完全禁用了这个功能,无论你添加什么,你都无法激活它。最好问问你的主人,以免自己痛苦。
【讨论】:
以上是关于通过 .htaccess 启用 PHP 短打开标签的主要内容,如果未能解决你的问题,请参考以下文章
apache_conf 在htaccess中启用php错误登录
apache 2.2 (ubuntu) 不允许我通过.htaccess 设置php 错误报告?
通过在 .htaccess 中启用 gzip 来提高 magento 速度