strona www - reakcja na polecenia

0

Jak zrobić/założyć stronę www, która odpowiada na moje komendy?

na przykład piszę w przeglądarce: www.slownik.pl piasek

i to ma mi odpowiedzieć podając znaczenie słowa 'piasek', które sobie wyszuka z listy słówek na pliku.

2

w C/C++ raczej tego nie zrobisz. Jak pytasz o takie coś to naucz się podstaw HTML, javascript, css do obsługi użytkownika oraz php/jave/javascript(node.js)/C# do serwera oraz jakąś bazę danych.

A jak to działa:
Wpisujesz na stronie www w text, jest on wysyłany na serwer. Na serwerze jest on szukany bazie danych. Wynik zostaje wysłany do klienta(przeglądarki) jako odpowiedz. Po stronie klienta jest to odpowiednio interpretowane i wyświetlanie.

0

Ja muszę w c++ to zrobić.

a nawet znalazłem coś:
https://en.wikipedia.org/wiki/Common_Gateway_Interface

"The overhead involved in process creation can be reduced by techniques such as FastCGI that "prefork" interpreter processes, or by running the application code entirely within the web server, using extension modules such as mod_perl or mod_php. Another way to reduce the overhead is to use precompiled CGI programs, e.g. by writing them in languages such as C or C++, rather than interpreted or compiled-on-the-fly languages such as Perl or PHP,"

mówią że c lepiej do tego się nadaje od skryptów.

3

Poszukaj jakigos webframeworka w c++ i zrob stronę ktora przyjmie parametr

7

Mam do dyspozycji tylko dwa, dość szczątkowe, posty, więc mogę się mylić.

  1. Wygląda mi to na problem xy. Podałeś wymyślone przez Ciebie rozwiązanie do problemu, którego nie znamy. Będzie nam łatwiej Ci pomóc jeżeli powiesz jaki masz problem. Napisz proszę co chcesz osiągnąć. Jakie masz wejście (o tym trochę wiemy bo chcesz w przeglądarce wpisać www.slownik.pl piasek) i co ma się zadziać.

  2. Jestem na 99.99% pewien, że wcale nie musisz tego robić w C++. Wydaje Ci się, że musisz bo gdzieś przeczytałeś, że wszystko inne jest wolne i serwer nie uciągnie Ci ruchu jeżeli nie użyjesz kompilowalnego języka plus nie będziesz nastawiony na optymalizację. Powiem tak, przykład, który podałeś uciągnąłby raspberry pi z odpalonym serwerem http waz z interpreterem PHP napisanym w Pythonie.
    Oczywiście mogę się mylić, i może rzeczywiście szacujesz, że Twoja strona będzie musiała obsługiwać miliony/miliardy requestów na sekundę, wtedy malinka by nie podołała :/

Teraz algorytm:

Jeżeli dwa poprzednie punkty są prawdziwe:
    zainteresuj się czymś przyjemniejszym niż C++. Np. php, nodejs, python::flask/django itp itd
W innym wypadku:
    czytaj dalej

Jeżeli dotarłeś tu, to jest tylko jedno wyjaśnienie. W szkole/na uczelni dostałeś zadanie napisania serwera z wykorzystaniem C++.
Rozwiązaniem jest zmiana uczelni.

Jeżeli dalej chcesz robić to w C++, to wykorzystaj gotowe narzędzie, np. https://github.com/yhirose/cpp-httplib (nie znam tego jak coś).
Jeżeli musisz to napisać w C++ OD ZERA, to najpierw poczytaj co to jest protokół HTTP oraz jak się używa socketów w C++. Jak ogarniesz te dwie rzeczy, to daj znać.

0
stryku napisał(a):

Jeżeli dotarłeś tu, to jest tylko jedno wyjaśnienie. W szkole/na uczelni dostałeś zadanie napisania serwera z wykorzystaniem C++.
Rozwiązaniem jest zmiana uczelni.

Ty tak poważnie?

2

FastCGI to "emocjonująca nowość", tyle że roku ok 1995 (a propos zmiany uczelni)

W ogóle robienie programu w C/C++ by go włączyć przez CGI (albo "mniej złe" FastCGI) zabijając szybkość o rzędy wielkości, to jakieś jaja.
W owych czasach się (być może) myślało w ten sposób, bo C/C++ był jedynym rozpowszechnionym językiem kompilowanym, dającym tajność kodu źródłowego, jakie takie type-safe programowanie itd.
CGI pozwalało go bezpiecznie dla serwera go odpalić (tj w innej przestrzeni adresowej - dlatego wzmianki @stryku o pisaniu serwera we C/C++ nie podpadają pod ten wątek).

Nie wiem, czy wspólcześnie typowo skonfigurowany Apache / Ngnix w ogóle odpala interfejs CGI.

nowewww napisał(a):

Jak zrobić/założyć stronę www, która odpowiada na moje komendy?

na przykład piszę w przeglądarce: www.slownik.pl piasek

i to ma mi odpowiedzieć podając znaczenie słowa 'piasek', które sobie wyszuka z listy słówek na pliku.

Nie weź tego zbyt osobiście, ale sam sposób zadania pytania sugeruje, ze nie masz podstaw, fundamentów w dziedzinie.
Robiąc (hipotetycznie) w C masz "na dzień dobry" 300-100o linii kodu "rozbiegowego", plus potem na każdą linię, która by przypadała np w PHP, to w C masz 3-5..

0

Nie wiem jak to się fachowo nazywy co mam zrobić.

Opiszę działanie:

  • uruchamiam program na komputerze, albo na smartfonie, albo nawet wchodzę z przeglądarki, wpisując adres www + komendy.
  • i mam otrzymać odpowiedź od serwera

może to być cokolwiek, nawet gra w szachy: wysyłam swój ruch, a serwer oblicza swój i mi go przesyła.

2

Szukasz czegoś, co Ci pozwoli zaprogramować dynamiczną stronę WWW — tzn. taką, która nie jest z góry określonym zbiorem przygotowanych wcześniej dokumentów, ale jest generowana „w locie”. Właściwie każda strona taka jest — w szczególności właśnie i to forum.

Jest całe mnóstwo języków lub frameworków, które powstały w tym celu — PHP, Ruby on Rails, Python z Django…

To co Ty znalazłeś… no będzie działać. Ale normalnie się klepie takie rzeczy w bardziej wyspecjalizowanych językach, takich jak te wyżej, bo z tym mniej roboty.

0

zapomniałem dodać ze serwer jest pod moją kontrola,
mam pełne uprawnienie do czytania, usuwania, modyfikacji danych.

np. wysyłam komende: śpij do wtorku, i on ma to wykonać - nie będzie odpowiadał do wtorku!

2

No… to zrób. Używany przez Ciebie serwer na pewno będzie miał jakieś mechanizmy wyjścia na system, które będziesz mógł skonfigurować. A jak się bardzo uprzesz, to i swój serwer od podstaw napisać też możesz — już Ci Stryku podpowiedział, gdzie zacząć.

Bardzo niewdzięczna robota, takie odkrywanie koła na nowo… Ale jak musisz, to powodzenia; spróbujemy Ci pomóc z konkretnymi problemami.

0

Moim zadaniem jest utworzenie od zera:

  1. ustawienie samej domeny, czy jak to sie nazywa: nowa strona np. www.reaktor.pl
  2. kod w c++ do komunikacji i po obu stronach: na serwerze jaki po stronie klientów
  3. ten sam kod w c++ ma wykrywać z kim ma do czynienia: z przeglądarką czy z programem (klienckim chyba) w c++
  4. komendy są zdefiniowane w programie c++ - tym na serwerze

nie wiem co tam jeszcze potrzeba.

2

Robienie tego w C++ nie ma sensu, ale skoro się upierasz...

Zainstaluj sobie dodatkową bibliotekę:
https://pocoproject.org/download.html

Jak już to zrobisz, przeczytaj
https://pocoproject.org/slides/200-Network.pdf
To co Cię interesuje jest od strony 23

Tu masz przykładowy kod (stary i nie wiem czy działa)
https://www.codeproject.com/articles/252827/learning-poco-a-simple-http-server

Jeśli nie słyszałeś do tej pory o wątkach, to sobie od razu doczytaj ;)

3

Raczej tak, znam podstawy c++, a samo c jeszcze lepiej, ale nie znam sie na sieciach dlatego pytam. - nowewww wczoraj, 22:10

Szkoda, nie pytałem o PODSTAWY ale o DUŻE doświadczenie i kwalifikacje.
Z doświadczeniem - nawet nie mówiąc o gramie kodu - byś po pierwsze miał (o wiele) lepszy ogląd projektu, widział co MUSISZ, co MOŻESZ, jak duży-problem pociąć na pod-problemy (w których miejscach ciąć), wybrać właściwe architektury (i nie ukrywajmy języki). Przy braku, nawet nie bardzo jest jak ubrać w ścisłe słowa, że nawet nie świta realizacja (bo jak realizować chmurkę z mgły).
Czy choćby zobaczenie "co jeszcze potrzeba".

Powyższe pięć punktów to się nadaje na marketingowa ulotkę a nie plan/uwarunkowania projektu. A o kodowaniu to w ogóle nic nie mówię.
A znajomość języka jaka się przebija, to "jeszcze nie wiem, czego nie wiem", sorry Winnetou

Ukrywasz, co to za sytuacja, ale myślę przerosła Twoje obecne kwalifikacje nie o mieciąc-dwa, ale o rzad wielkości/1-3 lat profesjonalnego (tzn pełnoetatowego a nie z doskoku 2x do roku) "skila". Znalazłeś się w niewłaściwym punkcie czasoprzestrzeni. Wyplątaj się z tego.

nowewww napisał(a):

mówią że c lepiej do tego się nadaje od skryptów.

Kto mówi?
"do tego", czyli do czego?

0
Bartłomiej Golenko napisał(a):

Robienie tego w C++ nie ma sensu, ale skoro się upierasz...

Zainstaluj sobie dodatkową bibliotekę:
https://pocoproject.org/download.html

Jak już to zrobisz, przeczytaj
https://pocoproject.org/slides/200-Network.pdf
To co Cię interesuje jest od strony 23

Tu masz przykładowy kod (stary i nie wiem czy działa)
https://www.codeproject.com/articles/252827/learning-poco-a-simple-http-server

Jeśli nie słyszałeś do tej pory o wątkach, to sobie od razu doczytaj ;)

Sprawdzę to, zrobię, więc chwilowo znikam.
Za kilka din dam znać, czy to działa.

Aha. Gdzie najtaniej wynająć, kupić serwer - domenę, albo wynająć na próbę?

0

Zacznij może od tego : https://www.codeproject.com/Articles/5280036/Making-HTTP-REST-Request-in-Cplusplus-With-WinHTTP
To są podstawy, musisz najpierw ogarnąć obsługę protokołu http w C++ i podstawowych operacji na nim.

1 użytkowników online, w tym zalogowanych: 0, gości: 1