Como postar um formulário http na inicialização? Talvez executando um script PHP?

1

Estou usando o Ubuntu Server 14.04 no meu servidor. Eu tenho um arquivo PHP que contém algum script / código que eu quero executar quando eu virar meu serveron.
Eu quero executar este arquivo XXXXXX.php na inicialização do meu servidor antes de login não após o login.
Eu não tenho nenhum desktop então me diga o processo através do terminal. Meu arquivo PHP desejado que quero executar está na pasta /var/www/XXXXXX.php .

Agora posso fazer isso?

Editar: Meu XXXXXX.php contém os seguintes códigos ...

<?php 
$externalIp = file_get_contents('http://phihag.de/ip/');
?> 
<form action="Iframe.php" method="post" enctype="plain" id="theForm">   
<input type="text" name="My_IP" value="<?php echo $externalIp;?>" />
<input type="submit" value="Send" />
</form>
<script type="text/javascript">
window.onload = function() {
var form = document.getElementById("theForm");
form.submit();
}
</script>
    
por Muhammad Hassan 31.07.2014 / 09:29

4 respostas

1

Você pode ter pensado que a solução está ao virar da esquina, mas acho que você precisa dar um passo para trás.

O que você precisa fazer parece ser um tipo de registro automático. Idéia inteligente, ainda ... sua abordagem atual exigirá um navegador que suporte JavaScript.

Acho que faria isso de forma diferente. No final do dia, tudo o que você precisa fazer é emitir o comando POST que o navegador envia.

Isso é muito mais fácil do que todo o PHP e JavaScript.

por Run CMD 31.07.2014 / 11:53
1

Você também pode editar /etc/rc.local - ele é executado mais tarde no processo de inicialização do que nas tarefas do cron. Eu tive que usá-lo para disparar algumas coisas do MySQL na reinicialização porque o mysql não estava funcionando quando a tarefa do cron disparou.

EDITAR:

Execute isto: 'sudo nano /etc/rc.local'

Adicione seu comando assim ...

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#!/bin/bash

/var/www/XXXXXX.php

exit 0

boa sorte! :)

    
por Simon 31.07.2014 / 10:55
0

Se o script deve executar uma tarefa única na inicialização, usaria uma tarefa @reboot cron. Nesse caso, você deve editar seu crontab com sudo crontab -e e adicionar algo como a seguinte linha:

@reboot php /var/www/XXXXXX.php

Esta página fornece detalhes adicionais sobre o uso do cron.

    
por user1366204 31.07.2014 / 10:06
0

Você pode fazer isso com php5-cli . Se você ainda não instalou:

sudo apt-get install php5-cli

Então você pode executar comandos php a partir da linha de comando com: php5 ./script.php .

Como primeira linha do seu script PHP, adicione o seguinte:

#!/usr/bin/php5

Em seguida, crie um link para seu script e ative-o para começar:

cd /etc/init.d
sudo ln -s /path/to/your/scriptName.php scriptName
sudo update-rc.d scriptName defaults
sudo update-rc.d scriptName enable
    
por Pabi 31.07.2014 / 09:50