Foros del Web » Programando para Internet » PHP »

Composer PHP en entorno de produccion

Estas en el tema de Composer PHP en entorno de produccion en el foro de PHP en Foros del Web. Saludos! aquí con la pregunta de como usar composer en entornos de producción? Me explico: en producción se elimina el archivo composer.json? y el composer.lock? ...
  #1 (permalink)  
Antiguo 12/02/2015, 18:38
Avatar de jvier  
Fecha de Ingreso: septiembre-2014
Mensajes: 106
Antigüedad: 9 años, 7 meses
Puntos: 6
Pregunta Composer PHP en entorno de produccion

Saludos! aquí con la pregunta de como usar composer en entornos de producción?

Me explico: en producción se elimina el archivo composer.json? y el composer.lock?
la carpeta vendor la puedo renombrar? o como le hago para que estos archivos (que son muy conocidos) no sean accedidos desde la url?

Perdón por la ignorancia pero es que en estos momentos requiero de unas librerías que fueron desarrolladas usando composer.. y pues estoy aprendiendo.. nunca lo había usado
Gracias!

Otra duda! composer en algunos requerimientos hace clones de algunos repositorios.. mi duda es: con estos clones existe alguna 'vinculación' con el repositorio que me auto actualiza mi copia de archivos cuando lo actualizan?

Es que les comento.. si fuera así, siento que seria inseguro para mi aplicación y mi servidor porque no sabría que código nuevo o archivos nuevos se están metiendo en mi servidor. por ejemplo esta el Wordpress.. Que cuando uno menos espera ya esta actualizado y ni se sabe que nuevos archivos hay con los cuales podrían hasta ver y modificar mis archivos o base de datos. (Suena medio paranoico, pero es porque desconozco todo esto).
__________________
Me gusta desarrollar aplicaciones para Android, y me considero bueno para el PHP, Javascript y el AS3.

AH! y agradezco puntitos jeje (si mis respuestas te ayudan).
  #2 (permalink)  
Antiguo 12/02/2015, 18:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Composer PHP en entorno de produccion

De hecho ningún archivo de tu aplicación debería ser accesible, sólo uno: index.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. require '/app/index.php';

La idea, es que la carpeta /app (o como quieras llamarle) debes ubicarla fuera del document_root, y así en dicho index.php que sí está en el document_root sólo incluyes el script principal de tu aplicación.

Ahora, respecto a todas tus dudas de Composer te sugiero las revises en el sitio oficial de Composer, ahí se explica su funcionamiento, restricciones, etc.

Y ya con eso solucionas tu problema.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 12/02/2015, 18:49
Avatar de jvier  
Fecha de Ingreso: septiembre-2014
Mensajes: 106
Antigüedad: 9 años, 7 meses
Puntos: 6
Respuesta: Composer PHP en entorno de produccion

y tu lo usas así en tus proyectos de producción? sin eliminar o modificar archivos de composer?
__________________
Me gusta desarrollar aplicaciones para Android, y me considero bueno para el PHP, Javascript y el AS3.

AH! y agradezco puntitos jeje (si mis respuestas te ayudan).
  #4 (permalink)  
Antiguo 12/02/2015, 19:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Composer PHP en entorno de produccion

Claro, hay básicamente dos formas en que lo uso:

1. Usando Git, creo una rama especial "deploy/production" y ahí hago commit de todos los archivos, incluyendo las dependencias.

Así, una ves clonado en el servidor de producción no hay que hacer "composer install" para descargar nada de nuevo.

2. Usando Git, únicamente hago commit del composer.json/composer.lock, que a grandes rasgos es lo único que necesito en producción.

Después hago "composer install" y dado el archivo composer.lock sólo descargará las versiones ahí fijadas, ninguna otra.

La opción (1) no me gusta mucho, pero es útil cuando el servidor de producción no tiene Composer.

La opción (2) es mi favorita, de hecho es la recomendación estándar de Composer.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 12/02/2015, 19:18
 
Fecha de Ingreso: febrero-2015
Mensajes: 5
Antigüedad: 9 años, 2 meses
Puntos: 1
Respuesta: Composer PHP en entorno de produccion

Lo mas recomendable es no subir los archivos de composer a producción y mantenerlos solo para pruebas.

Si usas Symfony2, yo utilizo los ".htaccess" que son scripts leídos por el Servidor o Servicio Apache. Te muestro a continuación de la manera que yo redirecciono mi trafico.

Código:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} tudominio.com
RewriteCond %{REQUEST_URI} !^/web
RewriteRule ^(.*)$ /web/$1 [L]
</IfModule>
Con esto redirecciono todo mi trafico a la carpeta "web" en "public_html", y el script ".htaccess" lo guardo el la raiz del "public_html".

Puedes usar los mismos scripts para bloquear el acceso a la carpetas. Te recomiendo leas:
[URL="http://www.htpasswdgenerator.com/apache/htaccess.html"]http://www.htpasswdgenerator.com/apache/htaccess.html[/URL]

Y si quieres tener mas conocimientos sobre el tema:
[URL="http://www.desarrolloweb.com/manuales/htaccess-para-urls-amigables.html"]http://www.desarrolloweb.com/manuales/htaccess-para-urls-amigables.html[/URL]

Saludos.
  #6 (permalink)  
Antiguo 13/02/2015, 09:09
Avatar de jvier  
Fecha de Ingreso: septiembre-2014
Mensajes: 106
Antigüedad: 9 años, 7 meses
Puntos: 6
Respuesta: Composer PHP en entorno de produccion

Muchas gracias a los dos por sus respuestas.
__________________
Me gusta desarrollar aplicaciones para Android, y me considero bueno para el PHP, Javascript y el AS3.

AH! y agradezco puntitos jeje (si mis respuestas te ayudan).

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:37.