- Php com Java
+ Responder ao Tópico
-
Php com Java
Tenho um grande problema, espero que alguem possa me
ajudar.
Tenho um programa java que fica recebendo mensagens
UDPs.
Se eu starto ele na mão funciona, mas preciso de um
programa
em C pra pegar as permissoes, para arrumar as permissoes
executo o seguinte comando:
chmod 4750 programa.c
chmod 4750 programa.class
chown root:apache programa.c
chown root:apache programa.class
segue o programa em C:
#include<stdio.h>
int main(){
int var;
if((setuid(0)) < 0 && (setgid(0)) <
0)
return 0;
else{
if(system("java UDPServer &"))
printf("C: OK");
else
printf("C: Erro");
}
}
Mas eu preciso startar este servidor via WEB. Estou
usando
PHP, segue abaixo o codigo:
<?
if($var=exec("./ex &"))
echo "PHP: OK<br>".$var;
else
echo "PHP: Erro<br>".$var;
exit(0);
?>
Ele executa o C, mas o servidor naum funciona. Bom se
alguem puder me ajudar agradeço.
Valew...
-
Php com Java
hmmm......pode ser o seguinte.....pra vc startar o servico java, vc precisa estar logado com um usuario especifico?? tipo o root??? pq se sim, quando vc executa via php, ele vai usar as permissoes do usuario q estiver rodando o apache, e se esse programa ficar ouvindo uma porta baixa (<1024) ele nao vai deixar startar msm....
se for esse o problema o unico jeito (q eu NAO recomendo) eh dar um jeito de dentro do C vc executar com permissao de superusuario.....mas como eu disse....isso eh mto arriscado....seu programa vai ter q ser simplesmente perfeito pra nao dar problemas futuros
-
Php com Java
So funciona de root eh? que coisa feia, me diz uma coisa, qual porta seu programa em Java esta utilizando? e ONDE ele se faz necessario privelegio de root?
Vamos eliminar o mal pela raiz.
-
Php com Java
Eu rodo na porta 14, por sinal vou tentar deixa-lo rodando em portas altas (> que 1024), pois ai pode ser que naum precise ser superusuario. Eu seto as permissoes pro arquivo pro usuario apache, tanto eh que se eu dou permissao para um outro usuario e execut o c com esse usuario ele roda o java. Ai dou as permissoes para o usuario apache, e mando o php chamar... MAs naum estarta....
Bom, obrigado pelas dicas...
VAlew...