2012-05-26 76 views
1

我有一个apache2服务器,它有一个巨大的和不断增长的文件夹结构。代码在服务器上的每个页面之前执行

我希望在该网站的每个页面的开头执行一组指令。

如何在不粘贴网站中每个文件开头的那些行的情况下实现该功能?

  • 我不想在每个文件的开头都有代码。
  • 我试图在php.ini改变auto_prepend_file到:
    auto_prepend_file = ~/website_preview/say_hello.php

“say_hello”是一个hello世界的PHP脚本,但该脚本确实还没有得到所有执行。

+0

也许这是不可能发生你预想的方式。如果您在每个页面的开头提供更多关于您想要执行的操作的详细信息,可能有其他方法来实现它。 – lanzz

+0

它只是加载模块,我想自动加载到网站的每个页面上。而且我可以在整个网站上找到本地网站,并且它也必须在那里工作,而不必改变它。 –

+0

你已经说过,你的大部分页面都是html,你想在那里加载什么样的模块? – lanzz

回答

1

错误php.ini文件,正确的位置是/etc/php5/apache2/php.ini

+0

在php中,phpinfo()显示有关给定服务器的信息。有“加载的配置文件”表示正在使用哪个php.ini文件。 –

1

如果你所有的页面都是用PHP编写的,那么我认为你在php.ini中设置auto_prepend_file的方法是正确的。

试试这个:

  1. 检查您的php.ini中,并根据需要追加到一个新的路径,你的指令文件include_path
  2. 将您的instructions.php文件复制到包含路径中的位置。
  3. 编辑在php.ini您auto_prepend_file是刚刚从步骤2名

我测试了这一点,并能够得到它的工作这种方式,但遇到了麻烦,直接在auto_prepend_file设置指定的路径。

而且,当我有auto_prepend_file设置配置不正确,我收到了以下PHP的错误:
PHP致命错误:未知:失败需要开放...

希望有所帮助。

+0

我的大部分网页都是html,有些是js –

+0

我试过了,但脚本根本没有执行在页面之前 –

+0

auto_prepend_file设置将打开在PHP文件上工作,而不是HTML或JavaScript。如果它不工作,您可以尝试使用phpinfo()来验证您的配置。也许别人可以用你的非php页面的解决方案。 – christurnerio

相关问题