Php 当用户访问页面时更改文件扩展名

Php 当用户访问页面时更改文件扩展名,php,jquery,Php,Jquery,我有一个页面,比如test.html,我想把它改成test.php,当用户离开页面时,有什么办法吗 我知道如何使用php使用rename来更改它。但是当用户离开页面时如何调用它?我想到的第一件事是使用beforeunload事件,在浏览器卸载页面以呈现另一个页面之前触发,进行ajax调用并让php完成其余操作 jQuery: window.onbeforeunload = function() { $.post( 'rename-file.php', {

我有一个页面,比如test.html,我想把它改成test.php,当用户离开页面时,有什么办法吗


我知道如何使用php使用rename来更改它。但是当用户离开页面时如何调用它?

我想到的第一件事是使用beforeunload事件,在浏览器卸载页面以呈现另一个页面之前触发,进行ajax调用并让php完成其余操作

jQuery:

window.onbeforeunload = function() {
    $.post(
        'rename-file.php', 
        {file: "this.html"}
    ).done(response) {
        console.log('Response: ' + response);
    }
}
PHP:

行吗?这是必须看到的东西

onbeforeunload事件可能不适用于所有浏览器,这是缺点之一

你必须考虑的另一件事是:这真的有必要吗?要将我使用的同一页重命名为另一个扩展名,我知道重命名过程可能不可能,因为服务器使用该文件进行渲染


最后但并非最不重要的一点是安全性,上面的代码只是一个基本示例,但请记住,安全性是幸福的关键。

请展示您迄今为止所做的尝试……我认为beforeunload不允许使用AJAX。是的,我在我的一个应用程序中使用了它,它可以工作:p
<?php 
$oldname = $_POST['file'];
$newname = str_replace('.html', '.php', $oldname);

if(rename ( $oldname , $newname )) {
   echo 'File renamed successfully';
} else {
   echo 'File could not be renamed';
}