Salut,
j'aimerais un peu m'entrainer à développer un site web dynamique en C++ au lieu de PHP. Mais je ne trouve pas de lien sur internet pour m'aider à démarrer.
Je cherche donc comment faire pour que apache appel le programme convenablement et tout ça. Et que dois-je faire de spécial dans mon programme pour que tout fonctionne bien ?
Merci de votre aide.
# j'ai pas bien compris
Posté par Maxime (site web personnel) . Évalué à 1.
[^] # Re: j'ai pas bien compris
Posté par elloco (site web personnel) . Évalué à 1.
Parce que en fait, d'habitude pour créer des pages web dynamiques, on utilise PHP qui est directement interpreté par apache (par un module donc) et il en sort une page web au format html qui est envoyé à l'utilisateur. Mais je voudrais le faire en c++.
Pour donner l'idée (même si je sais que ce n'est pas comme ça que ça marche), je vais sur la page http://www.monsite.com/index.c++?parametre1=test¶m2=(...)
J'espère que c'est clair :)
[^] # C++ n'est pas un langage interprété !
Posté par Ben (site web personnel) . Évalué à 6.
ce genre d'URL n'est pas possible car tu considère ainsi que ton fichier c++ est interprété par un modula apache. ça n'existe tout simplement pas. Pour faire du C++ avec le web (ce qui est une mauvaise idée) il faut compilier ton code avec g++ et utiliser dans tes sources le principe du CGI (common gatewy interface) supporté par apache.
le CGI c'est assez simple:
ton programme doit:
* Lire les arguments d'une requète http/GET via la variable d'environnement HTTP_REQUEST ou lire une requète http/POST via l'entrée standard (STDIN)
* traîter la requète
* écrire du HTML/javascript sur la sortie standard (STDOUT)
un tuto CGI intéressant et facile:
http://www.jmarshall.com/easy/cgi/
Tout homme qui dirige, qui fait quelque chose, a contre lui ceux qui voudraient faire la même chose, ceux qui font précisément le contraire, et surtout la grande armée des gens d'autant plus sévères qu'ils ne font rien du tout. -- Jules Claretie
[^] # Re: C++ n'est pas un langage interprété !
Posté par rhizome . Évalué à 2.
ScriptAlias /index.c++ "/le/chemin/vers/mon_programme_compilé"
Je pense que tu le sais, mais soyons précis ;)
Sinon, effectivement, faire du web en C++ me parait aussi une idée saugrenue, mais bon il a peut être ses raisons...
[^] # Web et C++ ...
Posté par Claude SIMON (site web personnel) . Évalué à 1.
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Web et C++ ...
Posté par Ben (site web personnel) . Évalué à 2.
Tout homme qui dirige, qui fait quelque chose, a contre lui ceux qui voudraient faire la même chose, ceux qui font précisément le contraire, et surtout la grande armée des gens d'autant plus sévères qu'ils ne font rien du tout. -- Jules Claretie
[^] # Re: Web et C++ ...
Posté par Claude SIMON (site web personnel) . Évalué à 1.
Mais l'application que j'ai développé ne se résume pas du tout à cela (elle ne contient d'ailleurs pas la moindre requête SQL). Cependant, on se rejoint sur un point : la partie analyse de la requête et la génération du HTML sont faites par un script PERL, et non pas en C++. Plus précisément, ce script extrait les paramètres de la requête et les envois à un daemon, et transforme le flux XML retourné par ledit deamon en HTML grâce à un processeur XSLT.
Le fait de passer par un daemon pour assurer le traitement de la requête facilite la résolution du problème de persistence des données auquel on est généralement confronté en faisant du web.
Comme ce daemon est codé, par mes soins, en C++, et de par les tâches qu'il accomplit, je crois pouvoir affirmer que je fais bien du web en C++ :-) ! Et cela sans transformer mes soirées en longues séances de débogage, les outils que j'utilise (en particuliers certaines bibliothèques) me mettant à l'abri de ce genre de mésaventure ...
Pour nous émanciper des géants du numérique : Zelbinium !
# cgi?
Posté par Al_trent . Évalué à 2.
test.cpp
-----------
#include
using namespace std;
int main() {
cout << "Content-type: text/html\n" << endl;
cout << "Hello World" << endl;
return 0;
}
g++ test.cpp -o test
sudo cp test /var/www/localhost/cgi-bin/
et normalement si tu vas sur localhost/cgi-bin/test tu vas voir apparaitre l'output.
Personnellement je ne suis pas sur que ce soit la meilleure utilisation du C++...
[^] # Re: cgi?
Posté par . Takhi . Évalué à 2.
http://libcgi.sourceforge.net/
Enfin là tu n'as que la base... apres il te faut surement une bonne api pour acceder à des données, parce qu'un site dynamique sans rien a y mettre dedans ca risque d'etre un peu fade :-)
bon courage.
[^] # Re: cgi?
Posté par mmMMOoooOMMmm . Évalué à 5.
apt-cache show libcgicc1
Description: A C++ class library for writing CGI applications
An ANSI C++ compliant class library that greatly simplifies the creation of
CGI applications for the World Wide Web. libcgicc performs the following
functions:
.
* Parses both GET and POST form data transparently.
* Provides string, integer, floating-point and single- and multiple-choice
retrieval methods for form data.
* Provides methods for saving and restoring CGI environments to aid in
application debugging.
* Provides full on-the-fly HTML generation capabilities, with support for
cookies.
* Supports HTTP file upload.
* Compatible with FastCGI.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.