Small HTTP server

|News| |Description| |Registration| |Home| |Forum| |License|

FAQ

  • Q:New version of PHP out "Security Alert! The PHP CGI cannot be accessed directly..."
  • A: Just edit php.ini in Windows directory, add line force_redirect=0 or cgi.force_redirect=0

  • Q: How do you configure Small HTTP Server to "virtually" host multiple websites?
  • A: Just, open "Settings.." dialog, go down to "Virtual hosts" part, enter host name and root dir for it, press "Add" button. If you haven't DNS for that host name, check "Add entry to system hosts file" and also enter IP address. Or you can do same via Web interface, in remote administration. You can create unlimited numbre of virtual hosts.

  • Q: Actually I'm getting that error now for every e-mail address that I send to.
  • A: Direct valid IP address of DNS server for SMTP, in options. It's might be any external DNS server, it's must know mailhosts for your reseptiors. To know your current DNS server use winipcfg.exe -all or ipconfig.exe -all utilites in Windows directory.

  • Q: How to make e-mail users useing the small http server ?
  • A: Add user, Check SMTP and POP3 to enable accsess to e-mail.

  • Q: I can't get perl scripts to work with your server. Can you tell me where to get some proper documentation, or who I can ask that has this working on a windows machine somewhere else?
  • A:1. Your need Perl interpreter. It's my be found on http://www.perl.com/ , http://www.activestate.com/ For Win95/98/ME also may be use DJGPP GNU Perl. It's perl54b.zip, perl552b.zip on http://www.delorie.com/djgpp/ or on ftp://ftp.simtel.net/pub/simtelnet/ You must setup it.
    2. You must option server to Perl. In settings change where is perl.exe or perlis.dll. Also, if your scripts will have not .pl extension e.g. .cgi, you must add interpreter for this extensions.
    3. If CGI ident in options is "\cgi-bin\" you must create cgi-bin subdirectory into your web directories and plase your scripts here.

  • Q:What is the specific format of the SHHTP server log file? It does not appear to conform to "standard" (such as apache, etc.) logfile specifications.
  • A:Isn't standard in Apache. In my server log record is time - remote IP info and just incomming request. Unlike Apache with my log you can repeat request via telnet, to check errors in scripts. You can create easy script that convert my log file in any format. Here is an example on Perl:
     open(IFILE,"<$ARGV[0]") || die("Cant open source file");
     open(OFILE1,">access$ARGV[0]") || die("Cant open target file");
     open(OFILE2,">ref$ARGV[0]") || die("Cant open target file");
     open(OFILE3,">error$ARGV[0]") || die("Cant open target file");
    
     while(<IFILE>)
     {
      chop $_;
      if($_ eq ''){$ip='';   $dat='';  $tim='';   $url=''; $prev='';}
      else
      {($a,$b,$c)=split(/\>/, $_ ,3);
       if($a eq '!-')
       {($dat,$tim,$ip)=split(/ /, $b ,3);
        $ip =~ tr/\[\://d;
       }
       else
       {($a,$b)=split(/ /, $_ ,2);
        if( $a eq 'GET' || $a eq 'POST' )
        { ($url,$b)=split(/ /, $b ,2);
          printf OFILE1 '%s - - [%s/2002 %s] "%s" 200
    ',$ip,$dat,$tim,$_;
        }
        elsif($a eq 'Error.' )
        { printf OFILE3 '[%s/2002 %s] access to %s failed for %s, reason: %s
    ',$dat,$tim,$prev,$ip,$b;
        }
        elsif($a eq 'Error' )
        { printf OFILE3 '[%s/2002 %s] failed for %s, reason: %s
    ',$dat,$tim,$ip,$b;
        }
        elsif($a eq 'Referer:' ){printf OFILE2 '%s -> %s
    ',$b,$url; }
        else{$prev=$_;}
       }
      }
     }
     close  IFILE;
     close  OFILE1;
     close  OFILE2;
     close  OFILE3;
    


  • If you not found your question here, you please ask by E-mail or in forum.

         Rambler's Top100 Service