Fox Pages Server 2.1.0

Novidades!

Pipelining

- Adicionado para suporte a pipelining (multiplas requisições).
Existe na especificação do HTTP a possibilidade do web browser enviar multiplas requisições e o servidor deve responder todas as requisições na mesma ordem.

Certificados Digitais

- Novo campo CERTSTORE na tabela SERVERS.DBF. Este campo indica a localização do certificado e aceita os seguintes valores:

1) "MY" se o certificado está instalado na pasta de certificados pessoais.
2) "CA" se o certificado está instalado na pasta de certificados de autoridades de certificação.
3) "ROOT" se o certificado está instalado na pasta de certificados de certificação raiz.
4) Preencha este campo com o caminho e nome do arquivo do certificado, deste modo o certifcado não precisa ser instalado.

Importante:
O Windows separa os certificados de cada usuário. Os certificados DEVEM ser instalados seguindo as seguintes regras:
- No modo de desenvolvimento, deve ser instalado na conta do usuário logado.
- No modo de distribuição, devem ser instalados na conta SISTEMA.

- O certificado DEVE estar no formato PFX (Personal Information Exchange)

- O servidor precisa ser configurado para aceitar conexões na porta 443 (https) e devem ser feitos redirecionamentos da porta 80 (http).

Requisitos

Microsoft Visual FoxPro 9.0

O que é o Fox Pages Server

O Fox Pages Server é um webserver multithread para Visual FoxPro.

Distribuição

O Fox Pages Server é distribuído em dois modos: modo de desenvolvimento e modo de distribuição.

Modo de desenvolvimento

O modo de desenvolvimento requer Visual FoxPro instalado. Neste modo o servidor funciona por padrão em singlethread para que seja possível a utilização do Visual FoxPro para o desenvolvimento de novas funções para o servidor ou páginas FXP.

Modo de distribuição

O modo de distribuição requer o runtime do Visual FoxPro instalado. Neste modo o servidor funciona em multithread proporcionando um ganho extremo de processamento.

Nos modos de desenvolvimento e distribuição qualquer erro é registrado no arquivo server\serverlog.txt permitindo a detecção e rastreamento de eventuais erros.

Antes de iniciar

O Fox Pages utilizará como padrão a porta 80, portanto antes de iniciar o uso é necessário parar qualquer serviço que esteja usando a porta 80 (IIS, Apache, etc) ou alterar a porta usada no início do programa server.prg ou no campo correspondente da tabela server\data\servers.dbf

O debuguer do Visual FoxPro só funcionará no modo de desenvolvimento, pois é impossível a exibição de qualquer interface quando o código é executado em uma DLL multithread e qualquer tentativa pode levar ao retorno de erro ou congelamento da thread em uso.

Antes de instalar

Não tente executar o procedimento de instalação em modo de desenvolvimento e distribuição no mesmo computador. Se isto for necessário, execute o arquivo install.bat no lugar do instdev.bat, pois ele registrará os componentes também criará o Serviço no Windows. Configure o modo de desenvolvimento para utilizar uma porta diferente do modo de distribuição.

O modo de desenvolvimento é configurado nas primeiras linhas do programa server.prg.
O modo de distribuição é configurado nos arquivos que se encontram na pasta server\data.

Caso exista um conflito de portas será utilizado o modo que iniciar primeiro.

Instalação em modo de desenvolvimento

1) Faça o download do arquivo source.zip.
2) Descompacte o arquivo na pasta desejada.
3) Execute o arquivo instdev.bat ou install.bat conforme descrito acima. (Para instalar no Windows 10 execute pelo Prompt de comando como administrador)
4) Abra o projeto fpserver.pjx
5) Execute o programa server.prg

Use o comando SET STEP ON em qualquer parte do código do servidor ou da página FXP em desenvolvimento para iniciar o debuguer do Visual Fox Pro.

Instalação em modo de distribuição

1) Faça o download do arquivo binaries.zip.
2) Descompacte o arquivo na pasta desejada.
3) Execute o arquivo install.bat para registrar os componentes e serviços necessários. (Para instalar no Windows 10 execute pelo Prompt de comando como administrador)

Não é recomendado deixar os arquivos HTML junto com os compilados FXP na mesma pasta do servidor, eles podem ser baixados se a extensão for trocada no webbrowser.

Utilização

Após a inicialização do servidor utilize qualquer browser digitando no endereço http://localhost, se a porta for alterada, por exemplo para 8080, digite no endereço http://localhost:8080

Catalyst Sockwrench

O componente usado para as conexões é o Socketwrench da empresa Catalyst Development (www.catalyst.com).
Este componente é distribuído nas versões 6.0 gratuita e 8.0 comercial. A única limitação da versão gratuita é não ter suporte para conexões seguras (SSL/TLS).

A versão de desenvolvimento (código-fonte) está configurada para utilizar a versão 6.0 gratuita, o que será uma limitação somente se for necessário o uso de conexões seguras no ambiente de desenvolvimento ou para criar compilações próprias. No caso de compilações próprias, é necessário comprar uma licença do controle para utilizar a versão 8.0 comercial com SSL.

A versão de distribuição utiliza a versão 8.0 comercial para permitir o uso de conexões seguras.

A configuração entre versão gratuita e comercial é feita no arquivo server\prgs\foxpages.h como segue abaixo:

//SOCKETWRENCH
#DEFINE USEFREEVERSION
//#DEFINE CSWSOCK8LICENSEKEY "INSERT YOUR RUNTIME LICENSE HERE"

Créditos

Multithreading - VFP2C32T.FLL - Christian Elsched

Compactação - VFPCompression - Craig Boyd

Encriptação - VFPEncryption - Craig Boyd

JSON Parser - Versão modificada da biblioteca do Craig Boyd

Sockets - Socketwrench - Catalyst Development

Last edited Apr 5, 2016 at 7:09 PM by crivelari, version 5