Erro interno do servidor

0

Eu estou tentando fazer uma comunicação serial do meu servidor local, então eu fiz um arquivo c ++ e o compilei para fazer a comunicação real e compilá-la com o GCC:

#include <iostream>
#include <fstream>

using namespace std;

char c = 2;
char hexdata = (c & 0xFF);

int main () {

  fstream fs;
  fs.open ("/dev/ttyS0", std::fstream::out | std::fstream::app);

  fs << hexdata;

  fs.close();

  return 0;
}

Até agora, funciona e posso ler os dados enviados. Agora eu copiei para / usr / lib / cgi-bin e chamei-o de serialOut.cgi, e tentei executá-lo a partir do terminal e ele também funciona, mas quando tento abri-lo pelo navegador, ele me dá um erro interno: < href="https://i.stack.imgur.com/TJokF.png">

Emboraeutenhaoutroscriptcginomesmodiretóriofuncionandobem.Eutenteiverificaraspermissõesetudobemtambém:

-r-xr-xr-x1rootroot34408Mar3018:37serialout.cgi

Alémdisso,error.lognãotemerros.Qualéacausadesteproblemaecomopossoresolvê-lo?

EDITAR

EuediteimeucódigoeagoraoerroInternalServeracabou,eelemostraumamensagem,masosdadosseriaisaindanãoforamenviados.

#include<iostream>#include<fstream>usingnamespacestd;charc=2;charhexdata=static_cast<char>(c&0xFF);intmain(){fstreamfs;fs.open("/dev/ttyS0", std::fstream::out | std::fstream::app);

  fs << hexdata;

  fs.close();
  cout << "Content-type: text/html" << endl << endl;
  cout << "<html><body>Done!</body></html>";

  return 0;
}

Eu tentei adicionar um alias ao / dev / no diretório real / dev /, mas ainda assim isso não resolveu nada. Qualquer ajuda apreciada.

    
por user3407319 30.03.2017 / 21:01

0 respostas