是否可以使用htaccess或类似工具在每个html文件上运行php代码?

是否可以使用htaccess或类似工具在每个html文件上运行php代码?,php,apache,.htaccess,Php,Apache,.htaccess,所以我制作了一个网站,允许用户创建自己的网站,使用wysiswyg编辑器等工具。 当他们注册时,他们会得到一个类似user.site.com的url 他们可以创建文件、文件夹、上传文件等,他们可以创建和编辑html文件,例如,如果有人创建了index.html=user.site.com/index.html,他们可以使用我的网站工具编辑,并通过user.site.com/index.html访问,我只是想知道,我是否可以将php代码附加到他们创建的所有html文件中,而不向文件中实际添加内容。

所以我制作了一个网站,允许用户创建自己的网站,使用wysiswyg编辑器等工具。 当他们注册时,他们会得到一个类似user.site.com的url 他们可以创建文件、文件夹、上传文件等,他们可以创建和编辑html文件,例如,如果有人创建了index.html=user.site.com/index.html,他们可以使用我的网站工具编辑,并通过user.site.com/index.html访问,我只是想知道,我是否可以将php代码附加到他们创建的所有html文件中,而不向文件中实际添加内容。 像

echo“使用AppName创建”


将自动添加到每个用户创建的所有html文件中,而实际上不在其中,htaccess可以这样做吗?

您的意思是使用include命令吗

试试这个:

<?php
include 'yourphpscript.php';
?>

更多信息请点击此处:


只要用户发送的所有页面都基于另一个php文件进行旋转即可

假设用户(假设用户名为
john
)发送了文件
foo.html

要访问文件
foo.php
,需要转到如下URL:

john.site.com/partners.php?path=foo.html
[fixed]

使用
.htaccess(mod rewrite)
,您可以修改此
URL
,使其看起来像这样:

john.site.com/foo.html

只有子域可以访问php文件
partners.php
(应该是根)

mod_rewrite/.htaccess


[编辑]

例如:

.htaccess:

PHP代码:

结果:

paul.site.com/partners.php?path=mypage.html

paul.site.com/mypage.html


john.site.com/partners.php?path=folder1/mypage.html

john.site.com/folder1/mypage.html


william.site.com/partners.php?path=css/style.css


paul.site.com/css/style.css

我想你要问的是,你想让你的web服务器处理
.htm
.html
文件,用于
php
代码。对吗?如果是这样,您可能希望在
.htaccess
文件中执行类似操作:

AddHandler x-httpd-php .html .htm 
简单地说,这将告诉Apache为php代码(如果有的话)处理.html和.htm文件


如果您有权编辑php.ini,您可以使用
auto\u prepend\u文件
。这无法从
.htaccess
访问,但可以通过其他方式实现您的目标:

从手册中:

指定在主文件之前自动分析的文件的名称。文件被包含,就好像它是用require函数调用的一样,因此使用include_path

特殊值“无”将禁用自动预结束

这将允许您在每次请求之前运行指定的PHP文件

注意:如果您希望在HTML文件(而不仅仅是PHP)上运行此操作,还需要设置一个处理程序,以便通过PHP运行这些文件,如上所述:

AddType application/x-httpd-php .html

重写URL以自动通过您选择的脚本。不,它必须与html文件一起运行,因此我可以使用javascript、php等动态管理内容,然后根据URL获取文件…考虑到您有三个答案,回答三个不同的问题,您可能需要花一些时间来思考您试图完成的任务,并更加小心地重新表述这个问题;对于他们创建的文件,他们可以创建html文件。我从来没有听说过这样的事情。通常人们会在脚本的开头(或结尾)包含内容,所以在包含中添加内容并不难。我从来没有听说过有人使用.htaccess这样做,但这并不意味着这是不可能的。该应用程序将允许用户创建自己的html、js文件等。。。我只是想知道我是否可以在创建的所有文件中添加一个php代码。。。所以它将是user.site.com/filecreatedbyuser.html,我希望你们都理解我的意思:)问题是我已经这样做了是的,你们可以这样做,看我编辑了我的答案。正如子域可以访问
.htaccess
一样,如果他们创建file.html,则直接在user.site.com/site.htmlI添加“path”作为示例,因为您说过他们可以创建文件夹。如果您这样做:
john.site.com/partners?path=foo.html
您可以访问so
john.site.com/foo.html
(使用“.htaccess”),我知道您在说什么,但这不是我试图做的。该应用程序将允许用户创建自己的html、js文件等。。。我只是想知道我是否能以某种方式将php代码附加到所有创建的文件中。这将在“运行时”添加php代码,而不会实际编辑用户的文件。如果这个答案不完全适合您,请尝试此变体。htaccess:
AddHandler应用程序/x-httpd-php54.html.htm
php.ini
auto_append_file='/home/[我的用户名称]/public\u html/sub\u footer.php'
AddHandler x-httpd-php .html .htm 
AddType application/x-httpd-php .html