Cómo escribir una aplicación web en ‘C’

En resumen, tiene varias opciones:

  1. Cree una aplicación CGI donde use la consola para leer la solicitud y escribir la respuesta, y agregue esta aplicación a IIS / Apache.
  2. Escriba una aplicación ISAPI y agregue esto a IIS / Apache.
  3. Escriba su propio código para manejar el tráfico de Internet. Básicamente, esto significa profundizar en redes y sockets.

La primera opción tiene el peor rendimiento, la última debería ser la más rápida, si implementa las cosas correctamente.

Guía de Beej para la programación de redes

Tutorial de programación de redes y sockets en C

Como la mayoría de las soluciones de red se desarrollan en C, no debería ser demasiado difícil encontrar bibliotecas, referencias y documentación útiles sobre cómo hacer todo esto. Pero también significa que en realidad hay cientos de bibliotecas diferentes y otras soluciones que harían que una respuesta simple sea básicamente imposible, ya que alguien más estaría en desacuerdo conmigo promoviendo la biblioteca X y la biblioteca Y es mejor. Y luego alguien les dice a todos que deberíamos usar Z en su lugar. Etc.

En resumen, si. Es posible, pero explicando cómo es mucho, mucho más que esta respuesta …

Una buena solución es usar la extensión PHP Zend.

De esta manera, puede usar PHP para manejar el protocolo de enlace web. El PHP pasa el control al componente C / C ++ llamando a los métodos PHP respaldados por el código Zend que usted escribe.

Utilicé esta técnica para escribir un sistema de reconocimiento óptico de caracteres de fuerza bruta para leer los detalles de la licencia de las tarjetas de licencias de automóviles de Australia, utilizando la biblioteca Google Tesseract.

Las licencias australianas están cubiertas de remolinos holográficos y otros ruidos visuales. Es posible hacer OCR en tales imágenes, pero debe aplicar un filtro vigoroso para eliminar las distracciones. El problema es que la configuración correcta del filtro es una banda estrecha en un gran panorama de posibles configuraciones.

La solución fue aplicar el reconocimiento de patrones a un gran número de intentos simultáneos con diferentes configuraciones de filtro, para calificar cada intento y elegir el intento correcto más probable.