Deploying the Apache HTTP Server Within the Apache Software Foundation

Total Page:16

File Type:pdf, Size:1020Kb

Deploying the Apache HTTP Server Within the Apache Software Foundation Deploying the Apache HTTP Server within the Apache Software Foundation Justin R. Erenkrantz University of California, Irvine http://www.erenkrantz.com/oscon/ [email protected] Why should I pay attention? One of the folks behind [email protected] Responsible for maintaining servers Committer to Apache HTTP Server and APR Familiar with the httpd 2.x codebase Committer to Subversion (we run that too) ‘Spare’ time: PhD student at UC Irvine What is the ASF? The Apache Software Foundation (ASF) Organizational, legal, and financial support Not-for-profit foundation Currently has 24 top-level projects (TLP) Each TLP may have many codebases All of these have websites, code, mailing lists Apache HTTP Server History Apache HTTP Server has been market leader for over eight years...and counting 2.0 series went GA in April 2002 New architecture to fix real-world issues Windows (and others) are first-class now Includes mod_dav, mod_ssl out of box What does the ASF provide? Three essential services: Websites: http://jakarta.apache.org/ Version control: httpd-2.0 repository Mailing Lists: [email protected] The failure of any impairs the project! What does the ASF use? Desire to eat own dogfood, if possible Websites: Apache HTTP Server 2.0 Version control: CVS and Subversion Mailing lists: ezmlm, qpsmtpd, qmail Platform: FreeBSD (4.x and 5.x) What level of service? Users: ~900 committers & ~130 members Websites: ~40 million views/month Version control: ~8GB of source Mailing lists: ~400k inbound emails a day Expect these numbers to continue to rise Organizational Structure Email is key to our coordination planning IRC used for real-time fire-fighting infrastructure@: General list root@: People with root access apmail@: People who can create lists Physical access: Big red button hitters Where do the servers reside? Like our contributors: all over the place Main servers now at UnitedLayer in SF Used to reside at CollabNet (for free!) Strong desire to be self-reliant Pay our own co-lo costs now Can now provide access to those in area Supporting Hardware Still try to reduce need for physical access Terminal Server Allows remote serial console Not all machines support BIOS output! Power distributor Allows power-cycling if all else fails The ASF machines minotaur: Shell, CVS, WWW hermes: email server nagoya: bug-tracking, web mail archives brutus: Gump continuous builds moof: Apple test box ajax: European backup The ‘Not-quite-so-big’ Picture minotaur (CVS, WWW) Cyclades ACS nagoya: E4500 (Webapps) hermes: x345 (SMTP) eris: x345 (Webapps?) brutus: x345 (GUMP) loki: x345 (VMWare?) Cyclades PM20 N X moof: PowerMac (Testing) ajax: Itanium (Backup) Dual Virtual Host Strategy www.apache.org = cvs.apache.org Traffic primarily on www instance ‘cvs’ requires Subversion, SSL, WebDAV High(er) memory footprint! Leverage ‘IP alias’: .194 and .195 Two instances with one optimized for space Two Parallel Instances Other advantage of two instances Allows ‘unstable’ testing, too www.apache.org httpd-2.0 APACHE_2_0_BRANCH cvs.apache.org httpd-2.0 HEAD (aka 2.1) Choice of MPM Multi-Processing Module (MPM) in 2.0 Prefork: Traditional Apache 1.3 model Worker MPM: smaller footprint w/ threads Configured for 800 clients. Yet, we use prefork...Why? Threads busted in FreeBSD (5.3: first fix!) Off-loading Large Transfers Main webpages are not mirrored Downloads are mirrored Selected Mirroring Strategy Importance of being fresh: 4x daily. ~5GB of releases served by mirrors ~225 mirrors around the world The Need for Mirroring ASF had long history of informal mirrors Only HTTP Server used them Jakarta was majority of traffic Users defaulted to our servers not mirrors Too many downloads to serve ourselves Had to respect our bandwidth cap! Mirroring Strategy Made mirrors mandatory Looked at how SourceForge did it Found extra steps too cumbersome... Promote digital signatures Mirrors could be corrupt or malicious Signature links still point to our servers Building a Web of Trust MD5 and PGP signatures available Provide that it hasn’t been corrupted Yet also requires user participation You need to verify the signature You should also have a path to signer Keysigning parties are extremely beneficial Mirroring Overview Developed Python script to read mirrors Greg Stein’s EZT template engine Project-specific look and feel Use GeoIP to find geographic region Present locale-appropriate mirrors 95% percentile usage now ~18Mbps Evolution of ASF Setup Then: daedalus (mail/www); icarus (CVS) Now: minotaur (www/CVS); hermes (mail) Icarus retired when minotaur came Begin of switchover to UL co-lo Hermes forced into production Had been testing it, but daedalus died The role of minotaur daedalus and icarus were initial boxes Dual PIII/800s: ~2000-2003/2004 Obtained around early 2003 Xeon/2.4GHz with HyperThreading RAID5 array with 400GB Two months doing ‘make world’ Why was that history important? We do not have a pure dedicated web server Most compete with other critical services In minotaur’s case, CVS is hosted on it Also acts as shell server for accounts Our CVS setup mandates shell accounts Must keep load ‘low’: ~1 load average (CVS) No dynamic pages Emphasize static content to reduce load Adopt tools like Anakia, Forrest, etc. Transform XML into (X)HTML Provides benefits of SSIs without cost! Python CGI scripts handle mirroring MoinMoin Python Wiki (wiki.apache.org) Deciding When to Deploy Two reasons for deploying a new build New release pending Prefer to see a release run for 48 hours Minotaur has ‘honorary’ release vote Resolve issues seen on our servers Fixes for unknown reproduction cases Deploying New Builds Greg Ames and Jeff Trawick handle www Will deploy a new build and send email Only one custom patch at the moment Stores input in brigade Facilitates crashdump reproduction Rest of patches have been committed! Responding to Failures httpd architecture is fairly resilient Each client handled in separate process Crashes cause new child to be spawned Segfault triggers crash dump and log Most common install error with ‘suexec’ We often forget the suid root bit! (Oops) Adopting Subversion Moving away from CVS to Subversion Developer advantages: Renames, atomic commits, etc, etc. Administration advantages: Easier incremental backups Better access control Subversion Backups CVS has fundamental flaw Every commit changes an RCS file Not possible to keep just ‘delta’ SVN: Incremental backups post-commit Atomic commit can be ‘replayed’ later Synchronized to off-site mirrors Access Control As ASF has grown, blurred group lines Avalon wants to give commit access to Cocoon and JAMES developers Complicated ‘avail’ system on top of CVS mod_authz_svn provides group control First written by Sander Striker (root@ too) Migrating from CVS More projects are starting to ask to migrate No forced migration...yet. Users beginning to feel comfortable Tried to make all tools available from CVS ViewCVS still works, commit emails, etc. Still haven’t obtained a valid SSL cert! Ugh. Spam, spam, spam Spam has been an increasing problem Most email is for mailing lists Human moderator gets requests Hundred moderate emails/day for some Reach tipping point for us Re-deployed a new mail architecture qmail I wish I knew why we use qmail...Yet, we do. Have lots of hacks to handle our load Remote Concurrency & Big ToDo Very hard for new admins to understand Can’t migrate away from qmail easily ezmlm is too central to our mail delivery qpsmtpd Replacement for qmail SMTP component Written in Perl by Ask Bjørn Hansen perl.org and mysql.org uses it too Allows easy introduction of plugins Major difficulty with qmail by itself If you use qmail, highly recommended! clamav Free GPL Virus Scanner Automatic updates through freshclam Daemon via persistent clamd Qmail-scanner was awful with clamav Actually spurred us to qpsmtpd Rejects about 10,000 messages a day SpamAssassin Part of our strategy to eat our dog food Using SA 3.0.0rc1 with spamd Reject if email over 10.0 score All network tests enabled now No Bayes rejection...yet (How??) Rejects about 12,000 messages a day Real-time Blackhole Lists Reject a message outright if you are on: Spamhaus XBL/SBL SORBS DUL RBL (Dynamic IP) DSBL Rejects about 130,000 messages a day! Wish didn’t have to reject dynamic IPs, but... Custom Plugins check_virtualdomains: Mail to @apache.org check_badrcpto: Reject john@, clark@ exe_filter: Blocks EXE & ZIP (~90k/day!) spamwatch: Custom rule sets SpamAssassin guys showed not effective Catches ~500 emails/day w/false positives Forced migration! We received a donation of four IBM 345s Did initial testing; No urgent schedule Daedalus hard drive died... Placed hermes into production before ‘ready’ Later found problem with RAID controller Deployed a kernel patch on faith (worked) Lessons Learned We can do 40 million page views/month on one box. You can too. Be smart! Always re-evaluate what you are doing. Try to involve as many as feasible. Can you off-load the work? Stick to the basics. Useful links WWW: http://www.apache.org/server-status/ CVS: http://cvs.apache.org/server-status/ Henk Penning: http://www.apache.org/~henkp/ Vadim Gritsenko: http://www.apache.org/~vgritsenko/.
Recommended publications
  • 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]
  • XAMPP Web Development Stack
    XAMPP Web Development Stack Overview @author R.L. Martinez, Ph.D. The steps below outline the processes for installing the XAMPP stack on a local machine. The XAMPP (pronounced Zamp) stack includes the following: Apache HTTP Server, MariaDB (essentially MySQL), Database Server, Perl, and the PHP Interpreter. The “X” in XAMPP is used to signify the cross-platform compatibility of the stack. The Apache HTTP Server and PHP are required to run phpMyAdmin which is a PHP application that is used for database administration tasks such as creating databases and tables, adding users, etc. Alternative to XAMPP If you have experience with MySQL Workbench, you may prefer to install MySQL Server and MySQL Workbench via the MySQL Installer. MySQL Workbench performs the same functions as phpMyAdmin. However, unlike phpMyAdmin which is a web-based application, MySQL Workbench is a locally installed application and therefore does not require an HTTP Server (e.g. Apache) to run. Installing XAMPP Many of the steps listed have several alternatives (such as changing MySQL passwords via a command line) and students are welcomed and encouraged to explore alternatives. 1. Download XAMPP from the URL below and place the installer (.exe) in the location where you want to install XAMPP. Placing the installer (.exe) in the same location as the intended installation is not required but preferred. http://www.apachefriends.org/download.html Page 1 of 17 XAMPP Web Development Stack 2. See the warning which recommends not installing to C:\Program Files (x86) which can be restricted by UAC (User Account Control). In the steps below XAMPP is installed to a USB flash drive for portability.
    [Show full text]
  • About Mod Perl Table of Contents
    About mod_perl Table of Contents: About mod_perl General information regarding mod_perl of historical inter- est. Last modified Sun Feb 16 01:38:23 2014 GMT 15 Feb 2014 1 Table of Contents: Part I: Development - 1. The mod_perl Project Management Committee the mod_perl Project Management Committee (PMC) is a group of mod_perl committers who take responsibility for the long-term direction of the project. - 2. mod_perl Contributors A list of people having helped mod_perl along the way, and information about them - 3. Companies sponsoring and supporting mod_perl developers Several companies have contributed to mod_perl by sponsoring mod_perl developers and/or allowing their employees to work on mod_perl as a part of their day job. - 4. Other contributors to mod_perl The other contributions made to mod_perl, that we don’t have enough information on. - 5. History Since mod_perl’s inception in 1996, many things have changed, and it’s interesting to look at mod_perl’s evolution and related events during the time from then to now. Part II: Link to This Site - 6. Link to us A number of banners and buttons that can be used to link to the mod_perl site Part III: mod_perl General Information - 7. How to pronounce mod_perl Do you think that "mod_perl" is a strange name and wondering about how to pronounce it? - 8. License mod_perl is an Apache Software Foundation (http://www.apache.org/) project, licensed under The Apache Software License, an Open Source license. 2 15 Feb 2014 The mod_perl Project Management Committee 1 The mod_perl Project Management Committee 1 The mod_perl Project Management Committee 15 Feb 2014 3 1.1 Description 1.1 Description the mod_perl Project Management Committee (PMC) is a group of mod_perl committers who take respon- sibility for the long-term direction of the project.
    [Show full text]
  • CA SOA Security Manager Agent Configuration Guide
    CA™ SOA Security Manager Agent Configuration Guide r12.1 Second Edition This documentation and any related computer software help programs (hereinafter referred to as the "Documentation") are for your informational purposes only and are subject to change or withdrawal by CA at any time. This Documentation may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part, without the prior written consent of CA. This Documentation is confidential and proprietary information of CA and may not be used or disclosed by you except as may be permitted in a separate confidentiality agreement between you and CA. Notwithstanding the foregoing, if you are a licensed user of the software product(s) addressed in the Documentation, you may print a reasonable number of copies of the Documentation for internal use by you and your employees in connection with that software, provided that all CA copyright notices and legends are affixed to each reproduced copy. The right to print copies of the Documentation is limited to the period during which the applicable license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed. TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO THE END USER OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.
    [Show full text]
  • Licensing Information User Manual Release 9.0 Revision 1.2
    Oracle SD-WAN Edge Licensing Information User Manual Release 9.0 Revision 1.2 October 2020 Licensing Information User Manual Oracle SD-WAN Edge 8.2 Oracle SD-WAN Edge Licensing Information ser !an"al# Release 9.0 Copyright Information $o%yrig't ( 2020# Oracle and)or its a*liates. All rig'ts reser+ed. ,'is soft-are and related doc"mentation are %rovided "nder a license agreement containing restrictions on "se and disclosure and are %rotected by intellect"al %ro%ert& la-s. E.ce%t as e.%ressly %ermitted in &o"r license agreement or allo-ed by la-# &o" may not "se# co%&# re%rod"ce# translate# broadcast# modif&# license# transmit# distrib"te# e.'ibit# %erform# %"blish# or display any %art# in any form# or by any means. Re+erse engineering# disassembl&# or decom%ilation of t'is soft-are# "nless re/"ired by la- for intero%erabilit&# is %ro'ibited. ,'e information contained 'erein is sub0ect to change -it'o"t notice and is not -arranted to be error-free. If &o" find any errors, %lease re%ort t'em to "s in -riting. If t'is is soft-are or related documentation t'at is deli+ered to t'e .S. 2o+ernment or an&one licensing it on be'alf of t'e .S. 2o+ernment# t'en t'e follo-ing notice is a%%licable3 .S. 2O4ERN!EN, END SERS3 Oracle %rograms, incl"ding any o%erating s&stem# integrated soft-are# any %rograms installed on t'e 'ard-are# and)or documentation# deli+ered to .S.
    [Show full text]
  • Site Map - Apache HTTP Server 2.0
    Site Map - Apache HTTP Server 2.0 Apache HTTP Server Version 2.0 Site Map ● Apache HTTP Server Version 2.0 Documentation ❍ Release Notes ■ Upgrading to 2.0 from 1.3 ■ New features with Apache 2.0 ❍ Using the Apache HTTP Server ■ Compiling and Installing Apache ■ Starting Apache ■ Stopping and Restarting the Server ■ Configuration Files ■ How Directory, Location and Files sections work ■ Server-Wide Configuration ■ Log Files ■ Mapping URLs to Filesystem Locations ■ Security Tips ■ Dynamic Shared Object (DSO) support ■ Content Negotiation ■ Custom error responses ■ Setting which addresses and ports Apache uses ■ Multi-Processing Modules (MPMs) ■ Environment Variables in Apache ■ Apache's Handler Use ■ Filters ■ suEXEC Support ■ Performance Hintes ■ URL Rewriting Guide ❍ Apache Virtual Host documentation ■ Name-based Virtual Hosts ■ IP-based Virtual Host Support ■ Dynamically configured mass virtual hosting ■ VirtualHost Examples ■ An In-Depth Discussion of Virtual Host Matching ■ File descriptor limitations ■ Issues Regarding DNS and Apache ❍ Apache Server Frequently Asked Questions http://httpd.apache.org/docs-2.0/sitemap.html (1 of 4) [5/03/2002 9:53:06 PM] Site Map - Apache HTTP Server 2.0 ■ Support ❍ Apache SSL/TLS Encryption ■ SSL/TLS Encryption: An Introduction ■ SSL/TLS Encryption: Compatibility ■ SSL/TLS Encryption: How-To ■ SSL/TLS Encryption: FAQ ■ SSL/TLS Encryption: Glossary ❍ Guides, Tutorials, and HowTos ■ Authentication ■ Apache Tutorial: Dynamic Content with CGI ■ Apache Tutorial: Introduction to Server Side Includes ■ Apache
    [Show full text]
  • Open Innovation in the Apache Software Foundation
    Open Innovation in The Apache Software Foundation Dr. Justin R. Erenkrantz The Apache Software Foundation TransferSummit/UK http://www.erenkrantz.com/ [email protected] Twitter: @jerenkrantz Friday, June 25, 2010 Why should I pay attention? Committer to Apache HTTP Server, APR, Subversion, and Serf (non-ASF project) President, The Apache Software Foundation Ph.D. from Univ. of California, Irvine Computational REST (next-gen web arch.) http://www.erenkrantz.com/CREST/ CTO, Project WBS 2 Friday, June 25, 2010 Open Source & Me Started contributing to Apache HTTP Server in early 2001... http://www.flickr.com/photos/x180/2704965763/ http://www.flickr.com/photos/bluxte/2103773754/ (James Duncan Davidson) (Sylvain Wallez) 3 Friday, June 25, 2010 Apache Top-level Projects Abdera CXF Karaf Pivot Tika ActiveMQ DB (Derby) Lenya POI Tiles Ant Directory Logging Portals Tomcat APR Excalibur Lucene Qpid Traffic Server Archiva Felix Maven Roller Turbine Avro Forrest Mahout Santuario Tuscany Axis Geronimo Mina ServiceMix UIMA Buildr Gump MyFaces Shindig Velocity Camel Hadoop Nutch Sling Wicket Cassandra Harmony ODE SpamAssassin Web Services Cayenne HBase OFBiz STDCXX Xalan Click HC OpenEJB Struts Xerces Cocoon HTTP Server OpenJPA Subversion XML Commons Jackrabbit OpenWebBeans Synapse XMLBeans Continuum Jakarta PDFBox Tapestry XML Graphics CouchDB James Perl (mod_perl) TCL ...Incubator podlings... 4 Friday, June 25, 2010 Apache’s tagline We are more than a group of projects sharing a server, we are a community of developers and users. 5 Friday, June 25, 2010 Committer geographic diversity http://people.apache.org/map.html Challenges and advantages arise from this! 6 Friday, June 25, 2010 Project Diversity in Apache Seventy top-level projects (TLPs) Java, C, C++, Perl, etc.
    [Show full text]
  • Red Hat Jboss Core Services 2.4.37 Apache HTTP Server Installation Guide
    Red Hat JBoss Core Services 2.4.37 Apache HTTP Server Installation Guide For use with Red Hat JBoss middleware products. Last Updated: 2021-09-21 Red Hat JBoss Core Services 2.4.37 Apache HTTP Server Installation Guide For use with Red Hat JBoss middleware products. Legal Notice Copyright © 2021 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates. XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js ® is an official trademark of Joyent.
    [Show full text]
  • Apache HTTP Server Cookbook I
    Apache HTTP Server Cookbook i Apache HTTP Server Cookbook Apache HTTP Server Cookbook ii Contents 1 How to install the Apache web server 1 1.1 Installing Apache and utilities............................................1 1.2 Checking running status of Apache..........................................1 1.3 Serving your first website with Apache........................................3 1.4 Wrapping up.....................................................6 2 Apache Configuration Tutorial 7 2.1 Inspecting the Apache configuration file.......................................8 2.2 Apache modules....................................................8 2.3 Configuration directives................................................8 2.4 Basic authentication.................................................. 10 2.5 Directives in action.................................................. 11 2.6 Basic security considerations............................................. 14 2.7 Conclusion...................................................... 14 3 Name-based Virtual Host Configuration 15 3.1 Reviewing the Apache configuration file....................................... 15 3.2 Defining virtual hosts................................................. 15 3.3 Troubleshooting.................................................... 18 3.4 Limiting bandwidth.................................................. 19 3.5 Summary....................................................... 20 4 mod_rewrite: Redirecting and rewriting URLs 21 4.1 Introducing regular expressions (regexs)......................................
    [Show full text]
  • Proceedings of the Software Demonstrations, 15Th Conference of the European Chapter of the Association for Computational Linguis
    EACL 2017 15th Conference of the European Chapter of the Association for Computational Linguistics Proceedings of the Software Demonstrations April 3-7, 2017 Valencia, Spain Edited by Anselmo Peñas Universidad Nacional de Educacion a Distancia Spain Andre Martins Unbabel and Instituto de Telecomunicacoes Portugal c 2017 The Association for Computational Linguistics Order copies of this and other ACL proceedings from: Association for Computational Linguistics (ACL) 209 N. Eighth Street Stroudsburg, PA 18360 USA Tel: +1-570-476-8006 Fax: +1-570-476-0860 [email protected] ISBN 978-1-945626-36-4 ii Introduction This volume contains the contributions accepted for Software Demonstrations at the EACL 2017 conference which takes place from 4th to 7th of April 2017 in Valencia, Spain. The Demonstrations program primary aim is to present the software systems and solutions related to all areas of computational linguistics and natural language processing. This program encourages the early exhibition of research prototypes, but also includes interesting mature systems. The number of submissions for software demonstrations exceeded, again, the number of available slots. This confronted us with the situation where we were forced to introduce a strict selection process. The selection process was completed following the predefined criteria of relevance for EACL 2017 conference: novelty, overall usability, and applicability to more than one linguistic level and to more than one computational linguistic field/task. We would like to thank the general chairs and the local organizers, without whom it would have been impossible to put together such a strong demonstrations program. We hope you will find this proceedings useful and that the software systems presented in this proceedings will inspire new ideas and approaches in your future work.
    [Show full text]
  • Apache Web Server Complete Guide
    Apache Web Server Complete Guide Dedoimedo www.dedoimedo.com www.dedoimedo.com all rights reserved Contents 1 Introduction 15 2 Basic Setup 16 2.1 Verify installation......................... 16 2.2 Package files............................ 16 2.3 Main configuration file(s)..................... 18 2.3.1 Backup........................... 18 2.4 Edit the httpd.conf configuration file............... 18 2.4.1 ServerRoot......................... 19 2.4.2 PidFile........................... 20 2.4.3 ServerName........................ 20 2.4.4 Add site to /etc/hosts file................. 21 2.4.5 DocumentRoot....................... 24 2.4.6 ErrorLog.......................... 25 2.4.7 Listen........................... 26 2.5 Create your HTML documents.................. 27 2.6 Start the Web Server....................... 29 2.7 Access the web site........................ 32 2.7.1 Local access........................ 32 2.7.2 Internal & external access................. 34 2.8 Summary of basic setup...................... 37 3 Advanced setup 38 3.1 Directory tags........................... 38 3.1.1 Order (allow, deny).................... 40 3.1.2 Indexes........................... 43 2 www.dedoimedo.com all rights reserved 3.1.3 DirectoryMatch...................... 46 3.2 Files tags.............................. 46 3.3 Location tags............................ 48 3.4 Directory, Files and Location................... 49 3.5 Redirect.............................. 50 3.6 Virtual Hosts............................ 50 3.6.1 Single IP, two websites................... 53 3.6.2 Two IPs, two websites................... 57 3.6.3 Other scenarios...................... 60 3.7 Modules.............................. 63 3.7.1 Module types........................ 63 3.7.2 View installed modules................... 64 3.7.3 LoadModule........................ 65 4 .htaccess 69 4.1 Create .htaccess file........................ 71 4.2 Create .htpasswd file........................ 71 4.3 Copy .htaccess to restricted directory..............
    [Show full text]
  • No Jerks Allowed!
    The Apache Software Foundation: No Jerks Allowed! Dr. Justin R. Erenkrantz The Apache Software Foundation OSBC 2010 http://www.erenkrantz.com/ [email protected] Twitter: @jerenkrantz Why should I pay attention? Committer to Apache HTTP Server, APR, Subversion (just graduated!), and Serf President, The Apache Software Foundation Ph.D. from Univ. of California, Irvine Computational REST (next-gen web arch.) http://www.erenkrantz.com/CREST/ CTO, Project WBS 2 Open Source & Me Started contributing to Apache HTTP Server in early 2001... http://www.flickr.com/photos/x180/2704965763/ http://www.flickr.com/photos/bluxte/2103773754/ (James Duncan Davidson) (Sylvain Wallez) 3 Apache Top-level Projects Abdera CXF James POI Tiles ActiveMQ DB (Derby) Lenya Portals Tomcat Ant Directory Logging Qpid Turbine APR Excalibur Lucene Roller Tuscany Archiva Felix Maven Santuario UIMA Axis Forrest Mina ServiceMix Velocity Buildr Geronimo MyFaces Shindig Wicket Camel Gump ODE Sling Web Services Cassandra Hadoop OFBiz SpamAssassin Xalan Cayenne Harmony OpenEJB STDCXX Xerces Click HC OpenJPA Struts XML Cocoon HTTP Server OpenWebBeans Subversion XMLBeans Commons iBATIS PDFBox Synapse XML Graphics Continuum Jackrabbit Perl (mod_perl) Tapestry ...and Incubator CouchDB Jakarta Pivot TCL podlings... 4 Apache’s tagline We are more than a group of projects sharing a server, we are a community of developers and users. 5 Committer geographic diversity http://people.apache.org/map.html Challenges and advantages arise from this! 6 Project Diversity in Apache Seventy top-level projects (TLPs) Java, C, C++, Perl, etc. projects... It’s okay for projects to be in “same” space Ant/Maven, Pig/Hive, Axis/CXF... Over thirty projects currently in “pipeline” Apache aims to provides a pragmatic non-technical framework to its projects 7 Apache’s mission The Apache Software Foundation provides support for the Apache community of open- source software projects.
    [Show full text]