Salve galera!
Quando criamos um software Java, entregamos para o cliente compilado, o código fonte fica conosco.
No caso do PHP, ao criar uma aplicação local eu tenho que disponibilizar, obrigatoriamente, o código fonte para o cliente?
Não existe uma forma de criptografar, gerenciar um servidor local para acesso a esse código? Alguma forma de o cliente só conseguir utilizar a aplicação, para evitar revenda ou roubo do software.
Não há meio infalível de se garantir isso. Antes de tudo, tenha um contrato (redigido com auxílio de um advogado) que estipule a licença de uso (o cliente tem o direito de usar o software, não revendê-lo ou distribui-lo). Assim, independente de seu código ter ou não mecanismos de proteção internamente, você pode acionar seu cliente judicialmente por quebra de contrato.
Você pode compilar o php, e fornecer um binário ao invés de um monte de arquivos php. Não sei quão bem isso funciona.
Outra opção seria embutir uma chamada para uma URL externa, indicando que seu software esteja em uso. Assim, toda vez que for feita uma requisição ao site (ou de tempos em tempos), o servidor do cliente chama uma URL de um site sob seu controle e verifica a licença. Obviamente, isso pode dar problemas (como o seu site estar fora do ar).
São algumas ideias, pensadas rapidamente.
Abraço.