Tengo varios módulos Perl instalados en mi máquina de host en ~/perl
, ¿cómo los agrego a la ruta del módulo Perl? El establecimiento de PERL5LIB
o unshift
seguramente funciona, pero la variable de entorno no ayuda cuando se ejecuta como un script CGI y la forma @INC
no es muy portátil. ¿Hay una mejor manera? Esto tiene que ser un problema común, ¿me estoy perdiendo algo?¿Cómo puedo configurar la ruta de inclusión de Perl para módulos para una secuencia de comandos CGI?
¿Cómo puedo configurar la ruta de inclusión de Perl para módulos para una secuencia de comandos CGI?
Respuesta
PERL5LIB funciona muy bien para scripts CGI. Solo tiene que establecer la variable en el lugar correcto, como la configuración del servidor. ¿Qué servidor web estás usando? Para Apache, utilizo la directiva SetEnv de mod_env.
@INC es portátil. Es posible que las rutas que coloque allí no sean las mismas en todas las máquinas, pero no debería tener un problema con la variable en sí misma.
¿Ha leído las entradas FAQ en perlfaq8:
una forma más limpia de hacerlo OMI es:
use lib "/path/" ;
hay otras maneras interesantes y buenos para hacerlo que se pueden encontrar aquí:
http://www.slideshare.net/pfig/cpan-training-presentation/
También, re: CGI scripts, PUEDE definir rutas PERL5LIB para su CGI Env, solo depende de su servidor web.
Algunos Webhosts permiten el control específico de las variables env para el entorno CGI, y solo tiene que configurarlos, otros pueden tener una lista de "permisos" que permite que las variables visibles al inicio aparezcan en el ámbito local.
Puede ayudarlo a leer sobre cómo hacerlo en su servidor HTTP específico.
No es una opción más, si el establecimiento ENV no es de su gusto: local::lib
¿Qué busca en algunas rutas predefinidas automáticamente.
+1 Sólo tener en cuenta que PERL5LIB se ignora si tiene modo de mancha encendido ... http: //perldoc.perl.org/perlsec.html#Taint-mode-and-%40INC – draegtun
- 1. ¿Cómo puedo informar continuamente al usuario sobre el progreso de una secuencia de comandos Perl CGI?
- 2. ¿Cómo puedo obtener una secuencia de comandos Perl para ver las variables en otra secuencia de comandos de Perl?
- 3. ¿Cómo puedo probar una secuencia de comandos de Perl independiente?
- 4. cómo pasar una matriz a una secuencia de comandos perl cgi con un formulario HTML?
- 5. Cómo agregar una ruta de inclusión global para xcode
- 6. Cómo especificar el directorio de inclusión para la secuencia de comandos de configuración
- 7. ¿Cómo puedo bifurcar un proceso en segundo plano desde una secuencia de comandos Perl CGI en Windows?
- 8. secuencia de comandos por lotes para establecer una variable con la ubicación de ruta actual
- 9. Perl CGI Scripts no puede encontrar módulos en la biblioteca
- 10. ¿Cómo puedo configurar el entorno de Rails para mi secuencia de comandos Ruby algo independiente?
- 11. Obtención de la ruta de una secuencia de comandos R
- 12. ¿Cómo deobfusacte correctamente una secuencia de comandos de Perl?
- 13. ¿Cómo puedo encontrar la ruta a una inclusión en Symfony2?
- 14. Argumento booleano para la secuencia de comandos
- 15. agrega automáticamente la ruta en una secuencia de comandos MATLAB
- 16. ¿Cómo puedo configurar el autocompletado para los comandos de Git?
- 17. Configurar IIS 6.0 para ejecutar cgi (.exe)
- 18. Cómo configurar GHCi para importar módulos automáticamente
- 19. ¿Cómo puedo crear una secuencia de comandos Perl para obtener algunos argumentos de línea de comando "con nombre"?
- 20. Leyendo el encabezado de un cliente de la secuencia de comandos CGI de Python?
- 21. ¿Cómo puedo enviar datos POST y GET a una secuencia de comandos Perl CGI a través de la línea de comando?
- 22. ¿Cómo puedo ejecutar una secuencia de comandos de Perl como un daemon del sistema en Linux?
- 23. ¿Cómo especificar en la secuencia de comandos que solo se use una versión específica de perl?
- 24. Secuencia de comandos SQL para crear una secuencia de comandos de inserción
- 25. ¿Debo usar rutas de inclusión relativas para mi proyecto o colocar el directorio de inclusión en la ruta de inclusión?
- 26. ¿CÓMO usar Pycharm para depurar la secuencia de comandos python?
- 27. Tratando de encontrar todos los módulos del kernel necesarios para mi máquina usando la secuencia de comandos de shell
- 28. ¿Cómo se obtiene una gema de rubí en la ruta de inclusión para "requerir"
- 29. PHP, Cómo establecer ruta de inclusión
- 30. ¿Cómo puedo instalar módulos Perl sin privilegios de administrador?
Gracias, no sabía acerca de la directiva SetEnv. Eso es exactamente lo que estaba buscando. – zoul
Esto no funciona en todas las configuraciones de servidor; algunos desactivan SetEnv, y de lo que estoy leyendo, otros solo le permiten establecer variables de entorno que comienzan con HTTP_. Algún tipo de medida de seguridad, creo. – user1618143