Beginning Perl Web Development

Total Page:16

File Type:pdf, Size:1020Kb

Beginning Perl Web Development 5319chFM.qxd 10/6/05 9:29 AM Page i Beginning Web Development with Perl From Novice to Professional Steve Suehring 5319chFM.qxd 10/6/05 9:29 AM Page ii Beginning Web Development with Perl: From Novice to Professional Copyright © 2006 by Steve Suehring All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN (pbk): 1-59059-531-9 Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1 Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. Lead Editor: Ewan Buckingham Technical Reviewer: James Lee Editorial Board: Steve Anglin, Dan Appleman, Ewan Buckingham, Gary Cornell, Tony Davis, Jason Gilmore, Jonathan Hassell, Chris Mills, Dominic Shakeshaft, Jim Sumser Project Managers: Laura Cheu, Richard Dal Porto Copy Editors: Marilyn Smith, Nicole LeClerc Assistant Production Director: Kari Brooks-Copony Production Editor: Ellie Fountain Compositor: Kinetic Publishing Services, LLC Proofreader: Lori Bring Indexer: Rebecca Plunkett Cover Designer: Kurt Krames Manufacturing Director: Tom Debolski Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail [email protected], or visit http://www.springeronline.com. For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710. Phone 510-549-5930, fax 510-549-5939, e-mail [email protected], or visit http://www.apress.com. The information in this book is distributed on an “as is” basis, without warranty. Although every precau- tion has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work. The source code for this book is available to readers at http://www.apress.com in the Source Code section. 5319chFM.qxd 10/6/05 9:29 AM Page iii Contents at a Glance About the Author . xiii About the Technical Reviewer. xv Acknowledgments . xvii Introduction. xix PART 1 ■ ■ ■ CGI Development with Perl ■CHAPTER 1 The CGI Module. 3 ■CHAPTER 2 Popular CGI Modules. 35 ■CHAPTER 3 Databases and Perl . 49 ■CHAPTER 4 System Interaction . 73 PART 2 ■ ■ ■ Internet Interaction with LWP and Net:: Tools ■CHAPTER 5 LWP Modules . 89 ■CHAPTER 6 Net:: Tools . 107 PART 3 ■ ■ ■ XML and RSS ■CHAPTER 7 SOAP-Based Web Services . 137 ■CHAPTER 8 Perl and RSS . 153 ■CHAPTER 9 XML Parsing with Perl . 165 PART 4 ■ ■ ■ Performance Enhancement with mod_perl ■CHAPTER 10 Apache and mod_perl . 183 ■CHAPTER 11 Development with mod_perl . 201 iii 5319chFM.qxd 10/6/05 9:29 AM Page iv PART 5 ■ ■ ■ Creating Web Templates ■CHAPTER 12 The Template Toolkit . 233 ■CHAPTER 13 Perl Web Sites with Mason. 263 ■APPENDIX Perl Basics . 283 ■INDEX . 339 iv 5319chFM.qxd 10/6/05 9:29 AM Page v Contents About the Author . xiii About the Technical Reviewer. xv Acknowledgments . xvii Introduction. xix PART 1 ■ ■ ■ CGI Development with Perl ■CHAPTER 1 The CGI Module . 3 An Overview of CGI . 3 What You Need for This Chapter . 4 Hello World, CGI Style . 5 Function-Oriented Hello World. 5 Object-Oriented Hello World. 9 A Closer Look at the CGI.pm Functions . 11 HTML Shortcuts . 11 Dynamic Pages and Forms. 12 Cookies . 15 Environment Variables . 23 Viewing Environment Variables . 23 Carrying Values Between Forms . 24 Interaction with the System. 26 Debugging and Troubleshooting . 27 Verbose Output. 28 Syntax Check . 28 The Carp Module . 29 Other Troubleshooting Tips. 31 Security Considerations with CGI Programs . 31 File Permissions . 32 Taint Mode . 32 Strictness . 33 Untrusted Data from Forms . 33 Untrusted Data from Cookies. 34 Summary . 34 v 5319chFM.qxd 10/6/05 9:29 AM Page vi vi ■CONTENTS ■CHAPTER 2 Popular CGI Modules. 35 Integration with Other Modules. 35 CGI::Carp . 35 URI::Escape. 39 Net::SMTP . 43 Mod_perl and HTML::Mason . 44 Interaction Based on Environment Variables. 45 Security Considerations with CGI Modules . 47 Summary . 47 ■CHAPTER 3 Databases and Perl . 49 Interacting with a Database. 49 The DBI . 49 Database Drivers . 50 Data Source Names, Credentials, and Attributes . 51 Database Handles . 52 Statement Handles . 53 Error Handling. ..
Recommended publications
  • Revealing Injection Vulnerabilities by Leveraging Existing Tests
    Revealing Injection Vulnerabilities by Leveraging Existing Tests Katherine Hough1, Gebrehiwet Welearegai2, Christian Hammer2 and Jonathan Bell1 1George Mason University, Fairfax, VA, USA 2University of Potsdam, Potsdam, Germany [email protected],[email protected],[email protected],[email protected] Abstract just one of over 8,200 similar code injection exploits discovered in Code injection attacks, like the one used in the high-prole 2017 recent years in popular software [44]. Code injection vulnerabilities Equifax breach, have become increasingly common, now ranking have been exploited in repeated attacks on US election systems [10, #1 on OWASP’s list of critical web application vulnerabilities. Static 18, 39, 61], in the theft of sensitive nancial data [56], and in the analyses for detecting these vulnerabilities can overwhelm develop- theft of millions of credit card numbers [33]. In the past several ers with false positive reports. Meanwhile, most dynamic analyses years, code injection attacks have persistently ranked at the top rely on detecting vulnerabilities as they occur in the eld, which of the Open Web Application Security Project (OWASP) top ten can introduce a high performance overhead in production code. most dangerous web aws [46]. Injection attacks can be damaging This paper describes a new approach for detecting injection vul- even for applications that are not traditionally considered critical nerabilities in applications by harnessing the combined power of targets, such as personal websites, because attackers can use them human developers’ test suites and automated dynamic analysis. as footholds to launch more complicated attacks. Our new approach, Rivulet, monitors the execution of developer- In a code injection attack, an adversary crafts a malicious in- written functional tests in order to detect information ows that put that gets interpreted by the application as code rather than may be vulnerable to attack.
    [Show full text]
  • SWE 642 Software Engineering for the World Wide Web
    SWE 642 Software Engineering for the World Wide Web Fall Semester, 2017 Location: AB L008 Time: Tuesday 7:20-10:00pm Instructor Overview Textbook and Readings Grading Schedule Academic Integrity Professor: Dr. Vinod Dubey Email: [email protected] Class Hours: Tuesday 7:20-10:00, AB L008 Prerequisite: SWE 619 and SWE Foundation material or (CS 540 and 571) Office Hours: Anytime electronically, or by an appointment Teaching Assistant: Mr. Shravan Hyderabad, [email protected] Overview OBJECTIVE: After completing the course, students will understand the concepts and have the knowledge of how web applications are designed and constructed. Students will be able to engineer high quality building blocks for Web applications. CONTENT: Detailed study of the engineering methods and technologies for building highly interactive web sites for e-commerce and other web-based applications. Engineering principles for building web sites that exhibit high reliability, usability, security, availability, scalability and maintainability are presented. Methods such as client-server programming, component-based software development, middleware, and reusable components are covered. After the course, students should be prepared to create software for large-scale web sites. SWE 642 teaches some of the topics related to the exciting software development models that are used to support web and e-commerce applications. We will be studying the software design and development side of web applications, rather than the policy, business, or networking sides. An introductory level knowledge of HTML and Java is required. SWE 619 is a required prerequisite and SWE 632 is a good background course. The class will be very practical (how to build things) and require several programming assignments.
    [Show full text]
  • Strange History
    A STRANGE HISTORY. A DRAMATIC TALE, IN EIGHT CHAPTERS. BY MESSRS. SLINGSBY LAWRENCE AND CHARLES MATHEWS, Authors of " A Chain of Events," &c. &c. THOMAS HAILES LACY, WELLINGTON STREET, STRAND, LONDON. First Performed at the Royal Lyceum Theatre, on Easter Monday, March 29th, 1853. CHARACTERS. JEROME LEVERD ..................................... Mr. CHARLES MATHEWS. LEGROS Mr. FRANK MATTHEWS. NICOLAS Mr. ROBERT ROXBY. MAURICE BELLISLE ................................ Mr. COOPER. DOMINIQUE Mr. JAMES BLAND. ALFRED DE MIRECOUR ..................... Mr. BELTON. JEAN BRIGARD ............................. Mr. BASIL BAKER. AMEDEE Mr. ROSIERE. HECTOR DE BEAUSIRE ...................... Mr. H. BUTLER. CAPTAIN OF GENDARMES ................. Mr. ABBOTT. PIERRE Mr. HENRY. CHRISTINE Madame VESTRIS. MADAME LEGROS .......................................... Mrs. FRANK MATTHEWS. NICOTTE Miss JULIA ST. GEORGE. ESTELLE Miss M. OLIVER. COUNTESS DE MIRECOUR ................... Mrs. HORN. MANETTE Miss MASON. MARGUERITE Miss WADHAM. Time in Representation, Three Hours. If performed in Five Acts, Two Hours and Twenty Minutes. COSTUMES. In the first three chapters Tyrolean ; and French soldiers. In the rest, Breton peasants and French gentlemen of 1810-15. JEROME.—1st Dress—Peasant's brown jacket, black sleeves, red vest; full brown trunks i grey leggings ; shoes ; felt Swiss hat and feather ; over-coat for the mountains, brown camels hair, trimmed with fur. 2nd Dress—Brown open jacket, without sleeves ; holland shirt. 3rd Dress—Light blue open jacket, slashed sleeves of brown ; red em- broidered vest; light drab full trunks, all trimmed with white and coloured gimp ; white buttons ; striped silk sash. 4th Dress—Long blue dress coat (Paris cut), gilt buttons; white vest, trimmed with white fringe; white silk stockings ; short blue breeches ; Hessian boots, &c.; sugar-loaf hat; long hair.
    [Show full text]
  • Pragmaticperl-Interviews-A4.Pdf
    Pragmatic Perl Interviews pragmaticperl.com 2013—2015 Editor and interviewer: Viacheslav Tykhanovskyi Covers: Marko Ivanyk Revision: 2018-03-02 11:22 © Pragmatic Perl Contents 1 Preface .......................................... 1 2 Alexis Sukrieh (April 2013) ............................... 2 3 Sawyer X (May 2013) .................................. 10 4 Stevan Little (September 2013) ............................. 17 5 chromatic (October 2013) ................................ 22 6 Marc Lehmann (November 2013) ............................ 29 7 Tokuhiro Matsuno (January 2014) ........................... 46 8 Randal Schwartz (February 2014) ........................... 53 9 Christian Walde (May 2014) .............................. 56 10 Florian Ragwitz (rafl) (June 2014) ........................... 62 11 Curtis “Ovid” Poe (September 2014) .......................... 70 12 Leon Timmermans (October 2014) ........................... 77 13 Olaf Alders (December 2014) .............................. 81 14 Ricardo Signes (January 2015) ............................. 87 15 Neil Bowers (February 2015) .............................. 94 16 Renée Bäcker (June 2015) ................................ 102 17 David Golden (July 2015) ................................ 109 18 Philippe Bruhat (Book) (August 2015) . 115 19 Author .......................................... 123 i Preface 1 Preface Hello there! You have downloaded a compilation of interviews done with Perl pro- grammers in Pragmatic Perl journal from 2013 to 2015. Since the journal itself is in Russian
    [Show full text]
  • What Is Perl
    AdvancedAdvanced PerlPerl TechniquesTechniques DayDay 22 Dave Cross Magnum Solutions Ltd [email protected] Schedule 09:45 – Begin 11:15 – Coffee break (15 mins) 13:00 – Lunch (60 mins) 14:00 – Begin 15:30 – Coffee break (15 mins) 17:00 – End FlossUK 24th February 2012 Resources Slides available on-line − http://mag-sol.com/train/public/2012-02/ukuug Also see Slideshare − http://www.slideshare.net/davorg/slideshows Get Satisfaction − http://getsatisfaction.com/magnum FlossUK 24th February 2012 What We Will Cover Modern Core Perl − What's new in Perl 5.10, 5.12 & 5.14 Advanced Testing Database access with DBIx::Class Handling Exceptions FlossUK 24th February 2012 What We Will Cover Profiling and Benchmarking Object oriented programming with Moose MVC Frameworks − Catalyst PSGI and Plack FlossUK 24th February 2012 BenchmarkingBenchmarking && ProfilingProfiling Benchmarking Ensure that your program is fast enough But how fast is fast enough? premature optimization is the root of all evil − Donald Knuth − paraphrasing Tony Hoare Don't optimise until you know what to optimise FlossUK 24th February 2012 Benchmark.pm Standard Perl module for benchmarking Simple usage use Benchmark; my %methods = ( method1 => sub { ... }, method2 => sub { ... }, ); timethese(10_000, \%methods); Times 10,000 iterations of each method FlossUK 24th February 2012 Benchmark.pm Output Benchmark: timing 10000 iterations of method1, method2... method1: 6 wallclock secs \ ( 2.12 usr + 3.47 sys = 5.59 CPU) \ @ 1788.91/s (n=10000) method2: 3 wallclock secs \ ( 0.85 usr + 1.70 sys = 2.55 CPU) \ @ 3921.57/s (n=10000) FlossUK 24th February 2012 Timed Benchmarks Passing timethese a positive number runs each piece of code a certain number of times Passing timethese a negative number runs each piece of code for a certain number of seconds FlossUK 24th February 2012 Timed Benchmarks use Benchmark; my %methods = ( method1 => sub { ..
    [Show full text]
  • Reference and Faculty Services Librarian George Mason University Law Library
    Reference and Faculty Services Librarian George Mason University Law Library The George Mason University Law Library, located on the Arlington, Va., campus, invites applicants for the position of Reference and Faculty Services Librarian. George Mason University has a strong institutional commitment to the achievement of excellence and diversity among its faculty and staff, and strongly encourages candidates to apply who will enrich Mason’s academic and culturally inclusive environment. Responsibilities: This position reports to the Head of Reference and Instructional Services. The incumbent is responsible for planning, coordinating and implementing all library services to faculty; as well as providing professional library services to students, staff, faculty and public patrons. Duties include reference and research services, law student instruction, management of the faculty liaison program, and other duties as assigned. Additional duties include: Provide general reference services by e-mail, telephone, and in-person to students, faculty, staff, alumni, attorneys, and other public patrons; and prepare instructions and research guides (both online and print) to support instruction and reference services; Oversee and coordinate liaison services to full-time faculty and law reviews, and serve as liaison for adjunct faculty members and provide support for them on the Westlaw TWEN course management system; Provide liaison services to designated full-time faculty members: Provide online searches for faculty and facilitate copying of cases,
    [Show full text]
  • SWE 642 Software Engineering for the World Wide Web
    SWE 642 Software Engineering for the World Wide Web Spring Semester, 2019 Location: AB L008 Time: Tuesday 7:20-10:00pm Instructor Overview Textbook and Readings Grading Schedule Academic Integrity Professor: Dr. Vinod Dubey Email: [email protected] Class Hours: Tuesday 7:20-10:00, AB L008 Prerequisite: SWE 619 and SWE Foundation material or (CS 540 and 571) Office Hours: Anytime electronically, or by an appointment Mrudula (Mia) Ichanahalli Anantharamaiah Graduate Teaching Assistant: [email protected] GTA Office Hours: TBD Overview OBJECTIVE: After completing the course, students will understand the concepts and have the knowledge of how web applications are designed and constructed. Students will be able to engineer high quality building blocks for Web applications. CONTENT: Detailed study of the engineering methods and technologies for building highly interactive web sites for e-commerce and other web-based applications. Engineering principles for building web sites that exhibit high reliability, usability, availability, scalability and maintainability are presented. Methods such as client-server programming, component-based software development, middleware, and reusable components are covered. After the course, students should be prepared to create software for large-scale web sites. SWE 642 teaches some of the topics related to the exciting software development models that are used to support web and e-commerce applications. We will be studying the software design and development side of web applications, rather than the policy, business, or networking sides. An introductory level knowledge of HTML and Java is required. SWE 619 is a required prerequisite and SWE 632 is a good background course. The class will be very practical (how to build things) and require several programming assignments.
    [Show full text]
  • Alumni Updates - 01 Florida State University Dance Magazine 2016-2017
    2016-2017 Dance of School Alumni Updates - 01 Florida State University Dance Magazine 2016-2017 Joséphine A. Garibaldi Chair, School of Dance Carla Peterson Director, MANCC Peter Weishar Welcome Dean, College of Fine Arts My first year as Chair was a wild ride, never a dull moment with lots of creative problem Contributors solving to enjoy. Florida State University School of Dance boasts a roster of nationally and Jessica Comas internationally renowned ‘rock star’ faculty. Not only are they top tier artists, educators La Toya Davis-Craig and scholars, they are hands down stellar human beings busy doing the business of making, Rachel Howell writing, speaking, designing, presenting, performing, teaching, mentoring and dancing J. Russell Sandifer about art. Jawole Willa Jo Zollar, Professor, Lawton Scholar and Founder/Artistic Heather Mayo Director of Urban Bush Women, was awarded the 2015 Dance Magazine Award and 2016 Sarah Wilcoxon Dance USA/Honors. Carla Peterson, Director of the Maggie Allesee National Center of McKenna Britton Choreography, was awarded the most prestigious Chevalier De L’Ordre Des Arts Et Des Lettres. Suzanne Farrell, Frances Eppes Professor, was honored by being inducted into the Designer American Philosophical Society. Gabrielle Taylor Our students also continue to earn top awards, as well as national and international Principal Photographers recognition. Thanks to Friends of Dance, over 20 students attended the regional American Meagan Helman College Dance Association festival (ACDA) and were selected to attend the National Jon Nolan ACDA Gala at the Kennedy Center in Washington D.C. Additionally, students presented at the annual conference of the International Association of Dance Medicine and Science Additional Photographers (IADMS) in Pittsburgh, PA and the annual conference of Popular Culture Association/ Chris Cameron American Culture (PCA/ACA).
    [Show full text]
  • Amélioration De La Sécurité Par La Conception Des Logiciels Web Theodoor Scholte
    Amélioration de la sécurité par la conception des logiciels web Theodoor Scholte To cite this version: Theodoor Scholte. Amélioration de la sécurité par la conception des logiciels web. Web. Télécom ParisTech, 2012. Français. NNT : 2012ENST0024. tel-01225776 HAL Id: tel-01225776 https://pastel.archives-ouvertes.fr/tel-01225776 Submitted on 6 Nov 2015 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. 2012-ENST-024 EDITE - ED 130 Doctorat ParisTech T H È S E pour obtenir le grade de docteur délivré par TELECOM ParisTech Spécialité « Réseaux et Sécurité » présentée et soutenue publiquement par Theodoor SCHOLTE le 11/5/2012 Securing Web Applications by Design Directeur de thèse : Prof. Engin KIRDA Jury Thorsten HOLZ , Professeur, Ruhr-Universit at Bochum, Germany Rapporteur Martin JOHNS , Senior Researcher, SAP AG, Germany Rapporteur Davide BALZAROTTI , Professeur, Institut EURECOM, France Examinateur Angelos KEROMYTIS , Professeur, Columbia University, USA Examinateur Thorsten STRUFE , Professeur, Technische Universit at Darmstadt, Germany Examinateur TELECOM ParisTech école de l’Institut Télécom - membre de ParisTech Acknowledgements This dissertation would not have been possible without the support of many people. First, I would like to thank my parents. They have thaught and are teaching me every day a lot.
    [Show full text]
  • Curriculum Vitae
    DANIEL MASON PERSONAL STATEMENT Daniel has two software development related degrees and is staying in practice through personal projects and providing additional value to his employer. Daniel constantly looks at how new technologies and techniques can be used to improve the quality of his work. At Apolitical, Daniel designed a simple deployment mechanism for kubernetes projects. At MOO, he evangelised Docker and CD Pipelines to increase developer confidence and code quality, as well as pushing for more testing and quality control. He’s been influential in several cross team guilds. Daniels favourite achievement was mentoring a colleague from a non-engineering team to become a Junior Software Engineer on his team. Daniel can pick up new languages, frameworks and techniques very quickly, and loves to do so. He constantly looks for new ways to improve on what he's already doing. SKILLS Daniel is a skilled engineer, with experience in a wide range of languages. This is an incomplete list of technologies Daniel has been practicing in the last year: Languages: Rust, JavaScript, ES6+, PHP, MySql/Maria, HTML, CSS, SASS Quality Control: GitLab CI, CircleCI, Travis, PhpUnit, Behat, PHPMD, PHPCS, ESLint, Mocha, Chai, Sinon Frameworks: Express, React, Redux, Aye Aye Api, Symfony Source Management: Git, GitHub, GitLab, Cargo, NPM, Composer, Packagist, Docker, Artifcatory WebOps: Kubernetes, AWS, DO, GCe, GKE, Docker, Vagrant, StackPoint Other Tools: IntelliJ Idea, VSCode, Webpack, Babel, Zookeeper EXPERIENCE Apolitical Group Ltd - Software Engineer Nov 2017 - Today ​ Daniel designed and engineered the kubernetes infrastructure that is replacing the WordPress Monolith. This is broken up in to different namespaces, each guarded by different levels of security.
    [Show full text]
  • Environmental and Community Impacts of Shale Development in Texas
    3 Environmental and Community Impacts of Shale Development in Texas The Academy of Medicine, Engineering and Science of Texas (TAMEST) Task Force on Environmental and Community Impacts of Shale Development in Texas 4 ENVIRONMENTAL AND COMMUNITY IMPACTS OF SHALE DEVELOPMENT IN TEXAS THE ACADEMY OF MEDICINE, ENGINEERING AND SCIENCE OF TEXAS Austin, TX This activity was supported by The Academy of Medicine, Engineering and Science of Texas (TAMEST) and The Cynthia and George Mitchell Foundation. Any opinions, findings, conclusions, or recommendations expressed in this publication do not necessarily reflect the views of any organization or agency that provided support for the project. International Standard Book Number: 978-0-9990761-0-1 Digital Object Identifier: 10.25238/TAMESTstf.6.2017 Library of Congress Control Number: 2017945361 Additional copies of this publication may be obtained from The Academy of Medicine, Engineering and Science of Texas, 3925 W. Braker Lane, Suite 3.8018, Austin, TX 78759; (512) 471-3823; http://www.tamest.org. Copyright 2017 by The Academy of Medicine, Engineering and Science of Texas. All rights reserved. Printed in the United States of America. Suggested citation: The Academy of Medicine, Engineering and Science of Texas. 2017. Environmental and Community Impacts of Shale Development in Texas. Austin, TX: The Academy of Medicine, Engineering and Science of Texas. doi: 10.25238/TAMESTstf.6.2017. 5 This report was initiated and administered by The Academy of Medicine, Engineering and Science of Texas (TAMEST), which is a nonprofit and brain trust for Texas composed of the Texas-based members of the National Academies of Sciences, Engineering, and Medicine, and the state’s Nobel Laureates.
    [Show full text]
  • Products Table of Contents
    Products Table of Contents: Products There is a lot of software out there ready to run with mod_perl and/or help you with your programming project. Last modified Sun Feb 16 01:37:58 2014 GMT 15 Feb 2014 1 Table of Contents: - 1. Apache/Perl Modules On CPAN you will be able to find a number of Perl modules created to run under mod_perl. We will give a presentation of them here and ways to get at these modules. - 2. Application Servers and Toolkits based on mod_perl There are several application servers and toolkits available designed to run under mod_perl, which might provide you with inline-Perl coding, or MVC (Model/View/Controller) frameworks. - 3. mod_perl Related Software A short list of some software, open source and commercial, based on or compatible with mod_perl, which might be interesting for anyone using mod_perl 2 15 Feb 2014 Apache/Perl Modules 1 Apache/Perl Modules 1 Apache/Perl Modules 15 Feb 2014 3 1.1 Description 1.1 Description On CPAN you will be able to find a number of Perl modules created to run under mod_perl. We will give a presentation of them here and ways to get at these modules. Apache/Perl modules are somewhat different from the many others found on CPAN (http://www.cpan.org/). Most Perl modules are "building blocks"; developers use them to build applica- tions or even more building blocks. It just so happens that Apache/Perl modules are encapsulated inside a namespace and .pm file. However, this does not make them all building blocks, many are just like Apache modules written in C: you install them, edit the server configuration files and you’re done.
    [Show full text]