Serwer HTTP w DElhpi

0

Czy istnieje mozliwosc postawienia serwera ( cos w stylu apache'a) w delphi i zeby mozliwe bylo łączenie sie z tym kompem przez Internet Explorera (ew inna przegladarke), i otrzymac liste polecen i móc je wydawać programowi ze stronki??

// serwer HTML?? chyba HTTP...

//ok, ok - niechaj i wam będzie HTTP

0

jasne. za pomocą komponentów INDY SERWERS tam jest IdHTTPServer czy coś takiego. tylko ostrzegam, trzeba się z tym sporo męczyć :(

0

dzieki, zobacze

0

z tym sporo namęczyć? To jest ~10 sekund!

0

chyba strona główna bo jak chcesz zrobić żeby ci kompilowało skrypty PHP albo żeby ściągać z niego pliki to trzeba się trochę namęczyć. Sam serwer to fucktycznie 10 sek. Aha ale serwer będzie miał adres http://twoje.ip.ip.ip albo w sieci lokalnej http://nazwatwojegokomputera i http://192.168.ip.ip
Stronę testować można najłatwiej wpisując http://localhost

0

Dzieki ziomale.
Wszystko mi juz dziala

0

chyba strona główna bo jak chcesz zrobić żeby ci kompilowało skrypty PHP (cut)

Właśnie, jak to zrobić?? Tzn: chodzi mi o możliwość wykonywania skyptów php. Zupełnie nie mam pojęcia jak to zroić...

Pozdrawiam...d[AvE]

0

Przecież są binaria PHP pod windowsa - czytac dokumentacje API. :-D :-D

0

mozna tez uzyc samej biblioteki php4ts.dll tylko na google musisz poszukac naglowki do niej :-)

0

A w jaki sposób zrobić wysylanie plików, bo tego takze potrzebuje??

0

co musze po ulozeniu komponentu na formie TIdHTTPServer ustawic by
sciezka : localhost\c:\a.htm zadzaiala ?

0

Najlepiej zobaczyć do demos a nie pytac sie na forum:
%:\Program Files\Borland\Delphi\Demos\Indy\HTTPServer\HTTPServer.dpr

0

patrzylem tam do katalogu ale nie mam w indy zadnych przykladow

mzona gdzies z neta scaignac?

0

jak zrobic taki server ze jak pojde do kumpla na koma wpisze w IE swoje ip to mi <ort>pokarze </ort>godzine ktorajest u mnie na kompie?

0

Czlowieku ty se jaja z tego forum robisz? Przeczytaj se jakis kurs, pomysl troche, kazdy potrafi wstac rano, powiedziec sobie "napisze dzisiaj serwer :D", otwieram browsera i wpisuje 4programmers ... tak sie nie robi.

0

To nawet ja umiem zrobić!

0

Można było by tez użyć najprostszych socketów a nie iść na łatwiznę z INDY

0

Powiedz: JAK :]

0

Powiedz: JAK :]

A, chociażby tak:

unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ScktComp, StdCtrls, strutils;

type
  TForm1 = class(TForm)
    server: TServerSocket;
    Memo1: TMemo;
    procedure serverClientRead(Sender: TObject; Socket: TCustomWinSocket);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

const
  rootfile='index.html';

implementation

{$R *.dfm}

procedure TForm1.serverClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var
s:array [0..1023] of char;
l:integer;
request, temp:tstringlist;
begin
l:=socket.ReceiveLength;
socket.ReceiveBuf(s, l);
request:=tstringlist.Create;
temp:=tstringlist.Create;
request.Text:=s;
memo1.Text:=s;

temp.Text:=request[0];
temp.Text:=ansireplacetext(request[0], ' ', #13#10);

temp[1]:=ansireplacetext(copy(temp[1], 2, length(temp[1])-1), '/', '');
temp[1]:=ansireplacetext(temp[1], '%20', ' ');

if temp[1]='' then
temp[1]:=rootfile;

if not fileexists(extractfilepath(application.ExeName)+'WWW'+temp[1]) then
begin
memo1.Lines.Add('Błąd - '+extractfilepath(application.ExeName)+'WWW'+temp[1]);
temp[1]:=extractfilepath(application.ExeName)+'Error.tpl';
end
else
temp[1]:=extractfilepath(application.ExeName)+'WWW'+temp[1];

memo1.Lines.Add(temp[1]);

socket.SendStream(tfilestream.Create(temp[1], fmopenread or fmsharedenywrite));
socket.Close;
end;

end.

to najbanalniejszy serwer HTTP, który nie obsługuje wielu rzeczy, ale działa i jak widac, nie jest zbyt skomplikowany. Ruszysz głową, przejrzysz specyfikację HTTP albo chociaż obejrzysz jakimś snifferem co wysyła przeglądarka i starczy.

0

Nie znalazł ktos może jak odpalać pliki php pod takim serwerem???

0

zauwaz ze to watek sprzed roku ponad [diabel]

korzystasz z biblioteki php4ts.dll [chyba]. Widać że nie czytałeś wcześniejszej czesci watku!

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