Werkzeug Documentation (0.15.X) Release 0.15.6

Total Page:16

File Type:pdf, Size:1020Kb

Werkzeug Documentation (0.15.X) Release 0.15.6 Werkzeug Documentation (0.15.x) Release 0.15.6 Pallets Jan 26, 2020 Contents 1 Getting Started 3 1.1 Installation................................................3 1.2 Transition to Werkzeug 1.0........................................5 1.3 Werkzeug Tutorial............................................6 1.4 API Levels................................................ 14 1.5 Quickstart................................................ 15 2 Serving and Testing 21 2.1 Serving WSGI Applications....................................... 21 2.2 Test Utilities............................................... 26 2.3 Debugging Applications......................................... 32 3 Reference 37 3.1 Request / Response Objects....................................... 37 3.2 URL Routing............................................... 54 3.3 WSGI Helpers.............................................. 67 3.4 Filesystem Utilities............................................ 74 3.5 HTTP Utilities.............................................. 74 3.6 Data Structures.............................................. 83 3.7 Utilities.................................................. 99 3.8 URL Helpers............................................... 106 3.9 Context Locals.............................................. 112 3.10 Middleware................................................ 115 3.11 HTTP Exceptions............................................ 121 4 Deployment 127 4.1 Application Deployment......................................... 127 5 Contributed Modules 133 5.1 Contributed Modules........................................... 133 6 Additional Information 153 6.1 Important Terms............................................. 153 6.2 Unicode.................................................. 154 6.3 Dealing with Request Data........................................ 155 6.4 Changelog................................................ 157 i Python Module Index 187 Index 189 ii Werkzeug Documentation (0.15.x), Release 0.15.6 werkzeug German noun: “tool”. Etymology: werk (“work”), zeug (“stuff”) Werkzeug is a comprehensive WSGI web application library. It began as a simple collection of various utilities for WSGI applications and has become one of the most advanced WSGI utility libraries. Werkzeug is Unicode aware and doesn’t enforce any dependencies. It is up to the developer to choose a template engine, database adapter, and even how to handle requests. Contents 1 Werkzeug Documentation (0.15.x), Release 0.15.6 2 Contents CHAPTER 1 Getting Started 1.1 Installation 1.1.1 Python Version We recommend using the latest version of Python 3. Werkzeug supports Python 3.4 and newer and Python 2.7. 1.1.2 Dependencies Werkzeug does not have any direct dependencies. Optional dependencies These distributions will not be installed automatically. Werkzeug will detect and use them if you install them. • SimpleJSON is a fast JSON implementation that is compatible with Python’s json module. It is preferred for JSON operations if it is installed. • termcolor provides request log highlighting when using the development server. • Watchdog provides a faster, more efficient reloader for the development server. 1.1.3 Virtual environments Use a virtual environment to manage the dependencies for your project, both in development and in production. What problem does a virtual environment solve? The more Python projects you have, the more likely it is that you need to work with different versions of Python libraries, or even Python itself. Newer versions of libraries for one project can break compatibility in another project. Virtual environments are independent groups of Python libraries, one for each project. Packages installed for one project will not affect other projects or the operating system’s packages. 3 Werkzeug Documentation (0.15.x), Release 0.15.6 Python 3 comes bundled with the venv module to create virtual environments. If you’re using a modern version of Python, you can continue on to the next section. If you’re using Python 2, see Install virtualenv first. Create an environment Create a project folder and a venv folder within: mkdir myproject cd myproject python3 -m venv venv On Windows: py -3 -m venv venv If you needed to install virtualenv because you are on an older version of Python, use the following command instead: virtualenv venv On Windows: \Python27\Scripts\virtualenv.exe venv Activate the environment Before you work on your project, activate the corresponding environment: . venv/bin/activate On Windows: venv\Scripts\activate Your shell prompt will change to show the name of the activated environment. 1.1.4 Install Werkzeug Within the activated environment, use the following command to install Werkzeug: pip install Werkzeug Living on the edge If you want to work with the latest Werkzeug code before it’s released, install or update the code from the master branch: pip install -U https://github.com/pallets/werkzeug/archive/master.tar.gz 4 Chapter 1. Getting Started Werkzeug Documentation (0.15.x), Release 0.15.6 1.1.5 Install virtualenv If you are using Python 2, the venv module is not available. Instead, install virtualenv. On Linux, virtualenv is provided by your package manager: # Debian, Ubuntu sudo apt-get install python-virtualenv # CentOS, Fedora sudo yum install python-virtualenv # Arch sudo pacman -S python-virtualenv If you are on Mac OS X or Windows, download get-pip.py, then: sudo python2 Downloads/get-pip.py sudo python2 -m pip install virtualenv On Windows, as an administrator: \Python27\python.exe Downloads\get-pip.py \Python27\python.exe -m pip install virtualenv Now you can continue to Create an environment. 1.2 Transition to Werkzeug 1.0 Werkzeug originally had a magical import system hook that enabled everything to be imported from one module and still loading the actual implementations lazily as necessary. Unfortunately this turned out to be slow and also unreliable on alternative Python implementations and Google’s App Engine. Starting with 0.7 we recommend against the short imports and strongly encourage starting importing from the actual implementation module. Werkzeug 1.0 will disable the magical import hook completely. Because finding out where the actual functions are imported and rewriting them by hand is a painful and boring process we wrote a tool that aids in making this transition. 1.2.1 Automatically Rewriting Imports For instance, with Werkzeug < 0.7 the recommended way to use the escape function was this: from werkzeug import escape With Werkzeug 0.7, the recommended way to import this function is directly from the utils module (and with 1.0 this will become mandatory). To automatically rewrite all imports one can use the werkzeug-import-rewrite script. You can use it by executing it with Python and with a list of folders with Werkzeug based code. It will then spit out a hg/git compatible patch file. Example patch file creation: $ python werkzeug-import-rewrite.py . > new-imports.udiff To apply the patch one of the following methods work: hg: 1.2. Transition to Werkzeug 1.0 5 Werkzeug Documentation (0.15.x), Release 0.15.6 hg import new-imports.udiff git: git apply new-imports.udiff patch: patch-p1< new-imports.udiff 1.2.2 Deprecated and Removed Code Some things that were relevant to Werkzeug’s core (working with WSGI and HTTP) have been removed. These were not commonly used, or are better served by dedicated libraries. • werkzeug.script, replace with Click or another dedicated command line library. • werkzeug.template, replace with Jinja or another dedicated template library. • werkzeug.contrib.jsrouting, this type of URL generation in JavaScript did not scale well. Instead, generate URLs when rendering templates, or add a URL field to a JSON response. • werkzeug.contrib.kickstart, replace with custom code if needed, the Werkzeug API has improved in general. Flask is a higher-level version of this. • werkzeug.contrib.testtools, was not significantly useful over the default behavior. • werkzeug.contrib.cache, has been extracted to cachelib. • werkzeug.contrib.atom, was outside the core focus of Werkzeug, replace with a dedicated feed genera- tion library. • werkzeug.contrib.limiter, stream limiting is better handled by the WSGI server library instead of middleware. 1.3 Werkzeug Tutorial Welcome to the Werkzeug tutorial in which we will create a TinyURL clone that stores URLs in a redis instance. The libraries we will use for this applications are Jinja 2 for the templates, redis for the database layer and, of course, Werkzeug for the WSGI layer. You can use pip to install the required libraries: pip install Jinja2 redis Werkzeug Also make sure to have a redis server running on your local machine. If you are on OS X, you can use brew to install it: brew install redis If you are on Ubuntu or Debian, you can use apt-get: sudo apt-get install redis-server Redis was developed for UNIX systems and was never really designed to work on Windows. For development pur- poses, the unofficial ports however work well enough. You can get them from github. 6 Chapter 1. Getting Started Werkzeug Documentation (0.15.x), Release 0.15.6 1.3.1 Introducing Shortly In this tutorial, we will together create a simple URL shortener service with Werkzeug. Please keep in mind that Werkzeug is not a framework, it’s a library with utilities to create your own framework or application and as such is very flexible. The approach we use here is just one of many you can use. As data store, we will use redis here instead of a relational database to keep this simple and because
Recommended publications
  • Download Issue
    Issue October 2019 | presented by www.jaxenter.com #70 The digital magazine for enterprise developers JavaThe JDK’s hidden 13 treasures i Jakarta EE 8 Let the games begin JDK 13 Why text blocks are worth the wait OpenJFX 13 JavaFX gets its own identity © Teguh Mujiono/Shutterstock.com, Pushkin/Shutterstock.com Illustrationen: Sun Microsystems Inc., S&S Media Editorial Let’s celebrate Java – three times! It’s that time again: A new Java version is here! Java 13 Last but not least: Jakarta EE, the follow-up project of was launched as planned, six months after the release Java EE, has announced its first release under the umbrella of of Java 12, and again it has some interesting features on the Eclipse Foundation. We got hold of the executive director board. In this issue of Jax Magazine, we’ve covered them of the Eclipse Foundation, Mike Milinkovich, and asked him for you in detail. about the current status of Jakarta EE. The good news doesn’t end there, as JavaFX 13 has also been released. The UI toolkit is no longer included in the JDK Happy reading, but has adjusted its new version releases to the new Java re- lease cadence. Find out what’s new here! Hartmut Schlosser Java 13 – a deep dive into the JDK’s 3 Kubernetes as a multi-cloud 17 new features operating system Falk Sippach Patrick Arnold Index Java 13 – why text blocks are worth the wait 6 Multi-tier deployment with Ansible 21 Tim Zöller Daniel Stender Jakarta EE 8 is sprinting towards an 9 Do we need a service mesh? 28 exciting future for enterprise Java Anton Weiss Thilo Frotscher
    [Show full text]
  • About:Config .Init About:Me About:Presentation Web 2.0 User
    about:config .init about:me about:presentation Web 2.0 User View Technical View Simple Overview Picture Complex Overview Picture Main Problems Statistics I Statistics II .next Targets Of Attack Targets Methods Kinds Of Session Hijacking SQL Injection Introduction Examples SQL Injection Picture Analysis SQL Escaping SQL Escaping #2 SQL Parameter Binding XSS Introduction What Can It Do? Main Problem Types Of XSS Components Involved In XSS Reflected XSS Picture Reflected XSS Analysis (Server Side) Stored XSS Picture Server Side Stored XSS (Local) DOM XSS Example Picture local DOM XSS CSRF Introduction Example Picture CSRF Session Riding Analysis Complex Example Hijack Via DNS + XSS Picture DNS+XSS Combo Cookie Policy Analysis Variant Components .next Misplaced Trust 3rd Party Script Picture Trust 3rd Party Script Analysis Misplaced Trust In Middleware Misplaced Trust In Server­Local Data Picture Local Scripts Analysis Same Origin Policy Frame Policy UI Redressing Introduction Clickjacking Picture Clickjacking Analysis BREAK .next Summary of Defense Strategies "Best Effort" vs. "Best Security" Protection against Hijacking Session Theft Riding, Fixation, Prediction Separate by Trust Validation Why Input Validation at Server Check Origin and Target of Request Validation of Form Fields Validation of File Upload Validation Before Forwarding Validation of Server Output Validation of Target in Client Validation of Origin in Client Validation of Input in Client Normalization What's That? Normalizing HTML Normalizing XHTML Normalizing Image, Audio,
    [Show full text]
  • Seamless Interoperability and Data Portability in the Social Web for Facilitating an Open and Heterogeneous Online Social Network Federation
    Seamless Interoperability and Data Portability in the Social Web for Facilitating an Open and Heterogeneous Online Social Network Federation vorgelegt von Dipl.-Inform. Sebastian Jürg Göndör geb. in Duisburg von der Fakultät IV – Elektrotechnik und Informatik der Technischen Universität Berlin zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften - Dr.-Ing. - genehmigte Dissertation Promotionsausschuss: Vorsitzender: Prof. Dr. Thomas Magedanz Gutachter: Prof. Dr. Axel Küpper Gutachter: Prof. Dr. Ulrik Schroeder Gutachter: Prof. Dr. Maurizio Marchese Tag der wissenschaftlichen Aussprache: 6. Juni 2018 Berlin 2018 iii A Bill of Rights for Users of the Social Web Authored by Joseph Smarr, Marc Canter, Robert Scoble, and Michael Arrington1 September 4, 2007 Preamble: There are already many who support the ideas laid out in this Bill of Rights, but we are actively seeking to grow the roster of those publicly backing the principles and approaches it outlines. That said, this Bill of Rights is not a document “carved in stone” (or written on paper). It is a blog post, and it is intended to spur conversation and debate, which will naturally lead to tweaks of the language. So, let’s get the dialogue going and get as many of the major stakeholders on board as we can! A Bill of Rights for Users of the Social Web We publicly assert that all users of the social web are entitled to certain fundamental rights, specifically: Ownership of their own personal information, including: • their own profile data • the list of people they are connected to • the activity stream of content they create; • Control of whether and how such personal information is shared with others; and • Freedom to grant persistent access to their personal information to trusted external sites.
    [Show full text]
  • Interfacing Apache HTTP Server 2.4 with External Applications
    Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick November 6, 2012 Who am I? Interfacing Apache HTTP Server 2.4 with External Applications Met Unix (in the form of Xenix) in 1985 Jeff Trawick Joined IBM in 1990 to work on network software for mainframes Moved to a different organization in 2000 to work on Apache httpd Later spent about 4 years at Sun/Oracle Got tired of being tired of being an employee of too-huge corporation so formed my own too-small company Currently working part-time, coding on other projects, and taking classes Overview Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Huge problem space, so simplify Perspective: \General purpose" web servers, not minimal application containers which implement HTTP \Applications:" Code that runs dynamically on the server during request processing to process input and generate output Possible web server interactions Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Native code plugin modules (uhh, assuming server is native code) Non-native code + language interpreter inside server (Lua, Perl, etc.) Arbitrary processes on the other side of a standard wire protocol like HTTP (proxy), CGI, FastCGI, etc. (Java and \all of the above") or private protocol Some hybrid such as mod fcgid mod fcgid as example hybrid Interfacing Apache HTTP Server 2.4 with External Applications Jeff Trawick Supports applications which implement a standard wire protocol, no restriction on implementation mechanism Has extensive support for managing the application[+interpreter] processes so that the management of the application processes is well-integrated with the web server Contrast with mod proxy fcgi (pure FastCGI, no process management) or mod php (no processes/threads other than those of web server).
    [Show full text]
  • Database Globalization Support Guide
    Oracle® Database Database Globalization Support Guide 19c E96349-05 May 2021 Oracle Database Database Globalization Support Guide, 19c E96349-05 Copyright © 2007, 2021, Oracle and/or its affiliates. Primary Author: Rajesh Bhatiya Contributors: Dan Chiba, Winson Chu, Claire Ho, Gary Hua, Simon Law, Geoff Lee, Peter Linsley, Qianrong Ma, Keni Matsuda, Meghna Mehta, Valarie Moore, Cathy Shea, Shige Takeda, Linus Tanaka, Makoto Tozawa, Barry Trute, Ying Wu, Peter Wallack, Chao Wang, Huaqing Wang, Sergiusz Wolicki, Simon Wong, Michael Yau, Jianping Yang, Qin Yu, Tim Yu, Weiran Zhang, Yan Zhu This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated software, any programs embedded, installed or activated on delivered hardware, and modifications of such programs) and Oracle computer documentation or other Oracle data delivered to or accessed by U.S.
    [Show full text]
  • GNU/Linux Magazine Hors-Série N°66 Apache Introduction
    LES GUIDES DE sur les origines d Ce documntslapriéxvj-g(@h.)26013à:5 Tout ce qu LE GUIDE COMPLET POUR METTRE EN PLACE ET BIEN CONFIGURER VOTRE SERVEUR WEB APACH France METRO : 12.90 et sur ses principales Introduction fonctionnalités il faut savoir Apache CH : 18,00 CHF Installation et con Installer son premier BEL/PORT.CONT : 13,90 serveur et choisir le mécanisme d plus adapté authenti HORS-SÉRIE guration ���� cation le DOM TOM : 13,90 Programmer pour le Web PHP, Python, Perl et Ruby : quelques bases pour bien programmer avec les langages du Web CAN : 18,00 $ cad Aller plus loin MAR : 130 MAD Des éléments de con pour des besoins plus spéci (LDAP, chi guration avancée ques L 15066 ff Édité par Les Éditions Diamond Éditions Les par Édité rement, ...) www.ed-diamond.com -66H F: Tutoriels Des pas-à-pas 12,90 pour passer E rapidement à la pratique € -RD Ce documntslapriéxvj-g(@h.)26013à:5 2 GNU/LiNUx maGaziNeHors-série N°66 : apacHe Impression : Service abonnement: Responsable publicité: Conception graphique: Remerciements Secrétaire derédaction Rédacteur enchef: Directeur depublication: Sites : Service commercial: E-mail : Tél. : est éditépar GNU/Linux MagazineHors-Série Éditions Diamond. rédigés parlesmembresdel'équiperédactionnelledes Les articlesnonsignéscontenusdanscenuméroontété respectif. droit ayant leur de propriété sont la dans le magazine les représentés logos Tous respectif. citées dans ce numéro sont déposées par les sans aucun marques Toutes d’information, but publicitaire. leur propriétaire figurant dans d’adresses les et prix pages de sont rédactionnelles indications données Les à renvoyés. titre ni rendus, ni sont GNU/Linux Magazine France Hors-série, publiés ou non, ne particulier, les manuscrits, photos accord écrit et de la société Les éditions Diamond.
    [Show full text]
  • The International Maritime Meteorological Archive
    ARCHIVAL OF DATA OTHER THAN IN IMMT FORMAT: The International Maritime Meteorological Archive (IMMA) Format Rapporteur: Scott Woodruff NOAA Earth System Research Laboratory (ESRL), Boulder, CO, USA Updated Report (14 March 2007) Update of JCOMM-SGMC-VIII/Doc.17 submitted to: Joint WMO-IOC Technical Commission for Oceanography and Marine Meteorology (JCOMM) Working Group on MMS, Subgroup on Marine Climatology (SGMC) Eighth Session, Asheville, NC, USA (10-14 April 2000) ————— Update of ETMC-I/Doc. 4.1, Appendix submitted to: JCOMM Expert Team on Marine Climatology (ETMC) First Session, Gdynia, Poland (7-10 July 2004) ————— Appendix of ETMC-II/Doc. 4.1 submitted to: JCOMM Expert Team on Marine Climatology (ETMC) Second Session, Geneva, Switzerland (26-27 March 2007) Contents Introduction Background Format Content and Structure Format Implementation References Supplements: A. Existing Formats and Codes B. Comparison of WMO IMM and ICOADS LMR Formats C. Record Types D. Field Configurations Document Revision Information Introduction 1. With increasing recognition of the importance of upgrading and maximizing the data available for analyses of the climate record (Barnett et al. 1999), efforts have intensified to digitize additional historical ship data (and metadata) that exist in many national logbook collections (Diaz and Woodruff 1999, Woodruff et al. 2004). Current efforts are focused on data during major gaps in the existing record, such as the two world wars, and adding 19th century and earlier data (e.g., Elms et al. 1993, Manabe 1999, García- Herrera et al. 2005, Woodruff et al. 2005). 2. At present, however, there is no effective, internationally agreed format for exchange of keyed historical data.
    [Show full text]
  • Plain Text & Character Encoding
    Journal of eScience Librarianship Volume 10 Issue 3 Data Curation in Practice Article 12 2021-08-11 Plain Text & Character Encoding: A Primer for Data Curators Seth Erickson Pennsylvania State University Let us know how access to this document benefits ou.y Follow this and additional works at: https://escholarship.umassmed.edu/jeslib Part of the Scholarly Communication Commons, and the Scholarly Publishing Commons Repository Citation Erickson S. Plain Text & Character Encoding: A Primer for Data Curators. Journal of eScience Librarianship 2021;10(3): e1211. https://doi.org/10.7191/jeslib.2021.1211. Retrieved from https://escholarship.umassmed.edu/jeslib/vol10/iss3/12 Creative Commons License This work is licensed under a Creative Commons Attribution 4.0 License. This material is brought to you by eScholarship@UMMS. It has been accepted for inclusion in Journal of eScience Librarianship by an authorized administrator of eScholarship@UMMS. For more information, please contact [email protected]. ISSN 2161-3974 JeSLIB 2021; 10(3): e1211 https://doi.org/10.7191/jeslib.2021.1211 Full-Length Paper Plain Text & Character Encoding: A Primer for Data Curators Seth Erickson The Pennsylvania State University, University Park, PA, USA Abstract Plain text data consists of a sequence of encoded characters or “code points” from a given standard such as the Unicode Standard. Some of the most common file formats for digital data used in eScience (CSV, XML, and JSON, for example) are built atop plain text standards. Plain text representations of digital data are often preferred because plain text formats are relatively stable, and they facilitate reuse and interoperability.
    [Show full text]
  • DICOM PS3.5 2021C
    PS3.5​ DICOM PS3.5 2021d - Data Structures and Encoding​ Page 2​ PS3.5: DICOM PS3.5 2021d - Data Structures and Encoding​ Copyright © 2021 NEMA​ A DICOM® publication​ - Standard -​ DICOM PS3.5 2021d - Data Structures and Encoding​ Page 3​ Table of Contents​ Notice and Disclaimer ........................................................................................................................................... 13​ Foreword ............................................................................................................................................................ 15​ 1. Scope and Field of Application ............................................................................................................................. 17​ 2. Normative References ....................................................................................................................................... 19​ 3. Definitions ....................................................................................................................................................... 23​ 4. Symbols and Abbreviations ................................................................................................................................. 27​ 5. Conventions ..................................................................................................................................................... 29​ 6. Value Encoding ...............................................................................................................................................
    [Show full text]
  • Scripts.Mit.Edu
    Services Backend Further Info scripts.mit.edu Quentin Smith [email protected] Student Information Processing Board October 29, 2019 Quentin Smith [email protected] scripts.mit.edu 2 Backend AFS suEXEC Kerberos LDAP Apache modules LVS Ansible 3 Further Info Services Backend Further Info Outline 1 Services Web Mail Cron (\Shortjobs") SQL Version control Quentin Smith [email protected] scripts.mit.edu 3 Further Info Services Backend Further Info Outline 1 Services Web Mail Cron (\Shortjobs") SQL Version control 2 Backend AFS suEXEC Kerberos LDAP Apache modules LVS Ansible Quentin Smith [email protected] scripts.mit.edu Services Backend Further Info Outline 1 Services Web Mail Cron (\Shortjobs") SQL Version control 2 Backend AFS suEXEC Kerberos LDAP Apache modules LVS Ansible 3 Further Info Quentin Smith [email protected] scripts.mit.edu Web Services Mail Backend Cron (\Shortjobs") Further Info SQL Version control Outline 1 Services Web Mail Cron (\Shortjobs") SQL Version control 2 Backend AFS suEXEC Kerberos LDAP Apache modules LVS Ansible 3 Further Info Quentin Smith [email protected] scripts.mit.edu suEXEC|allows Apache to spawn a process as the user. even for static content! Web Services Mail Backend Cron (\Shortjobs") Further Info SQL Version control Apache Everyone wants Apache Apache's default configuration isn't safe for scripting Scripting requires code execution|mod php, mod perl, mod python, mod wsgi Apache normally runs everything as apache/nobody How to secure? Quentin Smith [email protected] scripts.mit.edu Web Services Mail Backend Cron (\Shortjobs") Further Info SQL Version control Apache Everyone wants Apache Apache's default configuration isn't safe for scripting Scripting requires code execution|mod php, mod perl, mod python, mod wsgi Apache normally runs everything as apache/nobody How to secure? suEXEC|allows Apache to spawn a process as the user.
    [Show full text]
  • Using Fastcgi with Apache HTTP Server 2.4
    Using FastCGI with Apache HTTP Server 2.4 Jeff Trawick The world of FastCGI Using FastCGI with Apache HTTP Server 2.4 FastCGI with Apache httpd 2.4 Jeff Trawick Choosing mod fcgid http://emptyhammock.com/ mod proxy fcgi [email protected] mod authnz fcgi Other tools April 8, 2014 PHP Applications and FastCGI Future 1/97 Revisions Using FastCGI with Apache HTTP Server 2.4 Jeff Trawick The world of FastCGI 2014-04-10 FastCGI with Apache httpd Add Require expr ... to /www/tools/ 2.4 configuration in More classic CGI configuration Choosing slide to resolve a potential security hole. Thank mod fcgid mod proxy fcgi you Eric Covener! mod authnz fcgi Other tools PHP Applications and FastCGI Future 2/97 Get these slides... Using FastCGI with Apache HTTP Server 2.4 Jeff Trawick The world of FastCGI FastCGI with Apache httpd 2.4 http://emptyhammock.com/projects/info/slides.html Choosing mod fcgid mod proxy fcgi mod authnz fcgi Other tools PHP Applications and FastCGI Future 3/97 Table of Contents Using FastCGI with Apache HTTP Server 1 The world of FastCGI 2.4 Jeff Trawick 2 FastCGI with Apache httpd 2.4 The world of FastCGI 3 Choosing FastCGI with Apache httpd 4 mod fcgid 2.4 Choosing 5 mod proxy fcgi mod fcgid mod proxy fcgi 6 mod authnz fcgi mod authnz fcgi Other tools 7 Other tools PHP Applications 8 PHP Applications and FastCGI and FastCGI Future 9 Future 4/97 Introduction | Who am I? Using FastCGI with Apache HTTP Server 2.4 I've worked at Jeff Trawick several large corporations, for over two decades The world of FastCGI my own one-person company, Emptyhammock, for the FastCGI with last two years Apache httpd 2.4 I've worked on Choosing several products which were primarily based on or mod fcgid otherwise included Apache HTTP Server mod proxy fcgi lower-level networking products mod authnz fcgi web applications Other tools PHP I've developed or maintained some of the FastCGI Applications and FastCGI support in the Apache HTTP Server project.
    [Show full text]
  • Development and Testing of Web GUI Application for the Lhcb VELO Data Quality Monitoring System
    Development and Testing of Web GUI Application for the LHCb VELO Data Quality Monitoring System by Pavlo Prykhodko Master Thesis in Information and Communication Technology Final Version University of Agder Meyrin, December 4, 2013 CERN-THESIS-2013-244 18/12/2013 Abstract A great interest of IT engineers at CERN is to simplify the access to the Data Quality Monitoring (DQM) applications that usually lay behind several layers of security firewalls. In order to make it simple and thus help to save time for the scientist who rely on this data, additional application for the Web had to be developed and tested. The goal of this thesis work was to develop such a Web DQM application for CERN. First, a Web Graphical User Interface (GUI) was developed. In parallel, an Apache server was installed and configured for testing. Moreover, software program called ROOTJS that processes and displays CERN data files on the Web was presented. Through this thesis project, new functionalities were developed to meet the requirements. Furthermore, the ROOTJS program was merged with the Web GUI application and series of tests were performed to showcase the capabilities of the application which was developed through this thesis work. Preface This thesis is the result of the Master’s Thesis IKT-590 course that fulfils the requirements of fourth semester content at the Faculty of Engineering and Science, University of Agder (UiA), Grimstad, Norway. It was written externally at the European Organization for Nuclear Research (CERN) facilities in Meyrin, Switzerland. The project was carried out in a period from March 1, 2013 to December 4, 2013 and its workload equals to 30 ECTS.
    [Show full text]