2010-04-30 9 views
5

Tengo curiosidad de saber si todo el producto PHP debe ser de fuente abierta si se va a implementar en el sitio web de otra persona. Como el código PHP se ejecuta por interpretación, si tengo un producto PHP para implementar en el host de otro, no parece haber ninguna razón para evitar que otros vean el código fuente.¿Es posible crear productos PHP de origen cercano?

Por lo tanto, el producto PHP está destinado a ser de código abierto, ¿verdad?

Para ser más precisos, supongamos que hago un sistema de blog de PHP. Me gustaría vender este producto a alguna empresa de alojamiento de blogs. ¿Es cierto que no puedo evitar que vean mi código fuente si lo compran?

Respuesta

1

Sí, es posible. Zend Guard puede encriptar su código fuente. El servidor simplemente necesita usar el Zend Optimizer para poder ejecutar su aplicación

No lo he intentado nunca, así que no tengo experiencia.

7

Open source es sobre la licenciapara obtener el código fuente y no acerca de la capacidad para visualizarla ... Incluso con los lenguajes compilados es posible extraer el código fuente - que no tiene el código de fuente abierta de forma automática - pero cualquier licencia de código abierto puede incluso convertir este código binario en código abierto.

2

Poner el código no compilado o no ofuscado en un servidor no lo califica como "código abierto". Para ser de código abierto, el código debe ser distribuido de cierta manera bajo ciertas pautas. Simplemente poner código en un servidor no lo convierte en código abierto.

Hay muchos proyectos en lenguajes compilados que son de código abierto.

0

Sí, está destinado a ser "código abierto" en el sentido de que cualquier persona con acceso al servidor va a ser capaz de verla.

Los verdaderos proyectos de "código abierto" tienen distribuido el código fuente. Si nadie tiene acceso al servidor, entonces no pueden obtener el código fuente de todos modos. Sin embargo, si escribe una aplicación para una empresa y coloca el código en su servidor, tendrá acceso a la fuente y podrá examinarla/modificarla. Esto no debería ser un problema, porque técnicamente poseen el código (si lo pagaron).

+0

¿Por qué es una mala idea? – rjh

+0

Respuesta editada, y vea http://www.codinghorror.com/blog/2005/05/obfuscating-code.html –

+0

"... técnicamente poseen el código (si lo pagaron)". Eso es algo contractual y NO es necesariamente cierto. Tome Windows, pagó por ello, pero ciertamente no tiene el derecho de examinarlo o modificarlo. En la pregunta del OP, parece más como si estuviera vendiendo un producto con licencia, y ciertamente puede escribir el acuerdo de licencia para prohibir los cambios de código. (Esto se opone a un trabajo por contrato donde el derecho de autor probablemente recaería en la empresa compradora). – josh3736

0

gente que he visto hacer esto antes:

exec(base64_decode('')); 

Aunque no es "perfecto" que puede esconderse de espectadores curiosos. Sin embargo, no recomendaría ocultar tu código. Si lo haces en productos de código abierto, la aplicación también debe ser de código abierto. Solo dale una licencia.

Cuestiones relacionadas