2010-09-21 79 views
2

我有一个托管在Apache Web服务器上的网站。另一个人每周通过从第三方软件生成的FTP将静态HTML文件上传到文件夹。Auto在每次页面呈现时将Google Analytics(分析)代码添加到HTML页面

我希望在保存URL,原始HTML和上传过程的同时在每个页面上插入Goggle Analytics代码。我不知道什么时候上传文件或页面名称(每次上传的文件有100个)。

我最初想到的是将HTML设置为用PHP引擎解析;然而,这是不适合的,因为页面不包含PHP代码,并且我不通过查找和替换来修改HTML页面。

有没有一种方法可以在页面结束之前使用PHP引擎来处理页面注入代码或其他方法?

回答

5

那么这将是一个简单的方法,仅仅指刚给你一个想法

在发布的HTML文件的顶级目录的.htaccess:

RewriteCond %{REQUEST_URI} ^/path/in/question/if/not/document/root/(.+\.html)$ 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule ^(.+)$ index.php [L] 
的index.php中

$ga = 'your ga tracking code'; 

    $file = $_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI']; 

    if(file_exists($file)) 
    { 

     $content = file_get_contents($file); 

     if(false !== ($pos = strpos($content, '</body>'))) 
     { 
     $content = substr($content, 0, $pos).$ga.substr($content, $pos); 
     } 

     print $content; 
     exit; 
    } 
+0

这看起来像最好的方法将在稍后测试 - 谢谢 – John 2010-09-21 09:45:51

+0

测试,它的工作。谢谢 – John 2010-09-24 11:26:50

2

如果您使用.htaccess文件来解析PHP文件,您可以使用php auto prepend/append将一些php代码添加到文件中。 Check out this并查找自动预先或附加以了解如何自动包含文件。这也可以在.htaccess中完成。要获得apache使php解析html文件,可以使用check this out获取一些信息。我只是通过谷歌找到它。你应该能够使用这两个包含一个PHP文件到所有的HTML文件。

编辑:只是一个说明,不需要在HTML文件中的PHP为此工作以及。 PHP只会寻找与PHP文件的部分(这是没有文件),并跳过任何不具有PHP。

相关问题