ExtendedPreInsert on override not working

I have a custom object VDOC defined and have implemented an override (code as below). On
uploading a VDOC type document the document is loaded correctly and the constructor test message for S_VDOC shows up. The message for the extendedPreInsert method never seems
to fire. This problem has been discussed in this forum before but no decent guidance given.
The code is based from the example given in the Developers Guide (1.1). The actual example is additionally confusing as on page 9-9 the definition is shown as:
public void extendedPreInsert(OperationState opState, S_LibraryObjectDefinition def) throws IfsException
But on 9-11 ( a full listing) the definition is shown as:
public void extendedPreInsert(S_LibraryObjectDefinition def, OperationState opState) throws IfsException
I presume case 1 is correct looking at other examples of overrides.
My code is as follows:
// S_VDOC.java
package VPR;
import oracle.ifs.common.AttributeValue;
import oracle.ifs.common.IfsException;
import oracle.ifs.server.S_DirectoryUser;
import oracle.ifs.server.S_LibraryObjectData;
import oracle.ifs.server.S_LibraryObjectDefinition;
import oracle.ifs.server.S_LibrarySession;
import oracle.ifs.server.OperationState;
import oracle.ifs.server.S_TieDocument;
public class S_VDOC extends S_TieDocument
// constructors
public S_VDOC(S_LibrarySession session, S_LibraryObjectData data)
throws IfsException
super(session, data);
System.out.println("doing s_vdoc libraryobjectdata constructor");
public S_VDOC(S_LibrarySession session, Long classId)
throws IfsException
super(session, classId);
System.out.println("doing s_vdoc classid constructor");
// override Pre Insert Operation
public void extendedPreInsert(OperationState opState,
S_LibraryObjectDefinition def) throws IfsException
System.out.println("doing extendedpreinsert");
super.extendedPreInsert(opState, def);
Thanks in Advance
Darren Mundy
null

Try this example
============
Content Type
============
<?xml version="1.0" standalone="yes"?>
<CLASSOBJECT>
<NAME> OverrideExample </NAME>
<SUPERCLASS reftype="name">Document</SUPERCLASS>
<DESCRIPTION> Test Document for Server Side Overrides </DESCRIPTION>
<BEANCLASSPATH> ifs.pm.examples.api.OverrideExample </BEANCLASSPATH>
<SERVERCLASSPATH> ifs.pm.examples.api.S_OverrideExample </SERVERCLASSPATH>
</CLASSOBJECT>
=========
BeanClass
=========
// $Header$
* Please complete these missing tags
* @author
* @rref
* @copyright
* @concurrency
* @see
package ifs.pm.examples.api;
import oracle.ifs.server.S_LibraryObjectData;
import oracle.ifs.beans.LibrarySession;
import oracle.ifs.common.IfsException;
import oracle.ifs.beans.TieDocument;
public class OverrideExample extends TieDocument
public static final String CLASS_NAME = "OVERRIDEEXAMPLE";
private static final boolean DEBUG = true;
* Please complete the missing tags for TestDocument1
* @param
* @return
* @throws
* @pre
* @post
public OverrideExample( LibrarySession ifs,
java.lang.Long id,
java.lang.Long classId,
S_LibraryObjectData data )
throws IfsException
// Construct a Document object - standard variant.
super( ifs, id, classId, data );
===========
ServerClass
===========
// $Header$
* Please complete these missing tags
* @author
* @rref
* @copyright
* @concurrency
* @see
package ifs.pm.examples.api;
import oracle.ifs.server.S_LibrarySession;
import oracle.ifs.server.S_LibraryObjectData;
import oracle.ifs.server.OperationState;
import oracle.ifs.server.S_LibraryObjectDefinition;
import oracle.ifs.common.IfsException;
import oracle.ifs.server.S_TieDocument;
import ifs.pm.common.trace.Alert;
public class S_OverrideExample extends S_TieDocument
private static final boolean DEBUG = true;
* Please complete the missing tags for S_TestDocument1
* @param
* @return
* @throws
* @pre
* @post
public S_OverrideExample( S_LibrarySession ifs,
java.lang.Long classId )
throws IfsException
// Construct a Document object - standard variant.
super( ifs, classId );
Alert.setFileLoggingContext();
Alert.log( "S_OverrideExample(S_LibrarySession, Long): Instance Created." );
* Please complete the missing tags for S_TestDocument1
* @param
* @return
* @throws
* @pre
* @post
public S_OverrideExample( S_LibrarySession ifs,
S_LibraryObjectData data )
throws IfsException
// Construct a Document object - standard variant.
super( ifs, data );
Alert.setFileLoggingContext();
Alert.log( "S_OverrideExample(S_LibrarySession, S_LibraryObjectData): Instance Created." );
* Please complete the missing tags for extendedPreInsert
* @param
* @return
* @throws
* @pre
* @post
public void extendedPreInsert( OperationState opState, S_LibraryObjectDefinition def )
throws IfsException
Alert.log( "S_OverrideExample.extendedPreInsert(): Entering Method." );
super.extendedPreInsert( opState, def );
Alert.log( "S_OverrideExample.extendedPreInsert(): Exiting Method." );
public void extendedPreUpdate( OperationState opState, S_LibraryObjectDefinition def )
throws IfsException
Alert.log( "S_OverrideExample.extendedPreUpdate(): Entering Method." );
super.extendedPreUpdate( opState, def );
Alert.log( "S_OverrideExample.extendedPreUpdate(): Exiting Method." );
public void extendedPreFree( OperationState opState, S_LibraryObjectDefinition def )
throws IfsException
Alert.log( "S_OverrideExample.extendedPreFree(): Entering Method." );
super.extendedPreFree( opState, def );
Alert.log( "S_OverrideExample.extendedPreFree(): Exiting Method." );
==================================================================================
Type Registration - associate '.over' files with the OverrideExample Content Type
=============================================================== ===================
<OBJECTLIST>
<PROPERTYBUNDLE>
<UPDATE RefType="valuedefault">ParserLookupByFileExtension</UPDATE>
<PROPERTIES>
<PROPERTY ACTION="add">
<NAME>over</NAME>
<VALUE DataType="String">oracle.ifs.beans.parsers.ClassSelectionParser</VALUE>
</PROPERTY>
</PROPERTIES>
</PROPERTYBUNDLE>
<PROPERTYBUNDLE>
<UPDATE RefType="valuedefault">IFS.PARSER.ObjectTypeLookupByFileExtension</UPDATE>
<PROPERTIES>
<PROPERTY ACTION="add">
<NAME>over</NAME>
<VALUE DataType="String">OverrideExample</VALUE>
</PROPERTY>
</PROPERTIES>
</PROPERTYBUNDLE>
</OBJECTLIST>
Install and Compile all of the above. - Note you can get the source for the Alert classes from the following post: http://technet.oracle.com:89/ubb/Forum36/HTML/001272.html
Using notepad create a file called SimpleTest.over.
Now try to insert the 'SimpleTest.over' file (I used SMB in this example). Open the file and update it's content. Delete the file.
You should find a log file in <ORACLE_HOME>/ifs1.1/bin called something like TraceOutputFile-??????????????.log.
The contents of this file should look something like
S_OverrideExample(S_LibrarySession, Long): Instance Created.
S_OverrideExample.extendedPreInsert(): Entering Method.
S_OverrideExample.extendedPreInsert(): Exiting Method.
S_OverrideExample(S_LibrarySession, S_LibraryObjectData): Instance Created.
S_OverrideExample(S_LibrarySession, S_LibraryObjectData): Instance Created.
S_OverrideExample.extendedPreUpdate(): Entering Method.
S_OverrideExample.extendedPreUpdate(): Exiting Method.
S_OverrideExample.extendedPreUpdate(): Entering Method.
S_OverrideExample.extendedPreUpdate(): Exiting Method.
S_OverrideExample(S_LibrarySession, S_LibraryObjectData): Instance Created.
S_OverrideExample.extendedPreUpdate(): Entering Method.
S_OverrideExample.extendedPreUpdate(): Exiting Method.
S_OverrideExample.extendedPreFree(): Entering Method.
S_OverrideExample.extendedPreFree(): Exiting Method.
Hope this helps
null

Similar Messages

  • Using Group For Override Not Working

    I have the SQL management packs installed for 2008 and 2012. Each of them have many of the same monitors similar to the Windows Server OS MP set. 
    I have a custom group with instances of the SQL 2008 DB Engine and SQL 2012 DB Engine classes. So basically the group has a few MSSQLSERVER objects in it. I have applied a couple overrides to this group.
    Question 1:
    Would I have to override the same monitor from the SQL 2008 DB Engine class and the SQL 2012 DB Engine class? Or could I just pick one and override for the group I created which has both MSSQLSERVER from SQL 2008 and SQL 2012?
    Question 2:
    Would an override to this group work? It seems like we are still getting alerts that exceed the threshold in the default monitor. I would have just added the two SQL computers to the group but I thought since I was creating an instance group that I'd have
    to add the objects from the class the original monitor is targeted to so I added the MSSQLSERVER to the group.
    What am I doing wrong here?

    What you want to do? If you want to override monitors of parent object with group which populated with child objects then not, you can't do it. If you you want to override as example, CPU Performance monitor for all SQL 2008 Servers then you need to
    create group with computers which contains SQL Instances. It can do Microsoft.SystemCenter.GroupPopulator discovery datasource module:
    http://msdn.microsoft.com/en-us/library/ff472328.aspx
    but as I know "contained" and "contains" parts of module is not available from console, you can do it from Authoring Tools, VSAE or XML editor.
    Vladimir Zelenov | http://systemcenter4all.wordpress.com

  • [Solved] Vim tabstop override not working through .vimrc

    I'm getting to know Vim and am trying to set my tabstop settings in ~/.vimrc. I've added the lines below:
    set autoindent " always set autoindenting on
    set tabstop=4
    set shiftwidth=4
    set noexpandtab
    set softtabstop=4
    Yet when i start Vim and type 'set tabstop' it still reports back 8, so the settings above apparently don't work. If i 'set tabstop=4' from within Vim it works fine, just only for the current session.
    Other settings in .vimrc are read okay, so i don't think the problem lies there.
    system vimrc file: "/etc/vimrc"
    user vimrc file: "$HOME/.vimrc"
    user exrc file: "$HOME/.exrc"
    fall-back for $VIM: "/usr/share/vim"
    Any ideas?
    Last edited by litemotiv (2009-05-20 14:28:36)

    karol wrote:Any chance it's a .virc / .vimrc / .gvimrc or /root/.virc etc. mismatch?
    ~/vi(m)rc doesn't work, but ~/.vi(m)rc does - mind the dot :-)
    No i don't think so:
    [ollie@arch ~]% ls .v*
    .viminfo .vimrc
    I also have some other settings in the file like 'set number' and a colorscheme, that do get loaded..

  • Velocity override command not working

    I am using ni pci-7334 stepper motion control board.
    flex_set_velocity_override command is not working in VB6. the selected axis gets killed?
    Please reply.
    Regards

    Hey Nandkumar,
    The velocity of a contoured move is not determined by the velocity parameter but by the distance between the position points in the contour array. Thus, in this case, the velocity parameter has no effect and flex_load_velocity_override() doesn't change the velocity of contoured moves. The velocity override command does work with straight line moves, arc moves, and other moves, just not with contouring moves, because the contour moves set their velocities in a different way. Please refer to the following discussion forum link Using velocity override in absolute contouring mode for more information on why this function doesn't work with contouring moves. Also, in this discussion forum there is somewhat of a work around.
    I hope this helps. Please let me know if you have any further questions on this. Thanks and have a great day.
    Regards,
    DJ
    Applications Engineer
    National Instruments

  • Overriding Commit action does not work

    Hello
    I am using Jdeveloper 10g (9.0.5.1), and created a simple uix input form with Create and Commit operation buttons. It works very nicely.
    However, I am trying to override the Commit action because i would like to present a confirmation message for the commit process.
    I followed the Online help to override Commit action as f
    1- Changed the event property from 'action' to 'Commit'
    2- right click the datapage and selected "Go to Code"
    3- inside the DataAction Class i wrote the following
    public void onCommit(DataActionContext ctx)
    System.out.println("test override commit");
    if (ctx.getEventActionBinding() != null) ctx.getEventActionBinding().doIt();
    When i run the sample and add a new record, then press the Commit button, The function onCommit is called and the System.out.println is executed however, the Commit operation does not seem to work and the commit button is still enabled, no changes are seen in the database. When the commit is pressed one more time, the commit seems to work fine.
    I repeated the procedure over and over again, still no result
    I believe that overriding action buttons is important for developing non-trivial Web Applications. I appreciate any response
    thanks

    I am not sure why you used this method to get your application module:
    svc = (ApplicationModule)ctx.getBindingContext().findDataControl("ApplicationModuleDataControl").getDataProvider();
    Does your code get something different than doing it this way:
    ctx.getBindingContainer().getApplicationModule()
    The following scenario did not work because it did not pick up the values from the messageLovInput and the 2 messageTextInput fields. The fields are in the DataActionContext request object but they don't get written to the database, so I had to add the setAttribute methods in order to attempt to get it to work but there are still other problems that have arisen doing it this way (i.e. can't get the new dbsequence id for additional inserts into another table within the onCommit).
    1. Drag and drop a Commit button on the page.
    2. In the action I put the following code:
    public void onCommit(DataActionContext ctx){
    // Do validation here
    //In order to get the data in the database, I had to add the following 5 lines of code:
    ViewObject vo = ctx.getBindingContainer().getApplicationModule().findViewObject("NetView1");
    Row row = vo.getCurrentRow();
    row.setAttribute("NetId",ctx.getBindingContainer().getHttpServletRequest().getParameter("VB_NetId"));
    row.setAttribute("PermittedCount",ctx.getBindingContainer().getHttpServletRequest().getParameter("VB_PermittedCount"));
    row.setAttribute("Frequency",ctx.getBindingContainer().getHttpServletRequest().getParameter("VB_Frequency"));
    //Commit
    ctx.getBindingContainer().getApplicationModule().getTransaction().commit();
    }I don't think it should be this difficult to get the onCommit event to work.

  • Alt shift clear paragraph overrides does not work

    ID CS3 Win
    This is one of those little things that is becoming very frustrating-- crtl +shift+ click on paragraph style does not work all the time. It worked for me last week, but is not working today-- or it actually does work after click about 3 times , clicking another style and clicking back on the correct style. Anyone experiencing this/know a fix or what I may be doing wrong? I am doing as it says, holding those keys down and clicking the style.

    >crtl +shift+ click on paragraph style does not work all the time
    It shouldn't work at all. Those modifiers are for the clear overrides button at the bottom of the styles palette. Alt-click on the style name to clear all overrides. I believe this is different behaviour from CS2 (or am I thinking of CS) where alt-click cleared character overrides and alt-shft-click cleared everything.

  • [svn] 3921: Fix for - @inheritDoc tag not working for get/ set overrides when you only override the setter of a base class

    Revision: 3921
    Author: [email protected]
    Date: 2008-10-28 06:23:00 -0700 (Tue, 28 Oct 2008)
    Log Message:
    Fix for - @inheritDoc tag not working for get/set overrides when you only override the setter of a base class
    QE Notes: Baselines for framework test will need to be updated.
    Doc Notes: None
    Reviewer: Paul
    Bugs: SDK-17304
    tests: checkintests
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-17304
    Modified Paths:
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/ASDocExtension.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/ClassTable.java

    Revision: 3921
    Author: [email protected]
    Date: 2008-10-28 06:23:00 -0700 (Tue, 28 Oct 2008)
    Log Message:
    Fix for - @inheritDoc tag not working for get/set overrides when you only override the setter of a base class
    QE Notes: Baselines for framework test will need to be updated.
    Doc Notes: None
    Reviewer: Paul
    Bugs: SDK-17304
    tests: checkintests
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-17304
    Modified Paths:
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/ASDocExtension.java
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/ClassTable.java

  • We set up Airprint to our Xerox machine but we have codes set up so each department has to enter their code in before they print. Airprint will not work because we have the codes. Does any one know if there is a way to override this?

    Hello there-
    Our Xerox rep helped us set up Airprint to our copier machine. We have department codes set up on our copier so when any one goes to copy or print something they need to punch their code in. Airprint will not work because we have those codes (something prints out to the copier saying error due to accounting codes being set up). Does anyone know if there is a way to override this on our ipads? Thank you!!

    Hi Nico,
    if you want a local test/development setup of Oracle why don't you just install Oracle 11gR2 XE (http://www.oracle.com/technetwork/products/express-edition/downloads/index.html) ?
    If you install this you get a database, APEX (4.1), client etc all in one install, this includes a webserver (EPG) on port 8080 without having to configure anything. It's a simple next-next-next installation without much configuration.
    If you would like to seperate database and software you can always do this later when you understand the concepts of database/control files etc.
    If you would like to upgrade to APEX 4.2 you can download this afterwards and easily install this by running two scripts in SQL*Plus ( apexins.sql and apxldimg.sql ), just check the apex 4.2 installtion guid section EPG for this.
    Regards
    Bas
    b.t.w. If you're running windows 7 - 64 bits just use the 32 bits XE for windows, might get some warnings but you should be able to install and run, good enough for test/dev

  • Italics is not working in part of my Pages document.

    Italics is not working in one part of my Pages document.
    It's working fine in other parts of the document, where font etc. is the exact same.
    I've tried to copy the entire text to a new document, without the track changes turned on, but the area remains locked for the italics option.
    Can anyone help me please?

    Menu > View > Show Styles Drawer
    Pages samples existing styled text to create the styles and you apply them by selecting text and clicking on the style in the Style Drawer. It will not override prexisting exceptions to the style in selected text but you can force the Style definition onto the text by double clicking on the style name.
    Full details here:
    http://www.freeforum101.com/iworktipsntrick/viewtopic.php?t=180&highlight=styles &mforum=iworktipsntrick
    Peter

  • Why this code is not working??? java script

    gen_validatorv2.js
         JavaScript Form Validator
    Version 2.0.2
         Copyright 2003 JavaScript-coder.com. All rights reserved.
         You use this script in your Web pages, provided these opening credit
    lines are kept intact.
         The Form validation script is distributed free from JavaScript-Coder.com
         You may please add a link to JavaScript-Coder.com,
         making it easy for others to find this script.
         Checkout the Give a link and Get a link page:
         http://www.javascript-coder.com/links/how-to-link.php
    You may not reprint or redistribute this code without permission from
    JavaScript-Coder.com.
         JavaScript Coder
         It precisely codes what you imagine!
         Grab your copy here:
              http://www.javascript-coder.com/
    function Validator(frmname)
    this.formobj=document.forms[frmname];
         if(!this.formobj)
         alert("BUG: couldnot get Form object "+frmname);
              return;
         if(this.formobj.onsubmit)
         this.formobj.old_onsubmit = this.formobj.onsubmit;
         this.formobj.onsubmit=null;
         else
         this.formobj.old_onsubmit = null;
         this.formobj.onsubmit=form_submit_handler;
         this.addValidation = add_validation;
         this.setAddnlValidationFunction=set_addnl_vfunction;
         this.clearAllValidations = clear_all_validations;
    function set_addnl_vfunction(functionname)
    this.formobj.addnlvalidation = functionname;
    function clear_all_validations()
         for(var itr=0;itr < this.formobj.elements.length;itr++)
              this.formobj.elements[itr].validationset = null;
    function form_submit_handler()
         for(var itr=0;itr < this.elements.length;itr++)
              if(this.elements[itr].validationset &&
         !this.elements[itr].validationset.validate())
              return false;
         if(this.addnlvalidation)
         str =" var ret = "+this.addnlvalidation+"()";
         eval(str);
    if(!ret) return ret;
         return true;
    function add_validation(itemname,descriptor,errstr)
    if(!this.formobj)
         alert("BUG: the form object is not set properly");
              return;
         }//if
         var itemobj = this.formobj[itemname];
    if(!itemobj)
         alert("BUG: Couldnot get the input object named: "+itemname);
              return;
         if(!itemobj.validationset)
         itemobj.validationset = new ValidationSet(itemobj);
    itemobj.validationset.add(descriptor,errstr);
    function ValidationDesc(inputitem,desc,error)
    this.desc=desc;
         this.error=error;
         this.itemobj = inputitem;
         this.validate=vdesc_validate;
    function vdesc_validate()
    if(!V2validateData(this.desc,this.itemobj,this.error))
    this.itemobj.focus();
              return false;
    return true;
    function ValidationSet(inputitem)
    this.vSet=new Array();
         this.add= add_validationdesc;
         this.validate= vset_validate;
         this.itemobj = inputitem;
    function add_validationdesc(desc,error)
    this.vSet[this.vSet.length]=
         new ValidationDesc(this.itemobj,desc,error);
    function vset_validate()
    for(var itr=0;itr<this.vSet.length;itr++)
         if(!this.vSet[itr].validate())
              return false;
         return true;
    function validateEmailv2(email)
    // a very simple email validation checking.
    // you can add more complex email checking if it helps
    if(email.length <= 0)
         return true;
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    var regexp_user=/^\"?[\w-_\.]*\"?$/;
    if(splitted[1].match(regexp_user) == null) return false;
    if(splitted[2] != null)
    var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
    if(splitted[2].match(regexp_domain) == null)
         var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
         if(splitted[2].match(regexp_ip) == null) return false;
    }// if
    return true;
    return false;
    function V2validateData(strValidateStr,objValue,strError)
    var epos = strValidateStr.search("=");
    var command = "";
    var cmdvalue = "";
    if(epos >= 0)
    command = strValidateStr.substring(0,epos);
    cmdvalue = strValidateStr.substr(epos+1);
    else
    command = strValidateStr;
    switch(command)
    case "req":
    case "required":
    if(eval(objValue.value.length) == 0)
    if(!strError || strError.length ==0)
    strError = objValue.name + " : Required Field";
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case required
    case "maxlength":
    case "maxlen":
    if(eval(objValue.value.length) > eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : "+cmdvalue+" characters maximum ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
    }//if
    break;
    }//case maxlen
    case "minlength":
    case "minlen":
    if(eval(objValue.value.length) < eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : " + cmdvalue + " characters minimum ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
    }//if
    break;
    }//case minlen
    case "alnum":
    case "alphanumeric":
    var charpos = objValue.value.search("[^A-Za-z0-9]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only alpha-numeric characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//case alphanumeric
    case "num":
    case "numeric":
    var charpos = objValue.value.search("[^0-9]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only digits allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//numeric
    case "alphabetic":
    case "alpha":
    var charpos = objValue.value.search("[^A-Za-z]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only alphabetic characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//alpha
              case "alnumhyphen":
    var charpos = objValue.value.search("[^A-Za-z0-9\-_]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": characters allowed are A-Z,a-z,0-9,- and _";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if                
                   break;
    case "email":
    if(!validateEmailv2(objValue.value))
    if(!strError || strError.length ==0)
    strError = objValue.name+": Enter a valid Email address ";
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case email
    case "lt":
    case "lessthan":
    if(isNaN(objValue.value))
    alert(objValue.name+": Should be a number ");
    return false;
    }//if
    if(eval(objValue.value) >= eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : value should be less than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case lessthan
    case "gt":
    case "greaterthan":
    if(isNaN(objValue.value))
    alert(objValue.name+": Should be a number ");
    return false;
    }//if
    if(eval(objValue.value) <= eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : value should be greater than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case greaterthan
    case "regexp":
                   if(objValue.value.length > 0)
         if(!objValue.value.match(cmdvalue))
         if(!strError || strError.length ==0)
         strError = objValue.name+": Invalid characters found ";
         }//if
         alert(strError);
         return false;
         }//if
    break;
    }//case regexp
    case "dontselect":
    if(objValue.selectedIndex == null)
    alert("BUG: dontselect command for non-select Item");
    return false;
    if(objValue.selectedIndex == eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name+": Please Select one option ";
    }//if
    alert(strError);
    return false;
    break;
    }//case dontselect
    }//switch
    return true;
         Copyright 2003 JavaScript-coder.com. All rights reserved.
    example.html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Example for Validator</title>
    <script language="JavaScript" src="gen_validatorv2.js" type="text/javascript"></script>
    </head>
    <body>
    <form action="" name="myform" >
    <table cellspacing="2" cellpadding="2" border="0">
    <tr>
    <td align="right">First Name</td>
    <td><input type="text" name="FirstName"></td>
    </tr>
    <tr>
    <td align="right">Last Name</td>
    <td><input type="text" name="LastName"></td>
    </tr>
    <tr>
    <td align="right">EMail</td>
    <td><input type="text" name="Email"></td>
    </tr>
    <tr>
    <td align="right">Phone</td>
    <td><input type="text" name="Phone"></td>
    </tr>
    <tr>
    <td align="right">Address</td>
    <td><textarea cols="20" rows="5" name="Address"></textarea></td>
    </tr>
    <tr>
    <td align="right">Country</td>
    <td>
         <SELECT name="Country">
              <option value="" selected>[choose yours]
              <option value="008">Albania
              <option value="012">Algeria
              <option value="016">American Samoa
              <option value="020">Andorra
              <option value="024">Angola
              <option value="660">Anguilla
              <option value="010">Antarctica
              <option value="028">Antigua And Barbuda
              <option value="032">Argentina
              <option value="051">Armenia
              <option value="533">Aruba     
         </SELECT>
         </td>
    </tr>
    <tr>
    <td align="right"></td>
    <td><input type="submit" value="Submit"></td>
    </tr>
    </table>
    </form>
    <script language="JavaScript" type="text/javascript">
    //You should create the validator only after the definition of the HTML form
    var frmvalidator = new Validator("myform");
    frmvalidator.addValidation("FirstName","req","Please enter your First Name");
    frmvalidator.addValidation("FirstName","maxlen=20",
         "Max length for FirstName is 20");
    frmvalidator.addValidation("FirstName","alpha");
    frmvalidator.addValidation("LastName","req");
    frmvalidator.addValidation("LastName","maxlen=20");
    frmvalidator.addValidation("Email","maxlen=50");
    frmvalidator.addValidation("Email","req");
    frmvalidator.addValidation("Email","email");
    frmvalidator.addValidation("Phone","maxlen=50");
    frmvalidator.addValidation("Phone","numeric");
    frmvalidator.addValidation("Address","maxlen=50");
    frmvalidator.addValidation("Country","dontselect=0");
    </script>
    </body>
    </html>
    documentation.html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
         <title>JavaScript Form Validator Documentation</title>
    <Style>
    BODY, P,TD{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 10pt }
    H1{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 18pt; color : #000066}
    H3{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 12pt; color : #000066 }
    A{font-family: Arial,Verdana,Helvetica, sans-serif;}
    B {     font-family : Arial, Helvetica, sans-serif;     font-size : 12px;     font-weight : bold;}
    CODE {font-family : Courier,monospace;font-size: 10pt;color : #800000;}
    CODE.htm {font-family : "Courier New", Courier, monospace;     font-size : x-small;     color : #000080;}
    </Style>
    </head>
    <body>
    <center>
    <table cellspacing="2" cellpadding="2" border="0" width="600">
    <tr><td>
         <h1>JavaScript Form Validations Made Easy!</h1>
         <h3>Documentation for JavaScript Form Validator</h3>
         <HR size=1>
         <P>
         The Form validation script is distributed free from JavaScript-Coder.com<br>
         You can use the script in your web pages for free.
         </P>
         <P>
         You may please add a link to JavaScript-Coder.com,
         making it easy for others to find this script.<br>
         Checkout the <A href="http://www.javascript-coder.com/links/how-to-link.php
         target="_blank">Give a Link & Get a Link!</A> page.
         </P>
         <P>
         <B>JavaScript Coder</B><br>
         It precisely codes what you imagine!<br>
         Grab your copy here: http://www.javascript-coder.com
         </P>
         <HR size=1>
         <P>
         Using client side JavaScript is an efficient way to validate the user input
         in web applications. When there are many fields in the form, the JavaScript
         validation becomes too complex.
         </P>
         <P>
    The JavaScript class presented here makes the form validations many times easier.
         </P>
         <P>
         The idea is to create a set of "validation descriptors" associated with each element
         in a form. The "validation descriptor" is nothing but a string specifying the type of
         validation to be performed.
         </P>
         <P>
         Each field in the form can have 0, 1, or more validations. For example, the input should
         not be empty, should be less than 25 chars, should be alpha-numeric, etc
         </P>
         You can associate a set of validation descriptors for each input field in the form.
         <a name="3"></a>
         <h3>Using The Script</h3>
         1.Include gen_validatorv2.js in your html file just before closing the HEAD tag<br><br>
         <CODE>
         <script language="JavaScript" src="gen_validatorv2.js" type="text/javascript"></script><BR>
         </head><BR>
         </CODE><br>
         2. Just after defining your form,
         Create a form validator object passing the name of the form<br><br>
         <CODE class='htm'>
          <FORM name='myform' action=""><BR>
          <!----Your input fields go here --><BR>
          </FORM><BR>
         </CODE><CODE>
          <SCRIPT language="JavaScript"><BR>
          var frmvalidator  = new Validator("myform");<BR>
         </CODE>
         <br>
         <br>
         3. Now add the validations required<br><br>
         <CODE>
              frmvalidator.addValidation("FirstName","alpha");
         </CODE><br><br>
         the first argument is the name of the field and the second argument is the
         validation descriptor, which specifies the type of validation to be performed.<br>
         You can add any number of validations.The list of validation descriptors are provided
         at the end of the documentation.<br>
         The optional third argument is the error string to be displayed if the validation
         fails.<br>
         <br>
         <CODE>
              frmvalidator.addValidation("FirstName","alpha");<br>
              frmvalidator.addValidation("FirstName","req","Please enter your First Name");<br>
              frmvalidator.addValidation("FirstName","maxlen=20",<br>
                   "Max length for FirstName is 20");          <br>
         </CODE>     <br>
         <br>
         4. Similarly, add validations for the fields where validation is required.<br>
         That's it! You are ready to go.
         <A name="3"></A>
         <h3>Example</h3>
         The example below will make the idea clearer<br>
         <CODE class="htm">
                   <form action="" name="myform" ><BR>
                   <table cellspacing="2" cellpadding="2" border="0"><BR>
                   <tr><BR>
                     <td align="right">First Name</td><BR>
                     <td><input type="text" name="FirstName"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Last Name</td><BR>
                     <td><input type="text" name="LastName"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">EMail</td><BR>
                     <td><input type="text" name="Email"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Phone</td><BR>
                     <td><input type="text" name="Phone"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Address</td><BR>
                     <td><textarea cols="20" rows="5" name="Address"></textarea></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Country</td><BR>
                     <td><BR>
                          <SELECT name="Country"><BR>
                             <option value="" selected>[choose yours]<BR>
                             <option value="008">Albania<BR>
                             <option value="012">Algeria<BR>
                             <option value="016">American Samoa<BR>
                             <option value="020">Andorra<BR>
                             <option value="024">Angola<BR>
                             <option value="660">Anguilla<BR>
                             <option value="010">Antarctica<BR>
                             <option value="028">Antigua And Barbuda<BR>
                             <option value="032">Argentina<BR>
                             <option value="051">Armenia<BR>
                             <option value="533">Aruba     <BR>
                         </SELECT><BR>
                        </td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right"></td><BR>
                     <td><input type="submit" value="Submit"></td><BR>
                   </tr><BR>
                   </table><BR>
                   </form><BR>
                   </CODE><CODE>
                   <script language="JavaScript" type="text/javascript"><BR>
                    var frmvalidator = new Validator("myform");<BR>
                    frmvalidator.addValidation("FirstName","req","Please enter your First Name");<BR>
                    frmvalidator.addValidation("FirstName","maxlen=20",<BR>
                        "Max length for FirstName is 20");<BR>
                    frmvalidator.addValidation("FirstName","alpha");<BR>
                    <BR>
                    frmvalidator.addValidation("LastName","req");<BR>
                    frmvalidator.addValidation("LastName","maxlen=20");<BR>
                    <BR>
                    frmvalidator.addValidation("Email","maxlen=50");<BR>
                    frmvalidator.addValidation("Email","req");<BR>
                    frmvalidator.addValidation("Email","email");<BR>
                    <BR>
                    frmvalidator.addValidation("Phone","maxlen=50");<BR>
                    frmvalidator.addValidation("Phone","numeric");<BR>
                    <BR>
                    frmvalidator.addValidation("Address","maxlen=50");<BR>
                    frmvalidator.addValidation("Country","dontselect=0");<BR>
                   </script><BR>     
         </CODE>
         <A name="4"></A>
         <h3>Some Additional Notes</h3>
         <LI type="disc">The form validators should be created only after defining the HTML form
         (only after the </form> tag. )<br>
         <LI type="disc">Your form should have a distinguished name.
         If there are more than one form
         in the same page, you can add validators for each of them. The names of the
         forms and the validators should not clash.
         <LI type="disc">You can't use the javascript onsubmit event of the form if it you are
         using this validator script. It is because the validator script automatically overrides the
         onsubmit event. If you want to add a custom validation, see the section below
         </LI>
         <A name="5"></A>
         <h3>Adding Custom Validation</h3>
         If you want to add a custom validation, which is not provided by the validation descriptors,
         you can do so. Here are the steps:
         <LI type="disc">Create a javascript function which returns true or false depending on the validation.<br>
         <CODE>
              function DoCustomValidation()<BR>
              {<BR>
                var frm = document.forms["myform"];<BR>
                if(frm.pwd1.value != frm.pwd2.value)<BR>
                {<BR>
                  alert('The Password and verified password does not match!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                {<BR>
                  return true;<BR>
                }<BR>
              }<BR>
         </CODE><br>
         <LI type="disc">Associate the validation function with the validator object.<br>
         <CODE>
         frmvalidator.setAddnlValidationFunction("DoCustomValidation");
         </CODE><br>
         </LI>
         <P>
         The custom validation function will be called automatically after other validations.
         </P>
         <P>
         If you want to do more than one custom validations, you can do all those
         validations in the same function.
         </P>
         <CODE>
              function DoCustomValidation()<BR>
              {<BR>
                var frm = document.forms["myform"];<BR>
                if(false == DoMyValidationOne())<BR>
                {<BR>
                  alert('Validation One Failed!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                if(false == DoMyValidationTwo())<BR>
                {<BR>
                  alert('Validation Two Failed!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                {<BR>
                  return true;<BR>
                }<BR>
              }<BR>
         </CODE><br>
         where DoMyValidationOne() and DoMyValidationTwo() are custom functions for
         validation.
         <A name="6"></A>
         <h3>Clear All Validations</h3>
         In some dynamically programmed pages, it may be required to change the validations in the
         form at run time. For such cases, a function is included which clears all validations in the
         validator object.<br><br>
         <CODE>
         frmvalidator.clearAllValidations();
         </CODE><br>
         <br>
         this function call clears all validations you set.<br>
         You will not need this method in most cases.
         <a name="7"></a>
         <h3>Table of Validation Descriptors</h3>     
    <table cellspacing="2" cellpadding="2" border="1" width="520px">
    <tr>
    <td><FONT face=Arial size=2>
         required<BR>
         req </FONT>
         </td>
    <td><FONT face=Arial size=2>The field should not be
    empty </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         maxlen=???<BR>
         maxlength=???
         </td>
    <td><FONT face=Arial size=2>checks the length entered data to the maximum. For
    example, if the maximum size permitted is 25, give the validation descriptor as "maxlen=25"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         minlen=???<BR>
         minlength=???
         </td>
    <td><FONT face=Arial size=2>checks the length of the entered string to the
    required minimum. example "minlen=5"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         alphanumeric /<BR>
         alnum </FONT>
         </td>
    <td><FONT face=Arial size=2>Check the data if it
    contains any other characters other than alphabetic or numeric characters
    </FONT>
         </td>
    </tr>     
    <tr>
    <td><FONT face=Arial size=2>num <BR>
         numeric </FONT>
         </td>
    <td><FONT face=Arial size=2>Check numeric data
    </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>alpha <BR>
         alphabetic </FONT>
         </td>
    <td><FONT face=Arial size=2>Check alphabetic data.
    </FONT>
         </td>
    </tr>     
    <tr>
    <td><FONT face=Arial size=2>email </FONT>
         </td>
    <td><FONT face=Arial size=2>The field is an email
    field and verify the validity of the data. </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>lt=???<BR>
         lessthan=???
         </td>
    <td><FONT face=Arial size=2>
         Verify the data to be less than the value passed.
         Valid only for numeric fields. <BR>
         example: if the
    value should be less than 1000 give validation description as "lt=1000"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>gt=???<BR>
         greaterthan=???     </td>
    <td><FONT face=Arial size=2>
         Verify the data to be greater than the value passed.
         Valid only for numeric fields. <BR>
         example: if the
    value should be greater than 10 give validation description as "gt=10"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>regexp=??? </FONT>
         </td>
    <td><FONT face=Arial size=2>
         Check with a regular expression the value should match the regular expression.<BR>
         example: "regexp=^[A-Za-z]{1,20}$" allow up to 20 alphabetic
         characters.
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>dontselect=?? </FONT>
         </td>
    <td><FONT face=Arial size=2>This
    validation descriptor is valid only for select input items (lists)
    Normally, the select list boxes will have one item saying 'Select One' or
    some thing like that. The user should select an option other than this
    option. If the index of this option is 0, the validation description
    should be "dontselect=0"
         </td>
    </tr>
    </table>
         <P>
              <table cellspacing="2" cellpadding="2" border="1" width="520">
              <tr>
              <td>
                   <B>NOTE:</B><br>
                   The HTML Form Wizard included in JavaScript Coder contains still more
                   number of validations
                   (comparison validations, check box & radio button validations and more)<br>
                   Using the wizard, you can add validations to your forms
                   without writing a single line of code! <br>
                   JavaScript Coder takes care of
                   generating the code and inserting the code in to the HTML file.<br>
                   <A href="http://www.javascript-coder.com/index.phtml
                   target="_blank">Read more about JavaScript Coder</A>
                   </td>
              </tr>
              </table>
         </P>
         <A name="8"></A>
         <h3>Example Page</h3>     
         See the <a href="example.html target="_blank"
         >JavaScript form validation example here</a>
    </td>
    </tr>
    <tr><td align="center">
         <HR><br>
         Copyright &copy; 2003 JavaScript-Coder.com. All rights reserved.
    </td></tr>
    </table>     
    </center>
    </body>
    </html>

    The code is not working because you made a mistake somewhere, duh! So figure out what (hint: firefox javascript console, it's your friend) and fix it!
    And next time when you post code: use the [ code ]  tags to pretty format your code, as it is now it's unreadable.
    http://forum.java.sun.com/help.jspa?sec=formatting

  • Php include not working

    Good Afternoon.
    I am having a hard time trying to find what needs to be set to allow url
    include statments in php on Netware 6.5 sp3, php5.
    I know my code is correct after trying it on an external server, and it
    seems all other php coding works. Just not the http includes as shown
    below:
    <?php
    include ('http://your.website.here/filenamehere.php');
    ?>
    php.ini is posted below:
    [PHP]
    ; About php.ini ;
    ; This file controls many aspects of PHP's behavior. In order for PHP to
    ; read it, it must be named 'php.ini'. PHP looks for it in the current
    ; working directory, in the path designated by the environment variable
    ; PHPRC, and in the path that was defined in compile time (in that order).
    ; Under Windows, the compile-time path is the Windows directory. The
    ; path in which the php.ini file is looked for can be overridden using
    ; the -c argument in command line mode.
    ; The syntax of the file is extremely simple. Whitespace and Lines
    ; beginning with a semicolon are silently ignored (as you probably
    guessed).
    ; Section headers (e.g. [Foo]) are also silently ignored, even though
    ; they might mean something in the future.
    ; Directives are specified using the following syntax:
    ; directive = value
    ; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
    ; The value can be a string, a number, a PHP constant (e.g. E_ALL or
    M_PI), one
    ; of the INI constants (On, Off, True, False, Yes, No and None) or an
    expression
    ; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo").
    ; Expressions in the INI file are limited to bitwise operators and
    parentheses:
    ; | bitwise OR
    ; & bitwise AND
    ; ~ bitwise NOT
    ; ! boolean NOT
    ; Boolean flags can be turned on using the values 1, On, True or Yes.
    ; They can be turned off using the values 0, Off, False or No.
    ; An empty string can be denoted by simply not writing anything after the
    equal
    ; sign, or by using the None keyword:
    ; foo = ; sets foo to an empty string
    ; foo = none ; sets foo to an empty string
    ; foo = "none" ; sets foo to the string 'none'
    ; If you use constants in your value, and these constants belong to a
    ; dynamically loaded extension (either a PHP extension or a Zend
    extension),
    ; you may only use these constants *after* the line that loads the
    extension.
    ; About this file ;
    ; This is the recommended, PHP 5-style version of the php.ini-dist file.
    It
    ; sets some non standard settings, that make PHP more efficient, more
    secure,
    ; and encourage cleaner coding.
    ; The price is that with these settings, PHP may be incompatible with some
    ; applications, and sometimes, more difficult to develop with. Using this
    ; file is warmly recommended for production sites. As all of the changes
    from
    ; the standard settings are thoroughly documented, you can go over each
    one,
    ; and decide whether you want to use it or not.
    ; For general information about the php.ini file, please consult the
    php.ini-dist
    ; file, included in your PHP distribution.
    ; This file is different from the php.ini-dist file in the fact that it
    features
    ; different values for several directives, in order to improve
    performance, while
    ; possibly breaking compatibility with the standard out-of-the-box
    behavior of
    ; PHP. Please make sure you read what's different, and modify your scripts
    ; accordingly, if you decide to use this file instead.
    ; - register_globals = Off [Security, Performance]
    ; Global variables are no longer registered for input data (POST, GET,
    cookies,
    ; environment and other server variables). Instead of using $foo, you
    must use
    ; you can use $_REQUEST["foo"] (includes any variable that arrives
    through the
    ; request, namely, POST, GET and cookie variables), or use one of the
    specific
    ; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"],
    depending
    ; on where the input originates. Also, you can look at the
    ; import_request_variables() function.
    ; Note that register_globals is going to be depracated (i.e., turned
    off by
    ; default) in the next version of PHP, because it often leads to
    security bugs.
    ; Read http://php.net/manual/en/security.registerglobals.php for
    further
    ; information.
    ; - register_long_arrays = Off [Performance]
    ; Disables registration of the older (and deprecated) long predefined
    array
    ; variables ($HTTP_*_VARS). Instead, use the superglobals that were
    ; introduced in PHP 4.1.0
    ; - display_errors = Off [Security]
    ; With this directive set to off, errors that occur during the
    execution of
    ; scripts will no longer be displayed as a part of the script output,
    and thus,
    ; will no longer be exposed to remote users. With some errors, the
    error message
    ; content may expose information about your script, web server, or
    database
    ; server that may be exploitable for hacking. Production sites should
    have this
    ; directive set to off.
    ; - log_errors = On [Security]
    ; This directive complements the above one. Any errors that occur
    during the
    ; execution of your script will be logged (typically, to your server's
    error log,
    ; but can be configured in several ways). Along with setting
    display_errors to off,
    ; this setup gives you the ability to fully understand what may have
    gone wrong,
    ; without exposing any sensitive information to remote users.
    ; - output_buffering = 4096 [Performance]
    ; Set a 4KB output buffer. Enabling output buffering typically
    results in less
    ; writes, and sometimes less packets sent on the wire, which can often
    lead to
    ; better performance. The gain this directive actually yields greatly
    depends
    ; on which Web server you're working with, and what kind of scripts
    you're using.
    ; - register_argc_argv = Off [Performance]
    ; Disables registration of the somewhat redundant $argv and $argc
    global
    ; variables.
    ; - magic_quotes_gpc = off [Performance]
    ; Input data is no longer escaped with slashes so that it can be sent
    into
    ; SQL databases without further manipulation. Instead, you should use
    the
    ; function addslashes() on each input element you wish to send to a
    database.
    ; - variables_order = "GPCS" [Performance]
    ; The environment variables are not hashed into the $_ENV. To access
    ; environment variables, you can use getenv() instead.
    ; - error_reporting = E_ALL [Code Cleanliness, Security(?)]
    ; By default, PHP surpresses errors of type E_NOTICE. These error
    messages
    ; are emitted for non-critical errors, but that could be a symptom of
    a bigger
    ; problem. Most notably, this will cause error messages about the use
    ; of uninitialized variables to be displayed.
    ; - allow_call_time_pass_reference = Off [Code cleanliness]
    ; It's not possible to decide to force a variable to be passed by
    reference
    ; when calling a function. The PHP 4 style to do this is by making the
    ; function require the relevant argument by reference.
    ; Language Options ;
    ; Enable the PHP scripting language engine under Apache.
    engine = On
    ; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
    zend.ze1_compatibility_mode = Off
    ; Allow the <? tag. Otherwise, only <?php and <script> tags are
    recognized.
    ; NOTE: Using short tags should be avoided when developing applications or
    ; libraries that are meant for redistribution, or deployment on PHP
    ; servers which are not under your control, because short tags may not
    ; be supported on the target server. For portable, redistributable code,
    ; be sure not to use short tags.
    short_open_tag = On
    ; Allow ASP-style <% %> tags.
    asp_tags = Off
    ; The number of significant digits displayed in floating point numbers.
    precision = 14
    ; Enforce year 2000 compliance (will cause problems with non-compliant
    browsers)
    y2k_compliance = On
    ; Output buffering allows you to send header lines (including cookies) even
    ; after you send body content, at the price of slowing PHP's output layer a
    ; bit. You can enable output buffering during runtime by calling the
    output
    ; buffering functions. You can also enable output buffering for all files
    by
    ; setting this directive to On. If you wish to limit the size of the
    buffer
    ; to a certain size - you can use a maximum number of bytes instead of
    'On', as
    ; a value for this directive (e.g., output_buffering=4096).
    output_buffering = 4096
    ; You can redirect all of the output of your scripts to a function. For
    ; example, if you set output_handler to "mb_output_handler", character
    ; encoding will be transparently converted to the specified encoding.
    ; Setting any output handler automatically turns on output buffering.
    ; Note: People who wrote portable scripts should not depend on this ini
    ; directive. Instead, explicitly set the output handler using
    ob_start().
    ; Using this ini directive may cause problems unless you know what
    script
    ; is doing.
    ; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler"
    ; and you cannot use both "ob_gzhandler" and
    "zlib.output_compression".
    ; Note: output_handler must be empty if this is set 'On' !!!!
    ; Instead you must use zlib.output_handler.
    ;output_handler =
    ; Transparent output compression using the zlib library
    ; Valid values for this option are 'off', 'on', or a specific buffer size
    ; to be used for compression (default is 4KB)
    ; Note: Resulting chunk size may vary due to nature of compression. PHP
    ; outputs chunks that are few hundreds bytes each as a result of
    ; compression. If you prefer a larger chunk size for better
    ; performance, enable output_buffering in addition.
    ; Note: You need to use zlib.output_handler instead of the standard
    ; output_handler, or otherwise the output will be corrupted.
    zlib.output_compression = Off
    ; You cannot specify additional output handlers if zlib.output_compression
    ; is activated here. This setting does the same as output_handler but in
    ; a different order.
    ;zlib.output_handler =
    ; Implicit flush tells PHP to tell the output layer to flush itself
    ; automatically after every output block. This is equivalent to calling
    the
    ; PHP function flush() after each and every call to print() or echo() and
    each
    ; and every HTML block. Turning this option on has serious performance
    ; implications and is generally recommended for debugging purposes only.
    implicit_flush = off
    ; The unserialize callback function will be called (with the undefined
    class'
    ; name as parameter), if the unserializer finds an undefined class
    ; which should be instanciated.
    ; A warning appears if the specified function is not defined, or if the
    ; function doesn't include/implement the missing class.
    ; So only set this entry, if you really want to implement such a
    ; callback-function.
    unserialize_callback_func=
    ; When floats & doubles are serialized store serialize_precision
    significant
    ; digits after the floating point. The default value ensures that when
    floats
    ; are decoded with unserialize, the data will remain the same.
    serialize_precision = 100
    ; Whether to enable the ability to force arguments to be passed by
    reference
    ; at function call time. This method is deprecated and is likely to be
    ; unsupported in future versions of PHP/Zend. The encouraged method of
    ; specifying which arguments should be passed by reference is in the
    function
    ; declaration. You're encouraged to try and turn this option Off and make
    ; sure your scripts work properly with it in order to ensure they will work
    ; with future versions of the language (you will receive a warning each
    time
    ; you use this feature, and the argument will be passed by value instead
    of by
    ; reference).
    allow_call_time_pass_reference = Off
    ; Safe Mode
    safe_mode = off
    ; By default, Safe Mode does a UID compare check when
    ; opening files. If you want to relax this to a GID compare,
    ; then turn on safe_mode_gid.
    safe_mode_gid = Off
    ; When safe_mode is on, UID/GID checks are bypassed when
    ; including files from this directory and its subdirectories.
    ; (directory must also be in include_path or full path must
    ; be used when including)
    safe_mode_include_dir =
    ; When safe_mode is on, only executables located in the safe_mode_exec_dir
    ; will be allowed to be executed via the exec family of functions.
    safe_mode_exec_dir = "sys:/tmp"
    ; Setting certain environment variables may be a potential security breach.
    ; This directive contains a comma-delimited list of prefixes. In Safe
    Mode,
    ; the user may only alter environment variables whose names begin with the
    ; prefixes supplied here. By default, users will only be able to set
    ; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
    ; Note: If this directive is empty, PHP will let the user modify ANY
    ; environment variable!
    safe_mode_allowed_env_vars = PHP_
    ; This directive contains a comma-delimited list of environment variables
    that
    ; the end user won't be able to change using putenv(). These variables
    will be
    ; protected even if safe_mode_allowed_env_vars is set to allow to change
    them.
    safe_mode_protected_env_vars = LD_LIBRARY_PATH
    ; open_basedir, if set, limits all file operations to the defined directory
    ; and below. This directive makes most sense if used in a per-directory
    ; or per-virtualhost web server configuration file. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    ; By default this is also set to "sys:/tmp". This is actually the value
    that is
    ; set for the below mentioned "upload_tmp_dir" directive. If
    "upload_tmp_dir" is
    ; changed, change the same for "open_basedir" also. This is done to allow
    ; phpMyAdmin application users to execute SQL commands through an SQL file.
    open_basedir = ".;sys:/tmp"
    ; This directive allows you to disable certain functions for security
    reasons.
    ; It receives a comma-delimited list of function names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_functions =
    ; This directive allows you to disable certain classes for security
    reasons.
    ; It receives a comma-delimited list of class names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_classes =
    ; Colors for Syntax Highlighting mode. Anything that's acceptable in
    ; <font color="??????"> would work.
    ;highlight.string = #DD0000
    ;highlight.comment = #FF9900
    ;highlight.keyword = #007700
    ;highlight.bg = #FFFFFF
    ;highlight.default = #0000BB
    ;highlight.html = #000000
    ; Misc
    ; Decides whether PHP may expose the fact that it is installed on the
    server
    ; (e.g. by adding its signature to the Web server header). It is no
    security
    ; threat in any way, but it makes it possible to determine whether you use
    PHP
    ; on your server or not.
    expose_php = On
    ; Resource Limits ;
    max_execution_time = 30 ; Maximum execution time of each script, in
    seconds
    max_input_time = 60 ; Maximum amount of time each script may spend parsing
    request data
    memory_limit = 64M ; Maximum amount of memory a script may consume
    (8MB)
    ; Error handling and logging ;
    ; error_reporting is a bit-field. Or each number up to get desired error
    ; reporting level
    ; E_ALL - All errors and warnings (doesn't include E_STRICT)
    ; E_ERROR - fatal run-time errors
    ; E_WARNING - run-time warnings (non-fatal errors)
    ; E_PARSE - compile-time parse errors
    ; E_NOTICE - run-time notices (these are warnings which often
    result
    ; from a bug in your code, but it's possible that it
    was
    ; intentional (e.g., using an uninitialized variable
    and
    ; relying on the fact it's automatically initialized
    to an
    ; empty string)
    ; E_STRICT - run-time notices, enable to have PHP suggest changes
    ; to your code which will ensure the best
    interoperability
    ; and forward compatibility of your code
    ; E_CORE_ERROR - fatal errors that occur during PHP's initial startup
    ; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's
    ; initial startup
    ; E_COMPILE_ERROR - fatal compile-time errors
    ; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
    ; E_USER_ERROR - user-generated error message
    ; E_USER_WARNING - user-generated warning message
    ; E_USER_NOTICE - user-generated notice message
    ; Examples:
    ; - Show all errors, except for notices and coding standards warnings
    ;error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
    ; - Show all errors, except for notices
    ;error_reporting = E_ALL & ~E_NOTICE
    ; - Show only errors
    ;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
    ; - Show all errors
    error_reporting = E_ALL
    ; Print out errors (as a part of the output). For production web sites,
    ; you're strongly encouraged to turn this feature off, and use error
    logging
    ; instead (see below). Keeping display_errors enabled on a production web
    site
    ; may reveal security information to end users, such as file paths on your
    Web
    ; server, your database schema or other information.
    display_errors = Off
    ; Even when display_errors is on, errors that occur during PHP's startup
    ; sequence are not displayed. It's strongly recommended to keep
    ; display_startup_errors off, except for when debugging.
    display_startup_errors = Off
    ; Log errors into a log file (server-specific log, stderr, or error_log
    (below))
    ; As stated above, you're strongly advised to use error logging in place of
    ; error displaying on production web sites.
    log_errors = On
    ; Set maximum length of log_errors. In error_log information about the
    source is
    ; added. The default is 1024 and 0 allows to not apply any maximum length
    at all.
    log_errors_max_len = 1024
    ; Do not log repeated messages. Repeated errors must occur in same file on
    same
    ; line until ignore_repeated_source is set true.
    ignore_repeated_errors = Off
    ; Ignore source of message when ignoring repeated messages. When this
    setting
    ; is On you will not log errors with repeated messages from different
    files or
    ; sourcelines.
    ignore_repeated_source = Off
    ; If this parameter is set to Off, then memory leaks will not be shown (on
    ; stdout or in the log). This has only effect in a debug compile, and if
    ; error reporting includes E_WARNING in the allowed list
    report_memleaks = On
    ; Store the last error/warning message in $php_errormsg (boolean).
    track_errors = Off
    ; Disable the inclusion of HTML tags in error messages.
    ; Note: Never use this feature for production boxes.
    ;html_errors = Off
    ; If html_errors is set On PHP produces clickable error messages that
    direct
    ; to a page describing the error or function causing the error in detail.
    ; You can download a copy of the PHP manual from
    http://www.php.net/docs.php
    ; and change docref_root to the base URL of your local copy including the
    ; leading '/'. You must also specify the file extension being used
    including
    ; the dot.
    ; Note: Never use this feature for production boxes.
    ;docref_root = "/phpmanual/"
    ;docref_ext = .html
    ; String to output before an error message.
    ;error_prepend_string = "<font color=ff0000>"
    ; String to output after an error message.
    ;error_append_string = "</font>"
    ; Log errors to specified file.
    error_log = "sys:/php5/error.log"
    ; Log errors to syslog (Event Log on NT, not valid in Windows 95).
    ;error_log = syslog
    ; Data Handling ;
    ; Note - track_vars is ALWAYS enabled as of PHP 4.0.3
    ; The separator used in PHP generated URLs to separate arguments.
    ; Default is "&".
    ;arg_separator.output = "&amp;"
    ; List of separator(s) used by PHP to parse input URLs into variables.
    ; Default is "&".
    ; NOTE: Every character in this directive is considered as separator!
    ;arg_separator.input = ";&"
    ; This directive describes the order in which PHP registers GET, POST,
    Cookie,
    ; Environment and Built-in variables (G, P, C, E & S respectively, often
    ; referred to as EGPCS or GPC). Registration is done from left to right,
    newer
    ; values override older values.
    variables_order = "GPCS"
    ; Whether or not to register the EGPCS variables as global variables. You
    may
    ; want to turn this off if you don't want to clutter your scripts' global
    scope
    ; with user data. This makes most sense when coupled with track_vars - in
    which
    ; case you can access all of the GPC variables through the $HTTP_*_VARS[],
    ; variables.
    ; You should do your best to write your scripts so that they do not require
    ; register_globals to be on; Using form variables as globals can easily
    lead
    ; to possible security problems, if the code is not very well thought of.
    register_globals = Off
    ; Whether or not to register the old-style input arrays, HTTP_GET_VARS
    ; and friends. If you're not using them, it's recommended to turn them
    off,
    ; for performance reasons.
    register_long_arrays = On
    ; This directive tells PHP whether to declare the argv&argc variables (that
    ; would contain the GET information). If you don't use these variables,
    you
    ; should turn it off for increased performance.
    register_argc_argv = Off
    ; Maximum size of POST data that PHP will accept.
    post_max_size = 8M
    ; Magic quotes
    ; Magic quotes for incoming GET/POST/Cookie data.
    magic_quotes_gpc = off
    ; Magic quotes for runtime-generated data, e.g. data from SQL, from
    exec(), etc.
    magic_quotes_runtime = off
    ; Use Sybase-style magic quotes (escape ' with '' instead of ').
    magic_quotes_sybase = Off
    ; Automatically add files before or after any PHP document.
    auto_prepend_file =
    auto_append_file =
    ; As of 4.0b4, PHP always outputs a character encoding by default in
    ; the Content-type: header. To disable sending of the charset, simply
    ; set it to be empty.
    ; PHP's built-in default is text/html
    default_mimetype = "text/html"
    ;default_charset = "iso-8859-1"
    ; Always populate the $HTTP_RAW_POST_DATA variable.
    ;always_populate_raw_post_data = On
    ; Paths and Directories ;
    ; UNIX: "/path1:/path2"
    ;include_path = ".:/php/includes"
    ; Windows: "path1;path2"
    ;include_path = ".;c:phpincludes"
    ; NetWare
    include_path = ".;sys:/php5/includes"
    ; The root of the PHP pages, used only if nonempty.
    ; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root
    ; if you are running php as a CGI under any web server (other than IIS)
    ; see documentation for security issues. The alternate is to use the
    ; cgi.force_redirect configuration below.
    doc_root =
    ; The directory under which PHP opens the script using /~username used only
    ; if nonempty.
    user_dir =
    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = sys:/php5/ext
    ; Whether or not to enable the dl() function. The dl() function does NOT
    work
    ; properly in multithreaded servers, such as IIS or Zeus, and is
    automatically
    ; disabled on them.
    enable_dl = On
    ; cgi.force_redirect is necessary to provide security running PHP as a CGI
    under
    ; most web servers. Left undefined, PHP turns this on by default. You can
    ; turn it off here AT YOUR OWN RISK
    ; **You CAN safely turn this off for IIS, in fact, you MUST.**
    ; cgi.force_redirect = 1
    ; if cgi.nph is enabled it will force cgi to always sent Status: 200 with
    ; every request.
    ; cgi.nph = 1
    ; if cgi.force_redirect is turned on, and you are not running under Apache
    or Netscape
    ; (iPlanet) web servers, you MAY need to set an environment variable name
    that PHP
    ; will look for to know it is OK to continue execution. Setting this
    variable MAY
    ; cause security issues, KNOW WHAT YOU ARE DOING FIRST.
    ; cgi.redirect_status_env = ;
    ; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate
    ; security tokens of the calling client. This allows IIS to define the
    ; security context that the request runs under. mod_fastcgi under Apache
    ; does not currently support this feature (03/17/2002)
    ; Set to 1 if running under IIS. Default is zero.
    ; fastcgi.impersonate = 1;
    ; cgi.rfc2616_headers configuration option tells PHP what type of headers
    to
    ; use when sending HTTP response code. If it's set 0 PHP sends Status:
    header that
    ; is supported by Apache. When this option is set to 1 PHP will send
    ; RFC2616 compliant header.
    ; Default is zero.
    ;cgi.rfc2616_headers = 0
    ; File Uploads ;
    ; Whether to allow HTTP file uploads.
    file_uploads = On
    ; Temporary directory for HTTP uploaded files (will use system default if
    not
    ; specified).
    upload_tmp_dir = sys:/tmp
    ; Maximum allowed size for uploaded files.
    upload_max_filesize = 100M
    ; Fopen wrappers ;
    ; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
    allow_url_fopen = On
    ; Define the anonymous ftp password (your email address)
    ;from="[email protected]"
    ; Define the User-Agent string
    ;user_agent="PHP"
    ; Default timeout for socket based streams (seconds)
    default_socket_timeout = 60
    ; If your scripts have to deal with files from Macintosh systems,
    ; or you are running on a Mac and need to deal with files from
    ; unix or win32 systems, setting this flag will cause PHP to
    ; automatically detect the EOL character in those files so that
    ; fgets() and file() will work regardless of the source of the file.
    ; auto_detect_line_endings = Off
    ; Dynamic Extensions ;
    ; If you wish to have an extension loaded automatically, use the following
    ; syntax:
    ; extension=modulename.extension
    ; For example, on Windows:
    ; extension=msql.dll
    ; ... or under UNIX:
    ; extension=msql.so
    ; Note that it should be the name of the module only; no directory
    information
    ; needs to go here. Specify the location of the extension with the
    ; extension_dir directive above.
    ;Windows Extensions
    ;Note that ODBC support is built in, so no dll is needed for it.
    ;extension=php_bz2.dll
    ;extension=php_cpdf.dll
    ;extension=php_curl.dll
    ;extension=php_dba.dll
    ;extension=php_dbase.dll
    ;extension=php_dbx.dll
    ;extension=php_exif.dll
    ;extension=php_fdf.dll
    ;extension=php_filepro.dll
    ;extension=php_gd2.dll
    ;extension=php_gettext.dll
    ;extension=php_ifx.dll
    ;extension=php_iisfunc.dll
    ;extension=php_imap.dll
    ;extension=php_interbase.dll
    ;extension=php_java.dll
    ;extension=php_ldap.dll
    ;extension=php_mbstring.dll
    ;extension=php_mcrypt.dll
    ;extension=php_mhash.dll
    ;extension=php_mime_magic.dll
    ;extension=php_ming.dll
    ;extension=php_mssql.dll
    ;extension=php_msql.dll
    ;extension=php_mysql.dll
    ;extension=php_oci8.dll
    ;extension=php_openssl.dll
    ;extension=php_oracle.dll
    ;extension=php_pdf.dll
    ;extension=php_pgsql.dll
    ;extension=php_shmop.dll
    ;extension=php_snmp.dll
    ;extension=php_sockets.dll
    ;extension=php_sybase_ct.dll
    ;extension=php_tidy.dll
    ;extension=php_w32api.dll
    ;extension=php_xmlrpc.dll
    ;extension=php_xsl.dll
    ;extension=php_yaz.dll
    ;extension=php_zip.dll
    ;NetWare Extensions
    extension=php_ldap.nlm
    extension=phpmysql.nlm
    extension=php2ucs.nlm
    extension=php_xml.nlm
    extension=php_ossl.nlm
    ; Module Settings ;
    [Syslog]
    ; Whether or not to define the various syslog variables (e.g. $LOG_PID,
    ; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In
    ; runtime, you can define these variables by calling
    define_syslog_variables().
    define_syslog_variables = Off
    [mail function]
    ; For Win32 only.
    ;SMTP =
    ;smtp_port = 25
    ; For Win32 only.
    ; sendmail_from =
    ; For Unix only. You may supply arguments as well (default: "sendmail -t
    -i").
    ;sendmail_path =
    ; Force the addition of the specified parameters to be passed as extra
    parameters
    ; to the sendmail binary. These parameters will always replace the value
    of
    ; the 5th parameter to mail(), even in safe mode.
    ;mail.force_extra_parameters =
    [SQL]
    sql.safe_mode = Off
    [ODBC]
    ;odbc.default_db = Not yet implemented
    ;odbc.default_user = Not yet implemented
    ;odbc.default_pw = Not yet implemented
    ; Allow or prevent persistent links.
    odbc.allow_persistent = On
    ; Check that a connection is still valid before reuse.
    odbc.check_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    odbc.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no
    limit.
    odbc.max_links = -1
    ; Handling of LONG fields. Returns number of bytes to variables. 0 means
    ; passthru.
    odbc.defaultlrl = 4096
    ; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to
    char.
    ; See the documentation on odbc_binmode and odbc_longreadlen for an
    explanation
    ; of uodbc.defaultlrl and uodbc.defaultbinmode
    odbc.defaultbinmode = 1
    [MySQL]
    ; Allow or prevent persistent links.
    mysql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mysql.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no
    limit.
    mysql.max_links = -1
    ; Default port number for mysql_connect(). If unset, mysql_connect() will
    use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order). Win32 will only
    look
    ; at MYSQL_PORT.
    mysql.default_port =
    ; Default socket name for local MySQL connects. If empty, uses the
    built-in
    ; MySQL defaults.
    mysql.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysql.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysql.default_user =
    ; Default password for mysql_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo
    get_cfg_var("mysql.default_password")
    ; and reveal this password! And of course, any users with read access to
    this
    ; file will be able to reveal the password as well.
    mysql.default_password =
    ; Maximum time (in secondes) for connect timeout. -1 means no limit
    mysql.connect_timeout = 60
    ; Trace mode. When trace_mode is active (=On), warnings for table/index
    scans and
    ; SQL-Errors will be displayed.
    mysql.trace_mode = Off
    [MySQLI]
    ; Maximum number of links. -1 means no limit.
    mysqli.max_links = -1
    ; Default port number for mysqli_connect(). If unset, mysqli_connect()
    will use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order). Win32 will only
    look
    ; at MYSQL_PORT.
    mysqli.default_port = 3306
    ; Default socket name for local MySQL connects. If empty, uses the
    built-in
    ; MySQL defaults.
    mysqli.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_user =
    ; Default password for mysqli_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo
    get_cfg_var("mysqli.default_password")
    ; and reveal this password! And of course, any users with read access to
    this
    ; file will be able to reveal the password as well.
    mysqli.default_password =
    ; Allow or prevent reconnect
    mysqli.reconnect = Off
    [mSQL]
    ; Allow or prevent persistent links.
    msql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    msql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    msql.max_links = -1
    [PostgresSQL]
    ; Allow or prevent persistent links.
    pgsql.allow_persistent = On
    ; Detect broken persistent links always with pg_pconnect().
    ; Auto reset feature requires a little overheads.
    pgsql.auto_reset_persistent = Off
    ; Maximum number of persistent links. -1 means no limit.
    pgsql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    pgsql.max_links = -1
    ; Ignore PostgreSQL backends Notice message or not.
    ; Notice message logging require a little overheads.
    pgsql.ignore_notice = 0
    ; Log PostgreSQL backends Noitce message or not.
    ; Unless pgsql.ignore_notice=0, module cannot log notice message.
    pgsql.log_notice = 0
    [Sybase]
    ; Allow or prevent persistent links.
    sybase.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybase.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no
    limit.
    sybase.max_links = -1
    ;sybase.interface_file = "/usr/sybase/interfaces"
    ; Minimum error severity to display.
    sybase.min_error_severity = 10
    ; Minimum message severity to display.
    sybase.min_message_severity = 10
    ; Compatability mode with old versions of PHP 3.0.
    ; If on, this will cause PHP to automatically assign types to results
    according
    ; to their Sybase type, instead of treating them all as strings. This
    ; compatability mode will probably not stay around forever, so try applying
    ; whatever necessary changes to your code, and turn it off.
    sybase.compatability_mode = Off
    [Sybase-CT]
    ; Allow or prevent persistent links.
    sybct.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybct.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no
    limit.
    sybct.max_links = -1
    ; Minimum server message severity to display.
    sybct.min_server_severity = 10
    ; Minimum client message severity to display.
    sybct.min_client_severity = 10
    [dbx]
    ; returned column names can be converted for compatibility reasons
    ; possible values for dbx.colnames_case are
    ; "unchanged" (default, if not set)
    ; "lowercase"
    ; "uppercase"
    ; the recommended default is either upper- or lowercase, but
    ; unchanged is currently set for backwards compatibility
    dbx.colnames_case = "lowercase"
    [bcmath]
    ; Number of decimal digits for all bcmath functions.
    bcmath.scale = 0
    [browscap]
    ;browscap = extra/browscap.ini
    [Informix]
    ; Default host for ifx_connect() (doesn't apply in safe mode).
    ifx.default_host =
    ; Default user for ifx_connect() (doesn't apply in safe mode).
    ifx.default_user =
    ; Default password for ifx_connect() (doesn't apply in safe mode).
    ifx.default_password =
    ; Allow or prevent persistent links.
    ifx.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ifx.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no
    limit.
    ifx.max_links = -1
    ; If on, select statements return the contents of a text blob instead of
    its id.
    ifx.textasvarchar = 0
    ; If on, select statements return the contents of a byte blob instead of
    its id.
    ifx.byteasvarchar = 0
    ; Trailing blanks are stripped from fixed-length char columns. May help
    the
    ; life of Informix SE users.
    ifx.charasvarchar = 0
    ; If on, the contents of text and byte blobs are dumped to a file instead
    of
    ; keeping them in memory.
    ifx.blobinfile = 0
    ; NULL's are returned as empty strings, unless this is set to 1. In that
    case,
    ; NULL's are returned as string 'NULL'.
    ifx.nullformat = 0
    [Session]
    ; Handler used to store/retrieve data.
    session.save_handler = files
    ; Argument passed to save_handler. In the case of files, this is the path
    ; where data files are stored. Note: Windows users have to change this
    ; variable in order to use PHP's session functions.
    ; As of PHP 4.0.1, you can define the path as:
    ; session.save_path = "N;/path"
    ; where N is an integer. Instead of storing all the session files in
    ; /path, what this will do is use subdirectories N-levels deep, and
    ; store the session data in those directories. This is useful if you
    ; or your OS have problems with lots of files in one directory, and is
    ; a more efficient layout for servers that handle lots of sessions.
    ; NOTE 1: PHP will not create this directory structure automatically.
    ; You can use the script in the ext/session dir for that purpose.
    ; NOTE 2: See the section on garbage collection below if you choose to
    ; use subdirectories for session storage
    ; The file storage module creates files using mode 600 by default.
    ; You can change that by using
    ; session.save_path = "N;MODE;/path"
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    ;session.save_path = "/tmp"
    session.save_path = sys:/php5/sessiondata
    ; Whether to use cookies.
    session.use_cookies = 1
    ; This option enables administrators to make their users invulnerable to
    ; attacks which involve passing session ids in URLs; defaults to 0.
    ; session.use_only_cookies = 1
    ; Name of the session (used as cookie name).
    session.name = PHPSESSID
    ; Initialize session on request startup.
    session.auto_start = 0
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0
    ; The path for which the cookie is valid.
    session.cookie_path = /
    ; The domain for which the cookie is valid.
    session.cookie_domain =
    ; Handler used to serialize data. php is the standard serializer of PHP.
    session.serialize_handler = php
    ; Define the probability that the 'garbage collection' process is started
    ; on every session initialization.
    ; The probability is calculated by using gc_probability/gc_divisor,
    ; e.g. 1/100 means there is a 1% chance that the GC process starts
    ; on each request.
    session.gc_probability = 1
    session.gc_divisor = 1000
    ; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 1440
    ; NOTE: If you are using the subdirectory option for storing session files
    ; (see session.save_path above), then garbage collection does *not*
    ; happen automatically. You will need to do your own garbage
    ; collection through a shell script, cron entry, or some other
    method.
    ; For example, the following script would is the equivalent of
    ; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
    ; cd /path/to/sessions; find -cmin +24 | xargs rm
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, albeit
    register_globals
    ; is disabled. PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    session.bug_compat_42 = 0
    session.bug_compat_warn = 0
    ; Check HTTP Referer to invalidate externally stored URLs containing ids.
    ; HTTP_REFERER has to contain this substring for the session to be
    ; considered as valid.
    session.referer_check =
    ; How many bytes to read from the file.
    session.entropy_length = 0
    ; Specified here to create the session id.
    session.entropy_file =
    ;session.entropy_length = 16
    ;session.entropy_file = /dev/urandom
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = nocache
    ; Document expires after n minutes.
    session.cache_expire = 180
    ; trans sid support is disabled by default.
    ; Use of trans sid may risk your users security.
    ; Use this option with caution.
    ; - User may send URL contains active session ID
    ; to other person via. email/irc/etc.
    ; - URL that contains active session ID may be stored
    ; in publically accessible computer.
    ; - User may access your site with the same session ID
    ; always using URL stored in browser's history or bookmarks.
    session.use_trans_sid = 0
    ; Select a hash function
    ; 0: MD5 (128 bits)
    ; 1: SHA-1 (160 bits)
    session.hash_function = 0
    ; Define how many bits are stored in each character when converting
    ; the binary hash data to something readable.
    ; 4 bits: 0-9, a-f
    ; 5 bits: 0-9, a-v
    ; 6 bits: 0-9, a-z, A-Z, "-", ","
    session.hash_bits_per_character = 5
    ; The URL rewriter will look for URLs in a defined set of HTML tags.
    ; form/fieldset are special; if you include them here, the rewriter will
    ; add a hidden <input> field with the info which is otherwise appended
    ; to URLs. If you want XHTML conformity, remove the form entry.
    ; Note that all valid entries require a "=", even if no value follows.
    url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeent ry"
    [MSSQL]
    ; Allow or prevent persistent links.
    mssql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mssql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    mssql.max_links = -1
    ; Minimum error severity to display.
    mssql.min_error_severity = 10
    ; Minimum message severity to display.
    mssql.min_message_severity = 10
    ; Compatability mode with old versions of PHP 3.0.
    mssql.compatability_mode = Off
    ; Connect timeout
    ;mssql.connect_timeout = 5
    ; Query timeout
    ;mssql.timeout = 60
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textlimit = 4096
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textsize = 4096
    ; Limits the number of records in each batch. 0 = all records in one
    batch.
    ;mssql.batchsize = 0
    ; Specify how datetime and datetim4 columns are returned
    ; On => Returns data converted to SQL server settings
    ; Off => Returns values as YYYY-MM-DD hh:mm:ss
    ;mssql.datetimeconvert = On
    ; Use NT authentication when connecting to the server
    mssql.secure_connection = Off
    ; Specify max number of processes. Default = 25
    ;mssql.max_procs = 25
    [Assertion]
    ; Assert(expr); active by default.
    ;assert.active = On
    ; Issue a PHP warning for each failed assertion.
    ;assert.warning = On
    ; Don't bail out by default.
    ;assert.bail = Off
    ; User-function to be called if an assertion fails.
    ;assert.callback = 0
    ; Eval the expression with current error_reporting(). Set to true if you
    want
    ; error_reporting(0) around the eval().
    ;assert.quiet_eval = 0
    [Ingres II]
    ; Allow or prevent persistent links.
    ingres.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ingres.max_persistent = -1
    ; Maximum number of links, including persistents. -1 means no limit.
    ingres.max_links = -1
    ; Default database (format: [node_id::]dbname[/srv_class]).
    ingres.default_database =
    ; Default user.
    ingres.default_user =
    ; Default password.
    ingres.default_password =
    [Verisign Payflow Pro]
    ; Default Payflow Pro server.
    pfpro.defaulthost = "test-payflow.verisign.com"
    ; Default port to connect to.
    pfpro.defaultport = 443
    ; Default timeout in seconds.
    pfpro.defaulttimeout = 30
    ; Default proxy IP address (if required).
    ;pfpro.proxyaddress =
    ; Default proxy port.
    ;pfpro.proxyport =
    ; Default proxy logon.
    ;pfpro.proxylogon =
    ; Default proxy password.
    ;pfpro.proxypassword =
    [Sockets]
    ; Use the system read() function instead of the php_read() wrapper.
    sockets.use_system_read = On
    [com]
    ; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs
    ;com.typelib_file =
    ; allow Distributed-COM calls
    ;com.allow_dcom = true
    ; autoregister constants of a components typlib on com_load()
    ;com.autoregister_typelib = true
    ; register constants casesensitive
    ;com.autoregister_casesensitive = false
    ; show warnings on duplicate constat registrations
    ;com.autoregister_verbose = true
    [LDAP]
    ; Path to a directory which contains SSL certificates to be used for LDAP
    over SSL
    ; Terminate the path with /
    ldap.ssl_cert_dir = "sys:/php5/cert/"
    [mbstring]
    ; language for internal character representation.
    ;mbstring.language = Japanese
    ; internal/script encoding.
    ; Some encoding cannot work as internal encoding.
    ; (e.g. SJIS, BIG5, ISO-2022-*)
    ;mbstring.internal_encoding = EUC-JP
    ; http input encoding.
    ;mbstring.http_input = auto
    ; http output encoding. mb_output_handler must be
    ; registered as output buffer to function
    ;mbstring.http_output = SJIS
    ; enable automatic encoding translation accoding to
    ; mbstring.internal_encoding setting. Input chars are
    ; converted to internal encoding by setting this to On.
    ; Note: Do _not_ use automatic encoding translation for
    ; portable libs/applications.
    ;mbstring.encoding_translation = Off
    ; automatic encoding detection order.
    ; auto means
    ;mbstring.detect_order = auto
    ; substitute_character used when character cannot be converted
    ; one from another
    ;mbstring.substitute_character = none;
    ; overload(replace) single byte functions by mbstring functions.
    ; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
    ; etc. Possible values are 0,1,2,4 or combination of them.
    ; For example, 7 for overload everything.
    ; 0: No overload
    ; 1: Overload mail() function
    ; 2: Overload str*() functions
    ; 4: Overload ereg*() functions
    ;mbstring.func_overload = 0
    [FrontBase]
    ;fbsql.allow_persistent = On
    ;fbsql.autocommit = On
    ;fbsql.default_database =
    ;fbsql.default_database_password =
    ;fbsql.default_host =
    ;fbsql.default_password =
    ;fbsql.default_user = "_SYSTEM"
    ;fbsql.generate_warnings = Off
    ;fbsql.max_connections = 128
    ;fbsql.max_links = 128
    ;fbsql.max_persistent = -1
    ;fbsql.max_results = 128
    ;fbsql.batchSize = 1000
    [exif]
    ; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as
    JIS.
    ; With mbstring support this will automatically be converted into the
    encoding
    ; given by corresponding encode setting. When empty
    mbstring.internal_encoding
    ; is used. For the decode settings you can distinguish between motorola
    and
    ; intel byte order. A decode setting cannot be empty.
    ;exif.encode_unicode = ISO-8859-15
    ;exif.decode_unicode_motorola = UCS-2BE
    ;exif.decode_unicode_intel = UCS-2LE
    ;exif.encode_jis =
    ;exif.decode_jis_motorola = JIS
    ;exif.decode_jis_intel = JIS
    [Tidy]
    ; The path to a default tidy configuration file to use when using tidy
    ;tidy.default_config = /usr/local/lib/php/default.tcfg
    ; Should tidy clean and repair output automatically?
    ; WARNING: Do not use this option if you are generating non-html content
    ; such as dynamic images
    tidy.clean_output = Off
    [soap]
    ; Enables or disables WSDL caching feature.
    soap.wsdl_cache_enabled=1
    ; Sets the directory name where SOAP extension will put cache files.
    soap.wsdl_cache_dir="/tmp"
    ; (time to live) Sets the number of second while cached file will be used
    ; instead of original one.
    soap.wsdl_cache_ttl=86400
    ; Local Variables:
    ; tab-width: 4
    ; End:
    [Imagemagick Extension - Added By GKO - 08.01.05]
    extension=php_imagick.nlm
    Thank you for any insight you can give ... I am not a php person.
    Tony

    Tony,
    It appears that in the past few days you have not received a response to your
    posting. That concerns us, and has triggered this automated reply.
    Has your problem been resolved? If not, you might try one of the following options:
    - Do a search of our knowledgebase at http://support.novell.com/search/kb_index.jsp
    - Check all of the other support tools and options available at
    http://support.novell.com.
    - You could also try posting your message again. Make sure it is posted in the
    correct newsgroup. (http://support.novell.com/forums)
    Be sure to read the forum FAQ about what to expect in the way of responses:
    http://support.novell.com/forums/faq_general.html
    If this is a reply to a duplicate posting, please ignore and accept our apologies
    and rest assured we will issue a stern reprimand to our posting bot.
    Good luck!
    Your Novell Product Support Forums Team
    http://support.novell.com/forums/

  • EntityManager is not null then what can be the problem?findAll not working

    Hello,
    I am just a beginner trying to learn JPA. I successfully added record to database but when i tried to display it it throws me null pointer exception. This is the code
    index.xhtml
    <?xml version='1.0' encoding='UTF-8' ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core">
        <h:head>
            <title>Facelet Title</title>
        </h:head>
        <h:body>
            <h:form>
                <h:outputLabel value="Username :"/>
                <h:inputText value="#{IndexManagedBean.userName}"/> <br />
                <h:outputLabel value="Password :"/>
                <h:inputText value="#{IndexManagedBean.password}"/> <br />
                <h:outputLabel value="Birthdate :"/>
                <h:inputText value="#{IndexManagedBean.birthdate}">
                    <f:convertDateTime dateStyle="medium" type="date"/>
                </h:inputText> <br />
                <h:commandButton value="Add User" actionListener="#{IndexManagedBean.addUser}"/>
                <br />
                <br/>
            </h:form>
        </h:body>
    </html>Users.java My Entity bean
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    package BusinessFacade;
    import java.io.Serializable;
    import java.util.Date;
    import javax.persistence.Basic;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.NamedQueries;
    import javax.persistence.NamedQuery;
    import javax.persistence.Table;
    import javax.persistence.Temporal;
    import javax.persistence.TemporalType;
    @Entity
    @Table(name = "tblusers", catalog = "ssms", schema = "")
    @NamedQueries({
        @NamedQuery(name = "Users.findAll", query = "SELECT u FROM Users u"),
        @NamedQuery(name = "Users.findByUserId", query = "SELECT u FROM Users u WHERE u.userId = :userId"),
        @NamedQuery(name = "Users.findByUserName", query = "SELECT u FROM Users u WHERE u.userName = :userName"),
        @NamedQuery(name = "Users.findByPassword", query = "SELECT u FROM Users u WHERE u.password = :password"),
        @NamedQuery(name = "Users.findByLastLoginDateTime", query = "SELECT u FROM Users u WHERE u.lastLoginDateTime = :lastLoginDateTime"),
        @NamedQuery(name = "Users.findByBirthdate", query = "SELECT u FROM Users u WHERE u.birthdate = :birthdate")})
    public class Users implements Serializable {
        private static final long serialVersionUID = 1L;
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Basic(optional = false)
        @Column(name = "UserId", nullable = false)
        private Integer userId;
        @Basic(optional = false)
        @Column(name = "UserName", nullable = false, length = 50)
        private String userName;
        @Basic(optional = false)
        @Column(name = "Password", nullable = false, length = 50)
        private String password;
        @Basic(optional = false)
        @Column(name = "LastLoginDateTime", nullable = false)
        @Temporal(TemporalType.TIMESTAMP)
        private Date lastLoginDateTime;
        @Column(name = "Birthdate")
        @Temporal(TemporalType.TIMESTAMP)
        private Date birthdate;
        public Users() {
        public Users(Integer userId) {
            this.userId = userId;
        public Users(String userName, String password, Date birthDate) {
            this.userName = userName;
            this.password = password;
            this.lastLoginDateTime = new Date();
            this.birthdate = birthDate;
        public Integer getUserId() {
            return userId;
        public void setUserId(Integer userId) {
            this.userId = userId;
        public String getUserName() {
            return userName;
        public void setUserName(String userName) {
            this.userName = userName;
        public String getPassword() {
            return password;
        public void setPassword(String password) {
            this.password = password;
        public Date getLastLoginDateTime() {
            return lastLoginDateTime;
        public void setLastLoginDateTime(Date lastLoginDateTime) {
            this.lastLoginDateTime = lastLoginDateTime;
        public Date getBirthdate() {
            return birthdate;
        public void setBirthdate(Date birthdate) {
            this.birthdate = birthdate;
        @Override
        public int hashCode() {
            int hash = 0;
            hash += (userId != null ? userId.hashCode() : 0);
            return hash;
        @Override
        public boolean equals(Object object) {
            // TODO: Warning - this method won't work in the case the id fields are not set
            if (!(object instanceof Users)) {
                return false;
            Users other = (Users) object;
            if ((this.userId == null && other.userId != null) || (this.userId != null && !this.userId.equals(other.userId))) {
                return false;
            return true;
        @Override
        public String toString() {
            return "BusinessFacade.Users[userId=" + userId + "]";
    }UsersFacade.java my Stateless session bean
    package BusinessFacade;
    import java.util.List;
    import javax.ejb.Stateless;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
    import javax.persistence.Query;
    import javax.persistence.criteria.CriteriaQuery;
    import javax.persistence.criteria.Root;
    @Stateless
    public class UsersFacade {
        @PersistenceContext(unitName = "FirstJpaExamplePU")
        private EntityManager em;
        public void create(Users users) {
            em.persist(users);
        public void edit(Users users) {
            em.merge(users);
        public void remove(Users users) {
            em.remove(em.merge(users));
        public Users find(Object id) {
            return em.find(Users.class, id);
        public List<Users> findAll() {
            return em.createNamedQuery("Users.findAll").getResultList();
        public List<Users> findRange(int[] range) {
            CriteriaQuery cq = em.getCriteriaBuilder().createQuery();
            cq.select(cq.from(Users.class));
            Query q = em.createQuery(cq);
            q.setMaxResults(range[1] - range[0]);
            q.setFirstResult(range[0]);
            return q.getResultList();
        public int count() {
            CriteriaQuery cq = em.getCriteriaBuilder().createQuery();
            Root<Users> rt = cq.from(Users.class);
            cq.select(em.getCriteriaBuilder().count(rt));
            Query q = em.createQuery(cq);
            return ((Long) q.getSingleResult()).intValue();
    }If entitymanager is null then even create should not work, but here findall is not working, create is working perfect!

    oops, sorry about that!
    here is stack trace :
    com.sun.faces.mgbean.ManagedBeanCreationException: Cant instantiate class: IndexManagedBean.
         at com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:193)
         at com.sun.faces.mgbean.BeanBuilder.build(BeanBuilder.java:102)
         at com.sun.faces.mgbean.BeanManager.createAndPush(BeanManager.java:405)
         at com.sun.faces.mgbean.BeanManager.create(BeanManager.java:267)
         at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:86)
         at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175)
         at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)
         at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:99)
         at com.sun.el.parser.AstValue.getValue(AstValue.java:158)
         at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)
         at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:102)
         at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:190)
         at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:178)
         at javax.faces.component.UIOutput.getValue(UIOutput.java:168)
         at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:338)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
         at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:878)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1620)
         at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
         at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:848)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1613)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1616)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1616)
         at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:380)
         at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:126)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:127)
         at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
         at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
         at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
         at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:332)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:233)
         at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
         at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
         at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
         at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
         at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
         at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
         at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
         at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
         at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
         at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
         at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
         at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
         at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
         at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: java.lang.NullPointerException
         at BusinessFacade.UsersFacade.findAll(UsersFacade.java:47)
         at IndexManagedBean.<init>(IndexManagedBean.java:23)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
         at java.lang.Class.newInstance0(Class.java:355)
         at java.lang.Class.newInstance(Class.java:308)
         at com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:188)
         ... 53 moreEventually, i found out the EntityManager is null! But how can it be null. I created a persistence context and gave it proper name in code. Then how it be null?

  • [SOLVED] SQLite not working with PHP

    For reasons unknown, I cannot get PHP to work properly with SQLite. I have uncommented the "extension=sqlite.so" in /etc/php/php.ini, ensured that PHP's configuration was being loaded from said file, and made sure PHP was working fine with my server of choice (lighttpd). Unfortunately, it doesn't seem to work, as evidenced by
    Fatal error: Call to undefined function sqlite_open() in test.php on line x
    Which is what PHP spits at me. I've checked lighty's logs and nothing's wrong. PHP's set to send to syslog, so I'm not sure where I could check on that. Here is a quick look at PHP's setup.
    My /etc/php/php.ini:
    [PHP]
    ; About php.ini ;
    ; This file controls many aspects of PHP's behavior. In order for PHP to
    ; read it, it must be named 'php.ini'. PHP looks for it in the current
    ; working directory, in the path designated by the environment variable
    ; PHPRC, and in the path that was defined in compile time (in that order).
    ; The path in which the php.ini file is looked for can be overridden using
    ; the -c argument in command line mode.
    ; The syntax of the file is extremely simple. Whitespace and Lines
    ; beginning with a semicolon are silently ignored (as you probably guessed).
    ; Section headers (e.g. [Foo]) are also silently ignored, even though
    ; they might mean something in the future.
    ; Directives are specified using the following syntax:
    ; directive = value
    ; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
    ; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one
    ; of the INI constants (On, Off, True, False, Yes, No and None) or an expression
    ; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo").
    ; Expressions in the INI file are limited to bitwise operators and parentheses:
    ; | bitwise OR
    ; & bitwise AND
    ; ~ bitwise NOT
    ; ! boolean NOT
    ; Boolean flags can be turned on using the values 1, On, True or Yes.
    ; They can be turned off using the values 0, Off, False or No.
    ; An empty string can be denoted by simply not writing anything after the equal
    ; sign, or by using the None keyword:
    ; foo = ; sets foo to an empty string
    ; foo = none ; sets foo to an empty string
    ; foo = "none" ; sets foo to the string 'none'
    ; If you use constants in your value, and these constants belong to a
    ; dynamically loaded extension (either a PHP extension or a Zend extension),
    ; you may only use these constants *after* the line that loads the extension.
    ; About this file ;
    ; This is the recommended, PHP 5-style version of the php.ini-dist file. It
    ; sets some non standard settings, that make PHP more efficient, more secure,
    ; and encourage cleaner coding.
    ; The price is that with these settings, PHP may be incompatible with some
    ; applications, and sometimes, more difficult to develop with. Using this
    ; file is warmly recommended for production sites. As all of the changes from
    ; the standard settings are thoroughly documented, you can go over each one,
    ; and decide whether you want to use it or not.
    ; For general information about the php.ini file, please consult the php.ini-dist
    ; file, included in your PHP distribution.
    ; This file is different from the php.ini-dist file in the fact that it features
    ; different values for several directives, in order to improve performance, while
    ; possibly breaking compatibility with the standard out-of-the-box behavior of
    ; PHP. Please make sure you read what's different, and modify your scripts
    ; accordingly, if you decide to use this file instead.
    ; - register_long_arrays = Off [Performance]
    ; Disables registration of the older (and deprecated) long predefined array
    ; variables ($HTTP_*_VARS). Instead, use the superglobals that were
    ; introduced in PHP 4.1.0
    ; - display_errors = Off [Security]
    ; With this directive set to off, errors that occur during the execution of
    ; scripts will no longer be displayed as a part of the script output, and thus,
    ; will no longer be exposed to remote users. With some errors, the error message
    ; content may expose information about your script, web server, or database
    ; server that may be exploitable for hacking. Production sites should have this
    ; directive set to off.
    ; - log_errors = On [Security]
    ; This directive complements the above one. Any errors that occur during the
    ; execution of your script will be logged (typically, to your server's error log,
    ; but can be configured in several ways). Along with setting display_errors to off,
    ; this setup gives you the ability to fully understand what may have gone wrong,
    ; without exposing any sensitive information to remote users.
    ; - output_buffering = 4096 [Performance]
    ; Set a 4KB output buffer. Enabling output buffering typically results in less
    ; writes, and sometimes less packets sent on the wire, which can often lead to
    ; better performance. The gain this directive actually yields greatly depends
    ; on which Web server you're working with, and what kind of scripts you're using.
    ; - register_argc_argv = Off [Performance]
    ; Disables registration of the somewhat redundant $argv and $argc global
    ; variables.
    ; - magic_quotes_gpc = Off [Performance]
    ; Input data is no longer escaped with slashes so that it can be sent into
    ; SQL databases without further manipulation. Instead, you should use the
    ; database vendor specific escape string function on each input element you
    ; wish to send to a database.
    ; - variables_order = "GPCS" [Performance]
    ; The environment variables are not hashed into the $_ENV. To access
    ; environment variables, you can use getenv() instead.
    ; - error_reporting = E_ALL [Code Cleanliness, Security(?)]
    ; By default, PHP suppresses errors of type E_NOTICE. These error messages
    ; are emitted for non-critical errors, but that could be a symptom of a bigger
    ; problem. Most notably, this will cause error messages about the use
    ; of uninitialized variables to be displayed.
    ; - allow_call_time_pass_reference = Off [Code cleanliness]
    ; It's not possible to decide to force a variable to be passed by reference
    ; when calling a function. The PHP 4 style to do this is by making the
    ; function require the relevant argument by reference.
    ; - short_open_tag = Off [Portability]
    ; Using short tags is discouraged when developing code meant for redistribution
    ; since short tags may not be supported on the target server.
    ; Language Options ;
    ; Enable the PHP scripting language engine under Apache.
    engine = On
    ; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
    zend.ze1_compatibility_mode = Off
    ; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized.
    ; NOTE: Using short tags should be avoided when developing applications or
    ; libraries that are meant for redistribution, or deployment on PHP
    ; servers which are not under your control, because short tags may not
    ; be supported on the target server. For portable, redistributable code,
    ; be sure not to use short tags.
    short_open_tag = Off
    ; Allow ASP-style <% %> tags.
    asp_tags = Off
    ; The number of significant digits displayed in floating point numbers.
    precision = 14
    ; Enforce year 2000 compliance (will cause problems with non-compliant browsers)
    y2k_compliance = On
    ; Output buffering allows you to send header lines (including cookies) even
    ; after you send body content, at the price of slowing PHP's output layer a
    ; bit. You can enable output buffering during runtime by calling the output
    ; buffering functions. You can also enable output buffering for all files by
    ; setting this directive to On. If you wish to limit the size of the buffer
    ; to a certain size - you can use a maximum number of bytes instead of 'On', as
    ; a value for this directive (e.g., output_buffering=4096).
    output_buffering = 4096
    ; You can redirect all of the output of your scripts to a function. For
    ; example, if you set output_handler to "mb_output_handler", character
    ; encoding will be transparently converted to the specified encoding.
    ; Setting any output handler automatically turns on output buffering.
    ; Note: People who wrote portable scripts should not depend on this ini
    ; directive. Instead, explicitly set the output handler using ob_start().
    ; Using this ini directive may cause problems unless you know what script
    ; is doing.
    ; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler"
    ; and you cannot use both "ob_gzhandler" and "zlib.output_compression".
    ; Note: output_handler must be empty if this is set 'On' !!!!
    ; Instead you must use zlib.output_handler.
    ;output_handler =
    ; Transparent output compression using the zlib library
    ; Valid values for this option are 'off', 'on', or a specific buffer size
    ; to be used for compression (default is 4KB)
    ; Note: Resulting chunk size may vary due to nature of compression. PHP
    ; outputs chunks that are few hundreds bytes each as a result of
    ; compression. If you prefer a larger chunk size for better
    ; performance, enable output_buffering in addition.
    ; Note: You need to use zlib.output_handler instead of the standard
    ; output_handler, or otherwise the output will be corrupted.
    zlib.output_compression = Off
    ;zlib.output_compression_level = -1
    ; You cannot specify additional output handlers if zlib.output_compression
    ; is activated here. This setting does the same as output_handler but in
    ; a different order.
    ;zlib.output_handler =
    ; Implicit flush tells PHP to tell the output layer to flush itself
    ; automatically after every output block. This is equivalent to calling the
    ; PHP function flush() after each and every call to print() or echo() and each
    ; and every HTML block. Turning this option on has serious performance
    ; implications and is generally recommended for debugging purposes only.
    implicit_flush = Off
    ; The unserialize callback function will be called (with the undefined class'
    ; name as parameter), if the unserializer finds an undefined class
    ; which should be instantiated.
    ; A warning appears if the specified function is not defined, or if the
    ; function doesn't include/implement the missing class.
    ; So only set this entry, if you really want to implement such a
    ; callback-function.
    unserialize_callback_func=
    ; When floats & doubles are serialized store serialize_precision significant
    ; digits after the floating point. The default value ensures that when floats
    ; are decoded with unserialize, the data will remain the same.
    serialize_precision = 100
    ; Whether to enable the ability to force arguments to be passed by reference
    ; at function call time. This method is deprecated and is likely to be
    ; unsupported in future versions of PHP/Zend. The encouraged method of
    ; specifying which arguments should be passed by reference is in the function
    ; declaration. You're encouraged to try and turn this option Off and make
    ; sure your scripts work properly with it in order to ensure they will work
    ; with future versions of the language (you will receive a warning each time
    ; you use this feature, and the argument will be passed by value instead of by
    ; reference).
    allow_call_time_pass_reference = Off
    ; Safe Mode
    safe_mode = Off
    ; By default, Safe Mode does a UID compare check when
    ; opening files. If you want to relax this to a GID compare,
    ; then turn on safe_mode_gid.
    safe_mode_gid = Off
    ; When safe_mode is on, UID/GID checks are bypassed when
    ; including files from this directory and its subdirectories.
    ; (directory must also be in include_path or full path must
    ; be used when including)
    safe_mode_include_dir =
    ; When safe_mode is on, only executables located in the safe_mode_exec_dir
    ; will be allowed to be executed via the exec family of functions.
    safe_mode_exec_dir =
    ; Setting certain environment variables may be a potential security breach.
    ; This directive contains a comma-delimited list of prefixes. In Safe Mode,
    ; the user may only alter environment variables whose names begin with the
    ; prefixes supplied here. By default, users will only be able to set
    ; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
    ; Note: If this directive is empty, PHP will let the user modify ANY
    ; environment variable!
    safe_mode_allowed_env_vars = PHP_
    ; This directive contains a comma-delimited list of environment variables that
    ; the end user won't be able to change using putenv(). These variables will be
    ; protected even if safe_mode_allowed_env_vars is set to allow to change them.
    safe_mode_protected_env_vars = LD_LIBRARY_PATH
    ; open_basedir, if set, limits all file operations to the defined directory
    ; and below. This directive makes most sense if used in a per-directory
    ; or per-virtualhost web server configuration file. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/
    ; This directive allows you to disable certain functions for security reasons.
    ; It receives a comma-delimited list of function names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_functions =
    ; This directive allows you to disable certain classes for security reasons.
    ; It receives a comma-delimited list of class names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_classes =
    ; Colors for Syntax Highlighting mode. Anything that's acceptable in
    ; <span style="color: ???????"> would work.
    ;highlight.string = #DD0000
    ;highlight.comment = #FF9900
    ;highlight.keyword = #007700
    ;highlight.bg = #FFFFFF
    ;highlight.default = #0000BB
    ;highlight.html = #000000
    ; If enabled, the request will be allowed to complete even if the user aborts
    ; the request. Consider enabling it if executing long request, which may end up
    ; being interrupted by the user or a browser timing out.
    ; ignore_user_abort = On
    ; Determines the size of the realpath cache to be used by PHP. This value should
    ; be increased on systems where PHP opens many files to reflect the quantity of
    ; the file operations performed.
    ; realpath_cache_size=16k
    ; Duration of time, in seconds for which to cache realpath information for a given
    ; file or directory. For systems with rarely changing files, consider increasing this
    ; value.
    ; realpath_cache_ttl=120
    ; Misc
    ; Decides whether PHP may expose the fact that it is installed on the server
    ; (e.g. by adding its signature to the Web server header). It is no security
    ; threat in any way, but it makes it possible to determine whether you use PHP
    ; on your server or not.
    expose_php = Off
    ; Resource Limits ;
    max_execution_time = 30 ; Maximum execution time of each script, in seconds
    max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
    ;max_input_nesting_level = 64 ; Maximum input variable nesting level
    memory_limit = 32M ; Maximum amount of memory a script may consume (32MB)
    ; Error handling and logging ;
    ; error_reporting is a bit-field. Or each number up to get desired error
    ; reporting level
    ; E_ALL - All errors and warnings (doesn't include E_STRICT)
    ; E_ERROR - fatal run-time errors
    ; E_RECOVERABLE_ERROR - almost fatal run-time errors
    ; E_WARNING - run-time warnings (non-fatal errors)
    ; E_PARSE - compile-time parse errors
    ; E_NOTICE - run-time notices (these are warnings which often result
    ; from a bug in your code, but it's possible that it was
    ; intentional (e.g., using an uninitialized variable and
    ; relying on the fact it's automatically initialized to an
    ; empty string)
    ; E_STRICT - run-time notices, enable to have PHP suggest changes
    ; to your code which will ensure the best interoperability
    ; and forward compatibility of your code
    ; E_CORE_ERROR - fatal errors that occur during PHP's initial startup
    ; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's
    ; initial startup
    ; E_COMPILE_ERROR - fatal compile-time errors
    ; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
    ; E_USER_ERROR - user-generated error message
    ; E_USER_WARNING - user-generated warning message
    ; E_USER_NOTICE - user-generated notice message
    ; Examples:
    ; - Show all errors, except for notices and coding standards warnings
    ;error_reporting = E_ALL & ~E_NOTICE
    ; - Show all errors, except for notices
    ;error_reporting = E_ALL & ~E_NOTICE | E_STRICT
    ; - Show only errors
    ;error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
    ; - Show all errors, except coding standards warnings
    error_reporting = E_ALL
    ; Print out errors (as a part of the output). For production web sites,
    ; you're strongly encouraged to turn this feature off, and use error logging
    ; instead (see below). Keeping display_errors enabled on a production web site
    ; may reveal security information to end users, such as file paths on your Web
    ; server, your database schema or other information.
    ; possible values for display_errors:
    ; Off - Do not display any errors
    ; stderr - Display errors to STDERR (affects only CGI/CLI binaries!)
    ; On or stdout - Display errors to STDOUT (default)
    ; To output errors to STDERR with CGI/CLI:
    ;display_errors = "stderr"
    ; Default
    display_errors = On
    ; Even when display_errors is on, errors that occur during PHP's startup
    ; sequence are not displayed. It's strongly recommended to keep
    ; display_startup_errors off, except for when debugging.
    display_startup_errors = Off
    ; Log errors into a log file (server-specific log, stderr, or error_log (below))
    ; As stated above, you're strongly advised to use error logging in place of
    ; error displaying on production web sites.
    log_errors = On
    ; Set maximum length of log_errors. In error_log information about the source is
    ; added. The default is 1024 and 0 allows to not apply any maximum length at all.
    log_errors_max_len = 1024
    ; Do not log repeated messages. Repeated errors must occur in same file on same
    ; line unless ignore_repeated_source is set true.
    ignore_repeated_errors = Off
    ; Ignore source of message when ignoring repeated messages. When this setting
    ; is On you will not log errors with repeated messages from different files or
    ; source lines.
    ignore_repeated_source = Off
    ; If this parameter is set to Off, then memory leaks will not be shown (on
    ; stdout or in the log). This has only effect in a debug compile, and if
    ; error reporting includes E_WARNING in the allowed list
    report_memleaks = Off
    ;report_zend_debug = 0
    ; Store the last error/warning message in $php_errormsg (boolean).
    track_errors = Off
    ; Turn off normal error reporting and emit XML-RPC error XML
    ;xmlrpc_errors = 0
    ; An XML-RPC faultCode
    ;xmlrpc_error_number = 0
    ; Disable the inclusion of HTML tags in error messages.
    ; Note: Never use this feature for production boxes.
    ;html_errors = Off
    ; If html_errors is set On PHP produces clickable error messages that direct
    ; to a page describing the error or function causing the error in detail.
    ; You can download a copy of the PHP manual from http://www.php.net/docs.php
    ; and change docref_root to the base URL of your local copy including the
    ; leading '/'. You must also specify the file extension being used including
    ; the dot.
    ; Note: Never use this feature for production boxes.
    ;docref_root = "/phpmanual/"
    ;docref_ext = .html
    ; String to output before an error message.
    ;error_prepend_string = "<font color=#ff0000>"
    ; String to output after an error message.
    ;error_append_string = "</font>"
    ; Log errors to specified file.
    ;error_log = filename
    ; Log errors to syslog.
    error_log = syslog
    ; Data Handling ;
    ; Note - track_vars is ALWAYS enabled as of PHP 4.0.3
    ; The separator used in PHP generated URLs to separate arguments.
    ; Default is "&".
    ;arg_separator.output = "&"
    ; List of separator(s) used by PHP to parse input URLs into variables.
    ; Default is "&".
    ; NOTE: Every character in this directive is considered as separator!
    ;arg_separator.input = ";&"
    ; This directive describes the order in which PHP registers GET, POST, Cookie,
    ; Environment and Built-in variables (G, P, C, E & S respectively, often
    ; referred to as EGPCS or GPC). Registration is done from left to right, newer
    ; values override older values.
    variables_order = "GPCS"
    ; Whether or not to register the EGPCS variables as global variables. You may
    ; want to turn this off if you don't want to clutter your scripts' global scope
    ; with user data. This makes most sense when coupled with track_vars - in which
    ; case you can access all of the GPC variables through the $HTTP_*_VARS[],
    ; variables.
    ; You should do your best to write your scripts so that they do not require
    ; register_globals to be on; Using form variables as globals can easily lead
    ; to possible security problems, if the code is not very well thought of.
    register_globals = Off
    ; Whether or not to register the old-style input arrays, HTTP_GET_VARS
    ; and friends. If you're not using them, it's recommended to turn them off,
    ; for performance reasons.
    register_long_arrays = Off
    ; This directive tells PHP whether to declare the argv&argc variables (that
    ; would contain the GET information). If you don't use these variables, you
    ; should turn it off for increased performance.
    register_argc_argv = Off
    ; When enabled, the SERVER and ENV variables are created when they're first
    ; used (Just In Time) instead of when the script starts. If these variables
    ; are not used within a script, having this directive on will result in a
    ; performance gain. The PHP directives register_globals, register_long_arrays,
    ; and register_argc_argv must be disabled for this directive to have any affect.
    auto_globals_jit = On
    ; Maximum size of POST data that PHP will accept.
    post_max_size = 8M
    ; Magic quotes
    ; Magic quotes for incoming GET/POST/Cookie data.
    magic_quotes_gpc = Off
    ; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
    magic_quotes_runtime = Off
    ; Use Sybase-style magic quotes (escape ' with '' instead of \').
    magic_quotes_sybase = Off
    ; Automatically add files before or after any PHP document.
    auto_prepend_file =
    auto_append_file =
    ; As of 4.0b4, PHP always outputs a character encoding by default in
    ; the Content-type: header. To disable sending of the charset, simply
    ; set it to be empty.
    ; PHP's built-in default is text/html
    default_mimetype = "text/html"
    default_charset = "utf-8"
    ; Always populate the $HTTP_RAW_POST_DATA variable.
    ;always_populate_raw_post_data = On
    ; Paths and Directories ;
    ; UNIX: "/path1:/path2"
    include_path = ".:/usr/share/pear"
    ; The root of the PHP pages, used only if nonempty.
    ; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root
    ; if you are running php as a CGI under any web server (other than IIS)
    ; see documentation for security issues. The alternate is to use the
    ; cgi.force_redirect configuration below
    doc_root =
    ; The directory under which PHP opens the script using /~username used only
    ; if nonempty.
    user_dir =
    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = "/usr/lib/php/20060613/"
    ; Whether or not to enable the dl() function. The dl() function does NOT work
    ; properly in multithreaded servers, such as IIS or Zeus, and is automatically
    ; disabled on them.
    enable_dl = Off
    ; cgi.force_redirect is necessary to provide security running PHP as a CGI under
    ; most web servers. Left undefined, PHP turns this on by default. You can
    ; turn it off here AT YOUR OWN RISK
    ; **You CAN safely turn this off for IIS, in fact, you MUST.**
    ; cgi.force_redirect = 1
    ; if cgi.nph is enabled it will force cgi to always sent Status: 200 with
    ; every request.
    ; cgi.nph = 1
    ; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape
    ; (iPlanet) web servers, you MAY need to set an environment variable name that PHP
    ; will look for to know it is OK to continue execution. Setting this variable MAY
    ; cause security issues, KNOW WHAT YOU ARE DOING FIRST.
    ; cgi.redirect_status_env = ;
    ; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
    ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
    ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
    ; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting
    ; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
    ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
    cgi.fix_pathinfo=1
    ; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate
    ; security tokens of the calling client. This allows IIS to define the
    ; security context that the request runs under. mod_fastcgi under Apache
    ; does not currently support this feature (03/17/2002)
    ; Set to 1 if running under IIS. Default is zero.
    ; fastcgi.impersonate = 1;
    ; Disable logging through FastCGI connection
    ; fastcgi.logging = 0
    ; cgi.rfc2616_headers configuration option tells PHP what type of headers to
    ; use when sending HTTP response code. If it's set 0 PHP sends Status: header that
    ; is supported by Apache. When this option is set to 1 PHP will send
    ; RFC2616 compliant header.
    ; Default is zero.
    ;cgi.rfc2616_headers = 0
    ; File Uploads ;
    ; Whether to allow HTTP file uploads.
    file_uploads = On
    ; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    ;upload_tmp_dir =
    ; Maximum allowed size for uploaded files.
    upload_max_filesize = 2M
    ; Fopen wrappers ;
    ; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
    allow_url_fopen = Off
    ; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
    allow_url_include = Off
    ; Define the anonymous ftp password (your email address)
    ;from="[email protected]"
    ; Define the User-Agent string
    ; user_agent="PHP"
    ; Default timeout for socket based streams (seconds)
    default_socket_timeout = 60
    ; Dynamic Extensions ;
    ; If you wish to have an extension loaded automatically, use the following
    ; syntax:
    ; extension=modulename.extension
    ; For example, under UNIX:
    ; extension=msql.so
    ; Note that it should be the name of the module only; no directory information
    ; needs to go here. Specify the location of the extension with the
    ; extension_dir directive above.
    ; Module Settings ;
    [Date]
    ; Defines the default timezone used by the date functions
    ;date.timezone =
    ;date.default_latitude = 31.7667
    ;date.default_longitude = 35.2333
    ;date.sunrise_zenith = 90.583333
    ;date.sunset_zenith = 90.583333
    [filter]
    ;filter.default = unsafe_raw
    ;filter.default_flags =
    [iconv]
    ;iconv.input_encoding = ISO-8859-1
    ;iconv.internal_encoding = ISO-8859-1
    ;iconv.output_encoding = ISO-8859-1
    [sqlite]
    sqlite.assoc_case = 1
    [Pcre]
    ;PCRE library backtracking limit.
    ;pcre.backtrack_limit=100000
    ;PCRE library recursion limit.
    ;Please note that if you set this value to a high number you may consume all
    ;the available process stack and eventually crash PHP (due to reaching the
    ;stack size limit imposed by the Operating System).
    ;pcre.recursion_limit=100000
    [Syslog]
    ; Whether or not to define the various syslog variables (e.g. $LOG_PID,
    ; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In
    ; runtime, you can define these variables by calling define_syslog_variables().
    define_syslog_variables = Off
    [mail function]
    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    ;sendmail_path =
    ; Force the addition of the specified parameters to be passed as extra parameters
    ; to the sendmail binary. These parameters will always replace the value of
    ; the 5th parameter to mail(), even in safe mode.
    ;mail.force_extra_parameters =
    [SQL]
    sql.safe_mode = Off
    [ODBC]
    ;odbc.default_db = Not yet implemented
    ;odbc.default_user = Not yet implemented
    ;odbc.default_pw = Not yet implemented
    ; Allow or prevent persistent links.
    odbc.allow_persistent = On
    ; Check that a connection is still valid before reuse.
    odbc.check_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    odbc.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    odbc.max_links = -1
    ; Handling of LONG fields. Returns number of bytes to variables. 0 means
    ; passthru.
    odbc.defaultlrl = 4096
    ; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char.
    ; See the documentation on odbc_binmode and odbc_longreadlen for an explanation
    ; of uodbc.defaultlrl and uodbc.defaultbinmode
    odbc.defaultbinmode = 1
    [MySQL]
    ; Allow or prevent persistent links.
    mysql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mysql.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    mysql.max_links = -1
    ; Default port number for mysql_connect(). If unset, mysql_connect() will use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order).
    mysql.default_port =
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    mysql.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysql.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysql.default_user =
    ; Default password for mysql_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password")
    ; and reveal this password! And of course, any users with read access to this
    ; file will be able to reveal the password as well.
    mysql.default_password =
    ; Maximum time (in seconds) for connect timeout. -1 means no limit
    mysql.connect_timeout = 60
    ; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
    ; SQL-Errors will be displayed.
    mysql.trace_mode = Off
    [MySQLi]
    ; Maximum number of links. -1 means no limit.
    mysqli.max_links = -1
    ; Default port number for mysqli_connect(). If unset, mysqli_connect() will use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order).
    mysqli.default_port = 3306
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    mysqli.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_user =
    ; Default password for mysqli_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw")
    ; and reveal this password! And of course, any users with read access to this
    ; file will be able to reveal the password as well.
    mysqli.default_pw =
    ; Allow or prevent reconnect
    mysqli.reconnect = Off
    [mSQL]
    ; Allow or prevent persistent links.
    msql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    msql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    msql.max_links = -1
    [OCI8]
    ; enables privileged connections using external credentials (OCI_SYSOPER, OCI_SYSDBA)
    ;oci8.privileged_connect = Off
    ; Connection: The maximum number of persistent OCI8 connections per
    ; process. Using -1 means no limit.
    ;oci8.max_persistent = -1
    ; Connection: The maximum number of seconds a process is allowed to
    ; maintain an idle persistent connection. Using -1 means idle
    ; persistent connections will be maintained forever.
    ;oci8.persistent_timeout = -1
    ; Connection: The number of seconds that must pass before issuing a
    ; ping during oci_pconnect() to check the connection validity. When
    ; set to 0, each oci_pconnect() will cause a ping. Using -1 disables
    ; pings completely.
    ;oci8.ping_interval = 60
    ; Tuning: This option enables statement caching, and specifies how
    ; many statements to cache. Using 0 disables statement caching.
    ;oci8.statement_cache_size = 20
    ; Tuning: Enables statement prefetching and sets the default number of
    ; rows that will be fetched automatically after statement execution.
    ;oci8.default_prefetch = 10
    ; Compatibility. Using On means oci_close() will not close
    ; oci_connect() and oci_new_connect() connections.
    ;oci8.old_oci_close_semantics = Off
    [PostgresSQL]
    ; Allow or prevent persistent links.
    pgsql.allow_persistent = On
    ; Detect broken persistent links always with pg_pconnect().
    ; Auto reset feature requires a little overheads.
    pgsql.auto_reset_persistent = Off
    ; Maximum number of persistent links. -1 means no limit.
    pgsql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    pgsql.max_links = -1
    ; Ignore PostgreSQL backends Notice message or not.
    ; Notice message logging require a little overheads.
    pgsql.ignore_notice = 0
    ; Log PostgreSQL backends Notice message or not.
    ; Unless pgsql.ignore_notice=0, module cannot log notice message.
    pgsql.log_notice = 0
    [Sybase]
    ; Allow or prevent persistent links.
    sybase.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybase.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    sybase.max_links = -1
    ;sybase.interface_file = "/usr/sybase/interfaces"
    ; Minimum error severity to display.
    sybase.min_error_severity = 10
    ; Minimum message severity to display.
    sybase.min_message_severity = 10
    ; Compatibility mode with old versions of PHP 3.0.
    ; If on, this will cause PHP to automatically assign types to results according
    ; to their Sybase type, instead of treating them all as strings. This
    ; compatibility mode will probably not stay around forever, so try applying
    ; whatever necessary changes to your code, and turn it off.
    sybase.compatability_mode = Off
    [Sybase-CT]
    ; Allow or prevent persistent links.
    sybct.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybct.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    sybct.max_links = -1
    ; Minimum server message severity to display.
    sybct.min_server_severity = 10
    ; Minimum client message severity to display.
    sybct.min_client_severity = 10
    [bcmath]
    ; Number of decimal digits for all bcmath functions.
    bcmath.scale = 0
    [browscap]
    ;browscap = extra/browscap.ini
    [Informix]
    ; Default host for ifx_connect() (doesn't apply in safe mode).
    ifx.default_host =
    ; Default user for ifx_connect() (doesn't apply in safe mode).
    ifx.default_user =
    ; Default password for ifx_connect() (doesn't apply in safe mode).
    ifx.default_password =
    ; Allow or prevent persistent links.
    ifx.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ifx.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ifx.max_links = -1
    ; If on, select statements return the contents of a text blob instead of its id.
    ifx.textasvarchar = 0
    ; If on, select statements return the contents of a byte blob instead of its id.
    ifx.byteasvarchar = 0
    ; Trailing blanks are stripped from fixed-length char columns. May help the
    ; life of Informix SE users.
    ifx.charasvarchar = 0
    ; If on, the contents of text and byte blobs are dumped to a file instead of
    ; keeping them in memory.
    ifx.blobinfile = 0
    ; NULL's are returned as empty strings, unless this is set to 1. In that case,
    ; NULL's are returned as string 'NULL'.
    ifx.nullformat = 0
    [Session]
    ; Handler used to store/retrieve data.
    session.save_handler = files
    ; Argument passed to save_handler. In the case of files, this is the path
    ; where data files are stored.
    ; As of PHP 4.0.1, you can define the path as:
    ; session.save_path = "N;/path"
    ; where N is an integer. Instead of storing all the session files in
    ; /path, what this will do is use subdirectories N-levels deep, and
    ; store the session data in those directories. This is useful if you
    ; or your OS have problems with lots of files in one directory, and is
    ; a more efficient layout for servers that handle lots of sessions.
    ; NOTE 1: PHP will not create this directory structure automatically.
    ; You can use the script in the ext/session dir for that purpose.
    ; NOTE 2: See the section on garbage collection below if you choose to
    ; use subdirectories for session storage
    ; The file storage module creates files using mode 600 by default.
    ; You can change that by using
    ; session.save_path = "N;MODE;/path"
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    session.save_path = "/tmp"
    ; Whether to use cookies.
    session.use_cookies = 1
    ;session.cookie_secure =
    ; This option enables administrators to make their users invulnerable to
    ; attacks which involve passing session ids in URLs; defaults to 0.
    ; session.use_only_cookies = 1
    ; Name of the session (used as cookie name).
    session.name = PHPSESSID
    ; Initialize session on request startup.
    session.auto_start = 0
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0
    ; The path for which the cookie is valid.
    session.cookie_path = /
    ; The domain for which the cookie is valid.
    session.cookie_domain =
    ; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript.
    session.cookie_httponly =
    ; Handler used to serialize data. php is the standard serializer of PHP.
    session.serialize_handler = php
    ; Define the probability that the 'garbage collection' process is started
    ; on every session initialization.
    ; The probability is calculated by using gc_probability/gc_divisor,
    ; e.g. 1/100 means there is a 1% chance that the GC process starts
    ; on each request.
    session.gc_probability = 1
    session.gc_divisor = 1000
    ; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 1440
    ; NOTE: If you are using the subdirectory option for storing session files
    ; (see session.save_path above), then garbage collection does *not*
    ; happen automatically. You will need to do your own garbage
    ; collection through a shell script, cron entry, or some other method.
    ; For example, the following script would is the equivalent of
    ; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
    ; cd /path/to/sessions; find -cmin +24 | xargs rm
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, albeit register_globals
    ; is disabled. PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    session.bug_compat_42 = 0
    session.bug_compat_warn = 1
    ; Check HTTP Referer to invalidate externally stored URLs containing ids.
    ; HTTP_REFERER has to contain this substring for the session to be
    ; considered as valid.
    session.referer_check =
    ; How many bytes to read from the file.
    session.entropy_length = 0
    ; Specified here to create the session id.
    session.entropy_file =
    ;session.entropy_length = 16
    ;session.entropy_file = /dev/urandom
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = nocache
    ; Document expires after n minutes.
    session.cache_expire = 180
    ; trans sid support is disabled by default.
    ; Use of trans sid may risk your users security.
    ; Use this option with caution.
    ; - User may send URL contains active session ID
    ; to other person via. email/irc/etc.
    ; - URL that contains active session ID may be stored
    ; in publically accessible computer.
    ; - User may access your site with the same session ID
    ; always using URL stored in browser's history or bookmarks.
    session.use_trans_sid = 0
    ; Select a hash function
    ; 0: MD5 (128 bits)
    ; 1: SHA-1 (160 bits)
    session.hash_function = 0
    ; Define how many bits are stored in each character when converting
    ; the binary hash data to something readable.
    ; 4 bits: 0-9, a-f
    ; 5 bits: 0-9, a-v
    ; 6 bits: 0-9, a-z, A-Z, "-", ","
    session.hash_bits_per_character = 5
    ; The URL rewriter will look for URLs in a defined set of HTML tags.
    ; form/fieldset are special; if you include them here, the rewriter will
    ; add a hidden <input> field with the info which is otherwise appended
    ; to URLs. If you want XHTML conformity, remove the form entry.
    ; Note that all valid entries require a "=", even if no value follows.
    url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
    [MSSQL]
    ; Allow or prevent persistent links.
    mssql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mssql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    mssql.max_links = -1
    ; Minimum error severity to display.
    mssql.min_error_severity = 10
    ; Minimum message severity to display.
    mssql.min_message_severity = 10
    ; Compatibility mode with old versions of PHP 3.0.
    mssql.compatability_mode = Off
    ; Connect timeout
    ;mssql.connect_timeout = 5
    ; Query timeout
    ;mssql.timeout = 60
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textlimit = 4096
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textsize = 4096
    ; Limits the number of records in each batch. 0 = all records in one batch.
    ;mssql.batchsize = 0
    ; Specify how datetime and datetim4 columns are returned
    ; On => Returns data converted to SQL server settings
    ; Off => Returns values as YYYY-MM-DD hh:mm:ss
    ;mssql.datetimeconvert = On
    ; Use NT authentication when connecting to the server
    mssql.secure_connection = Off
    ; Specify max number of processes. -1 = library default
    ; msdlib defaults to 25
    ; FreeTDS defaults to 4096
    ;mssql.max_procs = -1
    ; Specify client character set.
    ; If empty or not set the client charset from freetds.comf is used
    ; This is only used when compiled with FreeTDS
    ;mssql.charset = "ISO-8859-1"
    [Assertion]
    ; Assert(expr); active by default.
    ;assert.active = On
    ; Issue a PHP warning for each failed assertion.
    ;assert.warning = On
    ; Don't bail out by default.
    ;assert.bail = Off
    ; User-function to be called if an assertion fails.
    ;assert.callback = 0
    ; Eval the expression with current error_reporting(). Set to true if you want
    ; error_reporting(0) around the eval().
    ;assert.quiet_eval = 0
    [COM]
    ; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs
    ;com.typelib_file =
    ; allow Distributed-COM calls
    ;com.allow_dcom = true
    ; autoregister constants of a components typlib on com_load()
    ;com.autoregister_typelib = true
    ; register constants casesensitive
    ;com.autoregister_casesensitive = false
    ; show warnings on duplicate constant registrations
    ;com.autoregister_verbose = true
    [mbstring]
    ; language for internal character representation.
    ;mbstring.language = Japanese
    ; internal/script encoding.
    ; Some encoding cannot work as internal encoding.
    ; (e.g. SJIS, BIG5, ISO-2022-*)
    ;mbstring.internal_encoding = EUC-JP
    ; http input encoding.
    ;mbstring.http_input = auto
    ; http output encoding. mb_output_handler must be
    ; registered as output buffer to function
    ;mbstring.http_output = SJIS
    ; enable automatic encoding translation according to
    ; mbstring.internal_encoding setting. Input chars are
    ; converted to internal encoding by setting this to On.
    ; Note: Do _not_ use automatic encoding translation for
    ; portable libs/applications.
    ;mbstring.encoding_translation = Off
    ; automatic encoding detection order.
    ; auto means
    ;mbstring.detect_order = auto
    ; substitute_character used when character cannot be converted
    ; one from another
    ;mbstring.substitute_character = none;
    ; overload(replace) single byte functions by mbstring functions.
    ; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
    ; etc. Possible values are 0,1,2,4 or combination of them.
    ; For example, 7 for overload everything.
    ; 0: No overload
    ; 1: Overload mail() function
    ; 2: Overload str*() functions
    ; 4: Overload ereg*() functions
    ;mbstring.func_overload = 0
    ; enable strict encoding detection.
    ;mbstring.strict_encoding = Off
    [FrontBase]
    ;fbsql.allow_persistent = On
    ;fbsql.autocommit = On
    ;fbsql.show_timestamp_decimals = Off
    ;fbsql.default_database =
    ;fbsql.default_database_password =
    ;fbsql.default_host =
    ;fbsql.default_password =
    ;fbsql.default_user = "_SYSTEM"
    ;fbsql.generate_warnings = Off
    ;fbsql.max_connections = 128
    ;fbsql.max_links = 128
    ;fbsql.max_persistent = -1
    ;fbsql.max_results = 128
    [gd]
    ; Tell the jpeg decode to libjpeg warnings and try to create
    ; a gd image. The warning will then be displayed as notices
    ; disabled by default
    ;gd.jpeg_ignore_warning = 0
    [exif]
    ; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS.
    ; With mbstring support this will automatically be converted into the encoding
    ; given by corresponding encode setting. When empty mbstring.internal_encoding
    ; is used. For the decode settings you can distinguish between motorola and
    ; intel byte order. A decode setting cannot be empty.
    ;exif.encode_unicode = ISO-8859-15
    ;exif.decode_unicode_motorola = UCS-2BE
    ;exif.decode_unicode_intel = UCS-2LE
    ;exif.encode_jis =
    ;exif.decode_jis_motorola = JIS
    ;exif.decode_jis_intel = JIS
    [Tidy]
    ; The path to a default tidy configuration file to use when using tidy
    ;tidy.default_config = /usr/local/lib/php/default.tcfg
    ; Should tidy clean and repair output automatically?
    ; WARNING: Do not use this option if you are generating non-html content
    ; such as dynamic images
    tidy.clean_output = Off
    [soap]
    ; Enables or disables WSDL caching feature.
    soap.wsdl_cache_enabled=1
    ; Sets the directory name where SOAP extension will put cache files.
    soap.wsdl_cache_dir="/tmp"
    ; (time to live) Sets the number of second while cached file will be used
    ; instead of original one.
    soap.wsdl_cache_ttl=86400
    ; available extensions
    ;extension=bcmath.so
    ;extension=bz2.so
    ;extension=calendar.so
    ;extension=curl.so
    ;extension=dba.so
    ;extension=dbase.so
    ;extension=exif.so
    ;extension=ftp.so
    ;extension=gd.so
    extension=gettext.so
    ;extension=gmp.so
    ;extension=iconv.so
    ;extension=imap.so
    ;extension=json.so
    ;extension=ldap.so
    ;extension=mcrypt.so
    ;extension=mhash.so
    ;extension=mime_magic.so
    ;extension=mysql.so
    ;extension=mysqli.so
    ;extension=ncurses.so
    ;extension=odbc.so
    ;extension=openssl.so
    ;extension=pdo.so
    ;extension=pdo_mysql.so
    ;extension=pdo_odbc.so
    ;extension=pdo_pgsql.so
    ;extension=pdo_sqlite.so
    ;extension=pgsql.so
    ;extension=posix.so
    ;extension=pspell.so
    extension=session.so
    ;extension=shmop.so
    ;extension=snmp.so
    ;extension=soap.so
    extension=sockets.so
    extension=sqlite.so
    ;extension=sysvmsg.so
    ;extension=sysvsem.so
    ;extension=sysvshm.so
    ;extension=tidy.so
    ;extension=xmlrpc.so
    ;extension=xsl.so
    ;extension=zip.so
    extension=zlib.so
    ; Local Variables:
    ; tab-width: 4
    ; End:
    I've attempted enabling pdo.so and pdo_sqlite.so as well, with no results, making sure to stop lighty and flush all of its processes before checking again.
    `php-cgi -m | grep sqlite` does not return anything, either.
    The extensions directory (/usr/lib/php/20060613) exists on my system and contains sqlite.so, as expected.
    I have no clue what's going on here and would greatly appreciate any help offered.
    Last edited by xelados (2009-09-23 04:02:22)

    After the last update which installed PHP 5.3.0, I'm having a similar problem. PHP fails to recognize any extensions which I've defined in php.ini. PHP itself works just fine, so I'm sure this problem is related to the update of PHP.
    Here's my php.ini:
    [PHP]
    ; About php.ini ;
    ; This file controls many aspects of PHP's behavior. In order for PHP to
    ; read it, it must be named 'php.ini'. PHP looks for it in the current
    ; working directory, in the path designated by the environment variable
    ; PHPRC, and in the path that was defined in compile time (in that order).
    ; The path in which the php.ini file is looked for can be overridden using
    ; the -c argument in command line mode.
    ; The syntax of the file is extremely simple. Whitespace and Lines
    ; beginning with a semicolon are silently ignored (as you probably guessed).
    ; Section headers (e.g. [Foo]) are also silently ignored, even though
    ; they might mean something in the future.
    ; Directives are specified using the following syntax:
    ; directive = value
    ; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
    ; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one
    ; of the INI constants (On, Off, True, False, Yes, No and None) or an expression
    ; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo").
    ; Expressions in the INI file are limited to bitwise operators and parentheses:
    ; | bitwise OR
    ; & bitwise AND
    ; ~ bitwise NOT
    ; ! boolean NOT
    ; Boolean flags can be turned on using the values 1, On, True or Yes.
    ; They can be turned off using the values 0, Off, False or No.
    ; An empty string can be denoted by simply not writing anything after the equal
    ; sign, or by using the None keyword:
    ; foo = ; sets foo to an empty string
    ; foo = none ; sets foo to an empty string
    ; foo = "none" ; sets foo to the string 'none'
    ; If you use constants in your value, and these constants belong to a
    ; dynamically loaded extension (either a PHP extension or a Zend extension),
    ; you may only use these constants *after* the line that loads the extension.
    ; About this file ;
    ; This is the recommended, PHP 5-style version of the php.ini-dist file. It
    ; sets some non standard settings, that make PHP more efficient, more secure,
    ; and encourage cleaner coding.
    ; The price is that with these settings, PHP may be incompatible with some
    ; applications, and sometimes, more difficult to develop with. Using this
    ; file is warmly recommended for production sites. As all of the changes from
    ; the standard settings are thoroughly documented, you can go over each one,
    ; and decide whether you want to use it or not.
    ; For general information about the php.ini file, please consult the php.ini-dist
    ; file, included in your PHP distribution.
    ; This file is different from the php.ini-dist file in the fact that it features
    ; different values for several directives, in order to improve performance, while
    ; possibly breaking compatibility with the standard out-of-the-box behavior of
    ; PHP. Please make sure you read what's different, and modify your scripts
    ; accordingly, if you decide to use this file instead.
    ; - register_long_arrays = Off [Performance]
    ; Disables registration of the older (and deprecated) long predefined array
    ; variables ($HTTP_*_VARS). Instead, use the superglobals that were
    ; introduced in PHP 4.1.0
    ; - display_errors = Off [Security]
    ; With this directive set to off, errors that occur during the execution of
    ; scripts will no longer be displayed as a part of the script output, and thus,
    ; will no longer be exposed to remote users. With some errors, the error message
    ; content may expose information about your script, web server, or database
    ; server that may be exploitable for hacking. Production sites should have this
    ; directive set to off.
    ; - log_errors = On [Security]
    ; This directive complements the above one. Any errors that occur during the
    ; execution of your script will be logged (typically, to your server's error log,
    ; but can be configured in several ways). Along with setting display_errors to off,
    ; this setup gives you the ability to fully understand what may have gone wrong,
    ; without exposing any sensitive information to remote users.
    ; - output_buffering = 4096 [Performance]
    ; Set a 4KB output buffer. Enabling output buffering typically results in less
    ; writes, and sometimes less packets sent on the wire, which can often lead to
    ; better performance. The gain this directive actually yields greatly depends
    ; on which Web server you're working with, and what kind of scripts you're using.
    ; - register_argc_argv = Off [Performance]
    ; Disables registration of the somewhat redundant $argv and $argc global
    ; variables.
    ; - magic_quotes_gpc = Off [Performance]
    ; Input data is no longer escaped with slashes so that it can be sent into
    ; SQL databases without further manipulation. Instead, you should use the
    ; function addslashes() on each input element you wish to send to a database.
    ; - variables_order = "GPCS" [Performance]
    ; The environment variables are not hashed into the $_ENV. To access
    ; environment variables, you can use getenv() instead.
    ; - error_reporting = E_ALL [Code Cleanliness, Security(?)]
    ; By default, PHP suppresses errors of type E_NOTICE. These error messages
    ; are emitted for non-critical errors, but that could be a symptom of a bigger
    ; problem. Most notably, this will cause error messages about the use
    ; of uninitialized variables to be displayed.
    ; - allow_call_time_pass_reference = Off [Code cleanliness]
    ; It's not possible to decide to force a variable to be passed by reference
    ; when calling a function. The PHP 4 style to do this is by making the
    ; function require the relevant argument by reference.
    ; - short_open_tag = Off [Portability]
    ; Using short tags is discouraged when developing code meant for redistribution
    ; since short tags may not be supported on the target server.
    ; Language Options ;
    ; Enable the PHP scripting language engine under Apache.
    engine = On
    ; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
    zend.ze1_compatibility_mode = Off
    ; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized.
    ; NOTE: Using short tags should be avoided when developing applications or
    ; libraries that are meant for redistribution, or deployment on PHP
    ; servers which are not under your control, because short tags may not
    ; be supported on the target server. For portable, redistributable code,
    ; be sure not to use short tags.
    short_open_tag = Off
    ; Allow ASP-style <% %> tags.
    asp_tags = Off
    ; The number of significant digits displayed in floating point numbers.
    precision = 14
    ; Enforce year 2000 compliance (will cause problems with non-compliant browsers)
    y2k_compliance = On
    ; Output buffering allows you to send header lines (including cookies) even
    ; after you send body content, at the price of slowing PHP's output layer a
    ; bit. You can enable output buffering during runtime by calling the output
    ; buffering functions. You can also enable output buffering for all files by
    ; setting this directive to On. If you wish to limit the size of the buffer
    ; to a certain size - you can use a maximum number of bytes instead of 'On', as
    ; a value for this directive (e.g., output_buffering=4096).
    output_buffering = Off
    ; You can redirect all of the output of your scripts to a function. For
    ; example, if you set output_handler to "mb_output_handler", character
    ; encoding will be transparently converted to the specified encoding.
    ; Setting any output handler automatically turns on output buffering.
    ; Note: People who wrote portable scripts should not depend on this ini
    ; directive. Instead, explicitly set the output handler using ob_start().
    ; Using this ini directive may cause problems unless you know what script
    ; is doing.
    ; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler"
    ; and you cannot use both "ob_gzhandler" and "zlib.output_compression".
    ; Note: output_handler must be empty if this is set 'On' !!!!
    ; Instead you must use zlib.output_handler.
    ;output_handler =
    ; Transparent output compression using the zlib library
    ; Valid values for this option are 'off', 'on', or a specific buffer size
    ; to be used for compression (default is 4KB)
    ; Note: Resulting chunk size may vary due to nature of compression. PHP
    ; outputs chunks that are few hundreds bytes each as a result of
    ; compression. If you prefer a larger chunk size for better
    ; performance, enable output_buffering in addition.
    ; Note: You need to use zlib.output_handler instead of the standard
    ; output_handler, or otherwise the output will be corrupted.
    zlib.output_compression = Off
    ;zlib.output_compression_level = -1
    ; You cannot specify additional output handlers if zlib.output_compression
    ; is activated here. This setting does the same as output_handler but in
    ; a different order.
    ;zlib.output_handler =
    ; Implicit flush tells PHP to tell the output layer to flush itself
    ; automatically after every output block. This is equivalent to calling the
    ; PHP function flush() after each and every call to print() or echo() and each
    ; and every HTML block. Turning this option on has serious performance
    ; implications and is generally recommended for debugging purposes only.
    implicit_flush = Off
    ; The unserialize callback function will be called (with the undefined class'
    ; name as parameter), if the unserializer finds an undefined class
    ; which should be instantiated.
    ; A warning appears if the specified function is not defined, or if the
    ; function doesn't include/implement the missing class.
    ; So only set this entry, if you really want to implement such a
    ; callback-function.
    unserialize_callback_func=
    ; When floats & doubles are serialized store serialize_precision significant
    ; digits after the floating point. The default value ensures that when floats
    ; are decoded with unserialize, the data will remain the same.
    serialize_precision = 100
    ; Whether to enable the ability to force arguments to be passed by reference
    ; at function call time. This method is deprecated and is likely to be
    ; unsupported in future versions of PHP/Zend. The encouraged method of
    ; specifying which arguments should be passed by reference is in the function
    ; declaration. You're encouraged to try and turn this option Off and make
    ; sure your scripts work properly with it in order to ensure they will work
    ; with future versions of the language (you will receive a warning each time
    ; you use this feature, and the argument will be passed by value instead of by
    ; reference).
    allow_call_time_pass_reference = Off
    ; Safe Mode
    safe_mode = Off
    ; By default, Safe Mode does a UID compare check when
    ; opening files. If you want to relax this to a GID compare,
    ; then turn on safe_mode_gid.
    safe_mode_gid = Off
    ; When safe_mode is on, UID/GID checks are bypassed when
    ; including files from this directory and its subdirectories.
    ; (directory must also be in include_path or full path must
    ; be used when including)
    safe_mode_include_dir =
    ; When safe_mode is on, only executables located in the safe_mode_exec_dir
    ; will be allowed to be executed via the exec family of functions.
    safe_mode_exec_dir =
    ; Setting certain environment variables may be a potential security breach.
    ; This directive contains a comma-delimited list of prefixes. In Safe Mode,
    ; the user may only alter environment variables whose names begin with the
    ; prefixes supplied here. By default, users will only be able to set
    ; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
    ; Note: If this directive is empty, PHP will let the user modify ANY
    ; environment variable!
    safe_mode_allowed_env_vars = PHP_
    ; This directive contains a comma-delimited list of environment variables that
    ; the end user won't be able to change using putenv(). These variables will be
    ; protected even if safe_mode_allowed_env_vars is set to allow to change them.
    safe_mode_protected_env_vars = LD_LIBRARY_PATH
    ; open_basedir, if set, limits all file operations to the defined directory
    ; and below. This directive makes most sense if used in a per-directory
    ; or per-virtualhost web server configuration file. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    ; open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/
    ; This directive allows you to disable certain functions for security reasons.
    ; It receives a comma-delimited list of function names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_functions =
    ; This directive allows you to disable certain classes for security reasons.
    ; It receives a comma-delimited list of class names. This directive is
    ; *NOT* affected by whether Safe Mode is turned On or Off.
    disable_classes =
    ; Colors for Syntax Highlighting mode. Anything that's acceptable in
    ; <span style="color: ???????"> would work.
    ;highlight.string = #DD0000
    ;highlight.comment = #FF9900
    ;highlight.keyword = #007700
    ;highlight.bg = #FFFFFF
    ;highlight.default = #0000BB
    ;highlight.html = #000000
    ; If enabled, the request will be allowed to complete even if the user aborts
    ; the request. Consider enabling it if executing long request, which may end up
    ; being interrupted by the user or a browser timing out.
    ; ignore_user_abort = On
    ; Determines the size of the realpath cache to be used by PHP. This value should
    ; be increased on systems where PHP opens many files to reflect the quantity of
    ; the file operations performed.
    ; realpath_cache_size=16k
    ; Duration of time, in seconds for which to cache realpath information for a given
    ; file or directory. For systems with rarely changing files, consider increasing this
    ; value.
    ; realpath_cache_ttl=120
    ; Misc
    ; Decides whether PHP may expose the fact that it is installed on the server
    ; (e.g. by adding its signature to the Web server header). It is no security
    ; threat in any way, but it makes it possible to determine whether you use PHP
    ; on your server or not.
    expose_php = Off
    ; Resource Limits ;
    max_execution_time = 120 ; Maximum execution time of each script, in seconds
    max_input_time = 120 ; Maximum amount of time each script may spend parsing request data
    ;max_input_nesting_level = 64 ; Maximum input variable nesting level
    memory_limit = 128M ; Maximum amount of memory a script may consume (32MB)
    ; Error handling and logging ;
    ; error_reporting is a bit-field. Or each number up to get desired error
    ; reporting level
    ; E_ALL - All errors and warnings (doesn't include E_STRICT)
    ; E_ERROR - fatal run-time errors
    ; E_RECOVERABLE_ERROR - almost fatal run-time errors
    ; E_WARNING - run-time warnings (non-fatal errors)
    ; E_PARSE - compile-time parse errors
    ; E_NOTICE - run-time notices (these are warnings which often result
    ; from a bug in your code, but it's possible that it was
    ; intentional (e.g., using an uninitialized variable and
    ; relying on the fact it's automatically initialized to an
    ; empty string)
    ; E_STRICT - run-time notices, enable to have PHP suggest changes
    ; to your code which will ensure the best interoperability
    ; and forward compatibility of your code
    ; E_CORE_ERROR - fatal errors that occur during PHP's initial startup
    ; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's
    ; initial startup
    ; E_COMPILE_ERROR - fatal compile-time errors
    ; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
    ; E_USER_ERROR - user-generated error message
    ; E_USER_WARNING - user-generated warning message
    ; E_USER_NOTICE - user-generated notice message
    ; Examples:
    ; - Show all errors, except for notices and coding standards warnings
    ;error_reporting = E_ALL & ~E_NOTICE
    ; - Show all errors, except for notices
    ;error_reporting = E_ALL & ~E_NOTICE | E_STRICT
    ; - Show only errors
    ;error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
    ; - Show all errors, except coding standards warnings
    error_reporting = E_ALL
    ; Print out errors (as a part of the output). For production web sites,
    ; you're strongly encouraged to turn this feature off, and use error logging
    ; instead (see below). Keeping display_errors enabled on a production web site
    ; may reveal security information to end users, such as file paths on your Web
    ; server, your database schema or other information.
    ; possible values for display_errors:
    ; Off - Do not display any errors
    ; stderr - Display errors to STDERR (affects only CGI/CLI binaries!)
    ; On or stdout - Display errors to STDOUT (default)
    ; To output errors to STDERR with CGI/CLI:
    ;display_errors = "stderr"
    ; Default
    display_errors = On
    ; Even when display_errors is on, errors that occur during PHP's startup
    ; sequence are not displayed. It's strongly recommended to keep
    ; display_startup_errors off, except for when debugging.
    display_startup_errors = Off
    ; Log errors into a log file (server-specific log, stderr, or error_log (below))
    ; As stated above, you're strongly advised to use error logging in place of
    ; error displaying on production web sites.
    log_errors = Off
    ; Set maximum length of log_errors. In error_log information about the source is
    ; added. The default is 1024 and 0 allows to not apply any maximum length at all.
    log_errors_max_len = 1024
    ; Do not log repeated messages. Repeated errors must occur in same file on same
    ; line until ignore_repeated_source is set true.
    ignore_repeated_errors = Off
    ; Ignore source of message when ignoring repeated messages. When this setting
    ; is On you will not log errors with repeated messages from different files or
    ; source lines.
    ignore_repeated_source = Off
    ; If this parameter is set to Off, then memory leaks will not be shown (on
    ; stdout or in the log). This has only effect in a debug compile, and if
    ; error reporting includes E_WARNING in the allowed list
    report_memleaks = Off
    ;report_zend_debug = 0
    ; Store the last error/warning message in $php_errormsg (boolean).
    track_errors = Off
    ; Disable the inclusion of HTML tags in error messages.
    ; Note: Never use this feature for production boxes.
    ;html_errors = Off
    ; If html_errors is set On PHP produces clickable error messages that direct
    ; to a page describing the error or function causing the error in detail.
    ; You can download a copy of the PHP manual from http://www.php.net/docs.php
    ; and change docref_root to the base URL of your local copy including the
    ; leading '/'. You must also specify the file extension being used including
    ; the dot.
    ; Note: Never use this feature for production boxes.
    ;docref_root = "/phpmanual/"
    ;docref_ext = .html
    ; String to output before an error message.
    ;error_prepend_string = "<font color=ff0000>"
    ; String to output after an error message.
    ;error_append_string = "</font>"
    ; Log errors to specified file.
    ;error_log = filename
    ; Log errors to syslog.
    error_log = syslog
    ; Data Handling ;
    ; Note - track_vars is ALWAYS enabled as of PHP 4.0.3
    ; The separator used in PHP generated URLs to separate arguments.
    ; Default is "&".
    ;arg_separator.output = "&"
    ; List of separator(s) used by PHP to parse input URLs into variables.
    ; Default is "&".
    ; NOTE: Every character in this directive is considered as separator!
    ;arg_separator.input = ";&"
    ; This directive describes the order in which PHP registers GET, POST, Cookie,
    ; Environment and Built-in variables (G, P, C, E & S respectively, often
    ; referred to as EGPCS or GPC). Registration is done from left to right, newer
    ; values override older values.
    variables_order = "GPCS"
    ; Whether or not to register the EGPCS variables as global variables. You may
    ; want to turn this off if you don't want to clutter your scripts' global scope
    ; with user data. This makes most sense when coupled with track_vars - in which
    ; case you can access all of the GPC variables through the $HTTP_*_VARS[],
    ; variables.
    ; You should do your best to write your scripts so that they do not require
    ; register_globals to be on; Using form variables as globals can easily lead
    ; to possible security problems, if the code is not very well thought of.
    register_globals = Off
    ; Whether or not to register the old-style input arrays, HTTP_GET_VARS
    ; and friends. If you're not using them, it's recommended to turn them off,
    ; for performance reasons.
    register_long_arrays = Off
    ; This directive tells PHP whether to declare the argv&argc variables (that
    ; would contain the GET information). If you don't use these variables, you
    ; should turn it off for increased performance.
    register_argc_argv = Off
    ; When enabled, the SERVER and ENV variables are created when they're first
    ; used (Just In Time) instead of when the script starts. If these variables
    ; are not used within a script, having this directive on will result in a
    ; performance gain. The PHP directives register_globals, register_long_arrays,
    ; and register_argc_argv must be disabled for this directive to have any affect.
    auto_globals_jit = On
    ; Maximum size of POST data that PHP will accept.
    post_max_size = 128M
    ; Magic quotes
    ; Magic quotes for incoming GET/POST/Cookie data.
    magic_quotes_gpc = Off
    ; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
    magic_quotes_runtime = Off
    ; Use Sybase-style magic quotes (escape ' with '' instead of \').
    magic_quotes_sybase = Off
    ; Automatically add files before or after any PHP document.
    auto_prepend_file =
    auto_append_file =
    ; As of 4.0b4, PHP always outputs a character encoding by default in
    ; the Content-type: header. To disable sending of the charset, simply
    ; set it to be empty.
    ; PHP's built-in default is text/html
    default_mimetype = "text/html"
    ;default_charset = "iso-8859-1"
    ; Always populate the $HTTP_RAW_POST_DATA variable.
    ;always_populate_raw_post_data = On
    ; Paths and Directories ;
    ; UNIX: "/path1:/path2"
    ;include_path = ".:/usr/share/pear"
    ; The root of the PHP pages, used only if nonempty.
    ; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root
    ; if you are running php as a CGI under any web server (other than IIS)
    ; see documentation for security issues. The alternate is to use the
    ; cgi.force_redirect configuration below
    doc_root =
    ; The directory under which PHP opens the script using /~username used only
    ; if nonempty.
    user_dir =
    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = "/usr/lib/php/modules/"
    ; Whether or not to enable the dl() function. The dl() function does NOT work
    ; properly in multithreaded servers, such as IIS or Zeus, and is automatically
    ; disabled on them.
    enable_dl = Off
    ; cgi.force_redirect is necessary to provide security running PHP as a CGI under
    ; most web servers. Left undefined, PHP turns this on by default. You can
    ; turn it off here AT YOUR OWN RISK
    ; **You CAN safely turn this off for IIS, in fact, you MUST.**
    ; cgi.force_redirect = 1
    ; if cgi.nph is enabled it will force cgi to always sent Status: 200 with
    ; every request.
    ; cgi.nph = 1
    ; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape
    ; (iPlanet) web servers, you MAY need to set an environment variable name that PHP
    ; will look for to know it is OK to continue execution. Setting this variable MAY
    ; cause security issues, KNOW WHAT YOU ARE DOING FIRST.
    ; cgi.redirect_status_env = ;
    ; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
    ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
    ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
    ; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting
    ; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
    ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
    ; cgi.fix_pathinfo=1
    ; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate
    ; security tokens of the calling client. This allows IIS to define the
    ; security context that the request runs under. mod_fastcgi under Apache
    ; does not currently support this feature (03/17/2002)
    ; Set to 1 if running under IIS. Default is zero.
    ; fastcgi.impersonate = 1;
    ; Disable logging through FastCGI connection
    ; fastcgi.logging = 0
    ; cgi.rfc2616_headers configuration option tells PHP what type of headers to
    ; use when sending HTTP response code. If it's set 0 PHP sends Status: header that
    ; is supported by Apache. When this option is set to 1 PHP will send
    ; RFC2616 compliant header.
    ; Default is zero.
    ;cgi.rfc2616_headers = 0
    ; File Uploads ;
    ; Whether to allow HTTP file uploads.
    file_uploads = On
    ; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    ;upload_tmp_dir =
    ; Maximum allowed size for uploaded files.
    upload_max_filesize = 128M
    ; Fopen wrappers ;
    ; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
    allow_url_fopen = On
    ; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
    allow_url_include = Off
    ; Define the anonymous ftp password (your email address)
    ;from="[email protected]"
    ; Define the User-Agent string
    ; user_agent="PHP"
    ; Default timeout for socket based streams (seconds)
    default_socket_timeout = 10
    ; Dynamic Extensions ;
    ; If you wish to have an extension loaded automatically, use the following
    ; syntax:
    ; extension=modulename.extension
    ; For example, under UNIX:
    ; extension=msql.so
    ; Note that it should be the name of the module only; no directory information
    ; needs to go here. Specify the location of the extension with the
    ; extension_dir directive above.
    ; Module Settings ;
    [Date]
    ; Defines the default timezone used by the date functions
    ;date.timezone =
    ;date.default_latitude = 31.7667
    ;date.default_longitude = 35.2333
    ;date.sunrise_zenith = 90.583333
    ;date.sunset_zenith = 90.583333
    [filter]
    ;filter.default = unsafe_raw
    ;filter.default_flags =
    [iconv]
    ;iconv.input_encoding = ISO-8859-1
    ;iconv.internal_encoding = ISO-8859-1
    ;iconv.output_encoding = ISO-8859-1
    [sqlite]
    ;sqlite.assoc_case = 0
    [xmlrpc]
    ;xmlrpc_error_number = 0
    ;xmlrpc_errors = 0
    [Pcre]
    ;PCRE library backtracking limit.
    ;pcre.backtrack_limit=100000
    ;PCRE library recursion limit.
    ;Please note that if you set this value to a high number you may consume all
    ;the available process stack and eventually crash PHP (due to reaching the
    ;stack size limit imposed by the Operating System).
    ;pcre.recursion_limit=100000
    [Syslog]
    ; Whether or not to define the various syslog variables (e.g. $LOG_PID,
    ; $LOG_CRON, etc.). Turning it off is a good idea performance-wise. In
    ; runtime, you can define these variables by calling define_syslog_variables().
    define_syslog_variables = Off
    [mail function]
    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    ;sendmail_path =
    ; Force the addition of the specified parameters to be passed as extra parameters
    ; to the sendmail binary. These parameters will always replace the value of
    ; the 5th parameter to mail(), even in safe mode.
    ;mail.force_extra_parameters =
    [SQL]
    sql.safe_mode = Off
    [ODBC]
    ;odbc.default_db = Not yet implemented
    ;odbc.default_user = Not yet implemented
    ;odbc.default_pw = Not yet implemented
    ; Allow or prevent persistent links.
    odbc.allow_persistent = On
    ; Check that a connection is still valid before reuse.
    odbc.check_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    odbc.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    odbc.max_links = -1
    ; Handling of LONG fields. Returns number of bytes to variables. 0 means
    ; passthru.
    odbc.defaultlrl = 4096
    ; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char.
    ; See the documentation on odbc_binmode and odbc_longreadlen for an explanation
    ; of uodbc.defaultlrl and uodbc.defaultbinmode
    odbc.defaultbinmode = 1
    [MySQL]
    ; Allow or prevent persistent links.
    mysql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mysql.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    mysql.max_links = -1
    ; Default port number for mysql_connect(). If unset, mysql_connect() will use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order).
    mysql.default_port =
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    mysql.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysql.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysql.default_user =
    ; Default password for mysql_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password")
    ; and reveal this password! And of course, any users with read access to this
    ; file will be able to reveal the password as well.
    mysql.default_password =
    ; Maximum time (in seconds) for connect timeout. -1 means no limit
    mysql.connect_timeout = 60
    ; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
    ; SQL-Errors will be displayed.
    mysql.trace_mode = Off
    [MySQLi]
    ; Maximum number of links. -1 means no limit.
    mysqli.max_links = -1
    ; Default port number for mysqli_connect(). If unset, mysqli_connect() will use
    ; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
    ; compile-time value defined MYSQL_PORT (in that order).
    mysqli.default_port = 3306
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    mysqli.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    mysqli.default_user =
    ; Default password for mysqli_connect() (doesn't apply in safe mode).
    ; Note that this is generally a *bad* idea to store passwords in this file.
    ; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw")
    ; and reveal this password! And of course, any users with read access to this
    ; file will be able to reveal the password as well.
    mysqli.default_pw =
    ; Allow or prevent reconnect
    mysqli.reconnect = Off
    [mSQL]
    ; Allow or prevent persistent links.
    msql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    msql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    msql.max_links = -1
    [OCI8]
    ; enables privileged connections using external credentials (OCI_SYSOPER, OCI_SYSDBA)
    ;oci8.privileged_connect = Off
    ; Connection: The maximum number of persistent OCI8 connections per
    ; process. Using -1 means no limit.
    ;oci8.max_persistent = -1
    ; Connection: The maximum number of seconds a process is allowed to
    ; maintain an idle persistent connection. Using -1 means idle
    ; persistent connections will be maintained forever.
    ;oci8.persistent_timeout = -1
    ; Connection: The number of seconds that must pass before issuing a
    ; ping during oci_pconnect() to check the connection validity. When
    ; set to 0, each oci_pconnect() will cause a ping. Using -1 disables
    ; pings completely.
    ;oci8.ping_interval = 60
    ; Tuning: This option enables statement caching, and specifies how
    ; many statements to cache. Using 0 disables statement caching.
    ;oci8.statement_cache_size = 20
    ; Tuning: Enables statement prefetching and sets the default number of
    ; rows that will be fetched automatically after statement execution.
    ;oci8.default_prefetch = 10
    ; Compatibility. Using On means oci_close() will not close
    ; oci_connect() and oci_new_connect() connections.
    ;oci8.old_oci_close_semantics = Off
    [PostgresSQL]
    ; Allow or prevent persistent links.
    pgsql.allow_persistent = On
    ; Detect broken persistent links always with pg_pconnect().
    ; Auto reset feature requires a little overheads.
    pgsql.auto_reset_persistent = Off
    ; Maximum number of persistent links. -1 means no limit.
    pgsql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    pgsql.max_links = -1
    ; Ignore PostgreSQL backends Notice message or not.
    ; Notice message logging require a little overheads.
    pgsql.ignore_notice = 0
    ; Log PostgreSQL backends Noitce message or not.
    ; Unless pgsql.ignore_notice=0, module cannot log notice message.
    pgsql.log_notice = 0
    [Sybase]
    ; Allow or prevent persistent links.
    sybase.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybase.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    sybase.max_links = -1
    ;sybase.interface_file = "/usr/sybase/interfaces"
    ; Minimum error severity to display.
    sybase.min_error_severity = 10
    ; Minimum message severity to display.
    sybase.min_message_severity = 10
    ; Compatibility mode with old versions of PHP 3.0.
    ; If on, this will cause PHP to automatically assign types to results according
    ; to their Sybase type, instead of treating them all as strings. This
    ; compatibility mode will probably not stay around forever, so try applying
    ; whatever necessary changes to your code, and turn it off.
    sybase.compatability_mode = Off
    [Sybase-CT]
    ; Allow or prevent persistent links.
    sybct.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    sybct.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    sybct.max_links = -1
    ; Minimum server message severity to display.
    sybct.min_server_severity = 10
    ; Minimum client message severity to display.
    sybct.min_client_severity = 10
    [bcmath]
    ; Number of decimal digits for all bcmath functions.
    bcmath.scale = 0
    [browscap]
    ;browscap = extra/browscap.ini
    [Informix]
    ; Default host for ifx_connect() (doesn't apply in safe mode).
    ifx.default_host =
    ; Default user for ifx_connect() (doesn't apply in safe mode).
    ifx.default_user =
    ; Default password for ifx_connect() (doesn't apply in safe mode).
    ifx.default_password =
    ; Allow or prevent persistent links.
    ifx.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ifx.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ifx.max_links = -1
    ; If on, select statements return the contents of a text blob instead of its id.
    ifx.textasvarchar = 0
    ; If on, select statements return the contents of a byte blob instead of its id.
    ifx.byteasvarchar = 0
    ; Trailing blanks are stripped from fixed-length char columns. May help the
    ; life of Informix SE users.
    ifx.charasvarchar = 0
    ; If on, the contents of text and byte blobs are dumped to a file instead of
    ; keeping them in memory.
    ifx.blobinfile = 0
    ; NULL's are returned as empty strings, unless this is set to 1. In that case,
    ; NULL's are returned as string 'NULL'.
    ifx.nullformat = 0
    [Session]
    ; Handler used to store/retrieve data.
    session.save_handler = files
    ; Argument passed to save_handler. In the case of files, this is the path
    ; where data files are stored.
    ; As of PHP 4.0.1, you can define the path as:
    ; session.save_path = "N;/path"
    ; where N is an integer. Instead of storing all the session files in
    ; /path, what this will do is use subdirectories N-levels deep, and
    ; store the session data in those directories. This is useful if you
    ; or your OS have problems with lots of files in one directory, and is
    ; a more efficient layout for servers that handle lots of sessions.
    ; NOTE 1: PHP will not create this directory structure automatically.
    ; You can use the script in the ext/session dir for that purpose.
    ; NOTE 2: See the section on garbage collection below if you choose to
    ; use subdirectories for session storage
    ; The file storage module creates files using mode 600 by default.
    ; You can change that by using
    ; session.save_path = "N;MODE;/path"
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    session.save_path = "/www/sessions"
    ; Whether to use cookies.
    session.use_cookies = 1
    ;session.cookie_secure =
    ; This option enables administrators to make their users invulnerable to
    ; attacks which involve passing session ids in URLs; defaults to 0.
    session.use_only_cookies = 1
    ; Name of the session (used as cookie name).
    session.name = ServerSessionIdentifier
    ; Initialize session on request startup.
    session.auto_start = 0
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0
    ; The path for which the cookie is valid.
    session.cookie_path = /
    ; The domain for which the cookie is valid.
    session.cookie_domain =
    ; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript.
    session.cookie_httponly = 1
    ; Handler used to serialize data. php is the standard serializer of PHP.
    session.serialize_handler = php
    ; Define the probability that the 'garbage collection' process is started
    ; on every session initialization.
    ; The probability is calculated by using gc_probability/gc_divisor,
    ; e.g. 1/100 means there is a 1% chance that the GC process starts
    ; on each request.
    session.gc_probability = 1
    session.gc_divisor = 30
    ; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 3600
    ; NOTE: If you are using the subdirectory option for storing session files
    ; (see session.save_path above), then garbage collection does *not*
    ; happen automatically. You will need to do your own garbage
    ; collection through a shell script, cron entry, or some other method.
    ; For example, the following script would is the equivalent of
    ; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
    ; cd /path/to/sessions; find -cmin +24 | xargs rm
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, albeit register_globals
    ; is disabled. PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    session.bug_compat_42 = 0
    session.bug_compat_warn = 1
    ; Check HTTP Referer to invalidate externally stored URLs containing ids.
    ; HTTP_REFERER has to contain this substring for the session to be
    ; considered as valid.
    session.referer_check =
    ; How many bytes to read from the file.
    session.entropy_length = 0
    ; Specified here to create the session id.
    session.entropy_file =
    ;session.entropy_length = 16
    ;session.entropy_file = /dev/urandom
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = none
    ; Document expires after n minutes.
    session.cache_expire = 0
    ; trans sid support is disabled by default.
    ; Use of trans sid may risk your users security.
    ; Use this option with caution.
    ; - User may send URL contains active session ID
    ; to other person via. email/irc/etc.
    ; - URL that contains active session ID may be stored
    ; in publically accessible computer.
    ; - User may access your site with the same session ID
    ; always using URL stored in browser's history or bookmarks.
    session.use_trans_sid = 0
    ; Select a hash function
    ; 0: MD5 (128 bits)
    ; 1: SHA-1 (160 bits)
    session.hash_function = 1
    ; Define how many bits are stored in each character when converting
    ; the binary hash data to something readable.
    ; 4 bits: 0-9, a-f
    ; 5 bits: 0-9, a-v
    ; 6 bits: 0-9, a-z, A-Z, "-", ","
    session.hash_bits_per_character = 6
    ; The URL rewriter will look for URLs in a defined set of HTML tags.
    ; form/fieldset are special; if you include them here, the rewriter will
    ; add a hidden <input> field with the info which is otherwise appended
    ; to URLs. If you want XHTML conformity, remove the form entry.
    ; Note that all valid entries require a "=", even if no value follows.
    ;url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
    [MSSQL]
    ; Allow or prevent persistent links.
    mssql.allow_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    mssql.max_persistent = -1
    ; Maximum number of links (persistent+non persistent). -1 means no limit.
    mssql.max_links = -1
    ; Minimum error severity to display.
    mssql.min_error_severity = 10
    ; Minimum message severity to display.
    mssql.min_message_severity = 10
    ; Compatibility mode with old versions of PHP 3.0.
    mssql.compatability_mode = Off
    ; Connect timeout
    ;mssql.connect_timeout = 5
    ; Query timeout
    ;mssql.timeout = 60
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textlimit = 4096
    ; Valid range 0 - 2147483647. Default = 4096.
    ;mssql.textsize = 4096
    ; Limits the number of records in each batch. 0 = all records in one batch.
    ;mssql.batchsize = 0
    ; Specify how datetime and datetim4 columns are returned
    ; On => Returns data converted to SQL server settings
    ; Off => Returns values as YYYY-MM-DD hh:mm:ss
    ;mssql.datetimeconvert = On
    ; Use NT authentication when connecting to the server
    mssql.secure_connection = Off
    ; Specify max number of processes. -1 = library default
    ; msdlib defaults to 25
    ; FreeTDS defaults to 4096
    ;mssql.max_procs = -1
    ; Specify client character set.
    ; If empty or not set the client charset from freetds.comf is used
    ; This is only used when compiled with FreeTDS
    ;mssql.charset = "ISO-8859-1"
    [Assertion]
    ; Assert(expr); active by default.
    ;assert.active = On
    ; Issue a PHP warning for each failed assertion.
    ;assert.warning = On
    ; Don't bail out by default.
    ;assert.bail = Off
    ; User-function to be called if an assertion fails.
    ;assert.callback = 0
    ; Eval the expression with current error_reporting(). Set to true if you want
    ; error_reporting(0) around the eval().
    ;assert.quiet_eval = 0
    [COM]
    ; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs
    ;com.typelib_file =
    ; allow Distributed-COM calls
    ;com.allow_dcom = true
    ; autoregister constants of a components typlib on com_load()
    ;com.autoregister_typelib = true
    ; register constants casesensitive
    ;com.autoregister_casesensitive = false
    ; show warnings on duplicate constant registrations
    ;com.autoregister_verbose = true
    [mbstring]
    ; language for internal character representation.
    ;mbstring.language = Japanese
    ; internal/script encoding.
    ; Some encoding cannot work as internal encoding.
    ; (e.g. SJIS, BIG5, ISO-2022-*)
    ;mbstring.internal_encoding = EUC-JP
    ; http input encoding.
    ;mbstring.http_input = auto
    ; http output encoding. mb_output_handler must be
    ; registered as output buffer to function
    ;mbstring.http_output = SJIS
    ; enable automatic encoding translation according to
    ; mbstring.internal_encoding setting. Input chars are
    ; converted to internal encoding by setting this to On.
    ; Note: Do _not_ use automatic encoding translation for
    ; portable libs/applications.
    ;mbstring.encoding_translation = Off
    ; automatic encoding detection order.
    ; auto means
    ;mbstring.detect_order = auto
    ; substitute_character used when character cannot be converted
    ; one from another
    ;mbstring.substitute_character = none;
    ; overload(replace) single byte functions by mbstring functions.
    ; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
    ; etc. Possible values are 0,1,2,4 or combination of them.
    ; For example, 7 for overload everything.
    ; 0: No overload
    ; 1: Overload mail() function
    ; 2: Overload str*() functions
    ; 4: Overload ereg*() functions
    ;mbstring.func_overload = 0
    ; enable strict encoding detection.
    ;mbstring.strict_encoding = Off
    [FrontBase]
    ;fbsql.allow_persistent = On
    ;fbsql.autocommit = On
    ;fbsql.show_timestamp_decimals = Off
    ;fbsql.default_database =
    ;fbsql.default_database_password =
    ;fbsql.default_host =
    ;fbsql.default_password =
    ;fbsql.default_user = "_SYSTEM"
    ;fbsql.generate_warnings = Off
    ;fbsql.max_connections = 128
    ;fbsql.max_links = 128
    ;fbsql.max_persistent = -1
    ;fbsql.max_results = 128
    [gd]
    ; Tell the jpeg decode to libjpeg warnings and try to create
    ; a gd image. The warning will then be displayed as notices
    ; disabled by default
    ;gd.jpeg_ignore_warning = 0
    [exif]
    ; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS.
    ; With mbstring support this will automatically be converted into the encoding
    ; given by corresponding encode setting. When empty mbstring.internal_encoding
    ; is used. For the decode settings you can distinguish between motorola and
    ; intel byte order. A decode setting cannot be empty.
    ;exif.encode_unicode = ISO-8859-15
    ;exif.decode_unicode_motorola = UCS-2BE
    ;exif.decode_unicode_intel = UCS-2LE
    ;exif.encode_jis =
    ;exif.decode_jis_motorola = JIS
    ;exif.decode_jis_intel = JIS
    [Tidy]
    ; The path to a default tidy configuration file to use when using tidy
    ;tidy.default_config = /usr/local/lib/php/default.tcfg
    ; Should tidy clean and repair output automatically?
    ; WARNING: Do not use this option if you are generating non-html content
    ; such as dynamic images
    tidy.clean_output = Off
    [soap]
    ; Enables or disables WSDL caching feature.
    soap.wsdl_cache_enabled=1
    ; Sets the directory name where SOAP extension will put cache files.
    soap.wsdl_cache_dir="/tmp"
    ; (time to live) Sets the number of second while cached file will be used
    ; instead of original one.
    soap.wsdl_cache_ttl=86400
    ; available extensions
    ;extension=bcmath.so
    ;extension=bz2.so
    ;extension=calendar.so
    ;extension=curl.so
    ;extension=dba.so
    ;extension=dbase.so
    ;extension=exif.so
    ;extension=ftp.so
    extension=gd.so
    extension=gettext.so
    ;extension=iconv.so
    ;extension=imap.so
    ;extension=json.so
    ;extension=ldap.so
    extension=mcrypt.so
    ;extension=mime_magic.so
    extension=mysql.so
    ;extension=mysqli.so
    ;extension=ncurses.so
    ;extension=odbc.so
    extension=openssl.so
    extension=pdo.so
    extension=pdo_mysql.so
    ;extension=pdo_odbc.so
    ;extension=pdo_pgsql.so
    ;extension=pdo_sqlite.so
    ;extension=pgsql.so
    ;extension=posix.so
    ;extension=pspell.so
    extension=session.so
    ;extension=shmop.so
    ;extension=snmp.so
    ;extension=soap.so
    extension=sockets.so
    ;extension=sqlite.so
    ;extension=sysvmsg.so
    ;extension=sysvsem.so
    ;extension=sysvshm.so
    ;extension=tidy.so
    ;extension=xmlrpc.so
    ;extension=xsl.so
    ;extension=zip.so
    extension=zlib.so
    ; Local Variables:
    ; tab-width: 4
    ; End:
    Some more info:
    [root@Taurine etc]# php-cgi -m
    [PHP Modules]
    cgi-fcgi
    Core
    ctype
    date
    dom
    ereg
    fileinfo
    filter
    gettext
    hash
    libxml
    mbstring
    mysql
    mysqlnd
    openssl
    pcre
    PDO
    pdo_mysql
    Reflection
    session
    SimpleXML
    sockets
    SPL
    standard
    tokenizer
    xml
    xmlreader
    xmlwriter
    zlib
    [Zend Modules]
    [root@Taurine etc]# php-cgi -v
    PHP 5.3.0 with Suhosin-Patch (cgi-fcgi) (built: Sep 16 2009 13:55:34)
    Copyright (c) 1997-2009 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
    [root@Taurine etc]# cd /usr/lib/php/modules/
    [root@Taurine modules]# ls -alh
    totalt 3,2M
    drwxr-xr-x 2 root root 4,0K 16 sep 13.57 .
    drwxr-xr-x 4 root root 4,0K 16 sep 13.57 ..
    -rwxr-xr-x 1 root root 27K 16 sep 13.57 bcmath.so
    -rwxr-xr-x 1 root root 21K 16 sep 13.57 bz2.so
    -rwxr-xr-x 1 root root 25K 16 sep 13.57 calendar.so
    -rwxr-xr-x 1 root root 51K 16 sep 13.57 dba.so
    -rwxr-xr-x 1 root root 52K 16 sep 13.57 exif.so
    -rwxr-xr-x 1 root root 46K 16 sep 13.57 ftp.so
    -rwxr-xr-x 1 root root 11K 16 sep 13.57 gettext.so
    -rwxr-xr-x 1 root root 37K 16 sep 13.57 iconv.so
    -rwxr-xr-x 1 root root 1,2M 16 sep 13.57 imap.so
    -rwxr-xr-x 1 root root 35K 16 sep 13.57 json.so
    -rwxr-xr-x 1 root root 43K 16 sep 13.57 mysql.so
    -rwxr-xr-x 1 root root 109K 16 sep 13.57 mysqli.so
    -rwxr-xr-x 1 root root 110K 16 sep 13.57 openssl.so
    -rwxr-xr-x 1 root root 98K 16 sep 13.57 pdo.so
    -rwxr-xr-x 1 root root 24K 16 sep 13.57 pdo_mysql.so
    -rwxr-xr-x 1 root root 286K 16 sep 13.57 phar.so
    -rwxr-xr-x 1 root root 26K 16 sep 13.57 posix.so
    -rwxr-xr-x 1 root root 9,8K 16 sep 13.57 shmop.so
    -rwxr-xr-x 1 root root 356K 16 sep 13.57 soap.so
    -rwxr-xr-x 1 root root 46K 16 sep 13.57 sockets.so
    -rwxr-xr-x 1 root root 355K 16 sep 13.57 sqlite.so
    -rwxr-xr-x 1 root root 15K 16 sep 13.57 sysvmsg.so
    -rwxr-xr-x 1 root root 8,3K 16 sep 13.57 sysvsem.so
    -rwxr-xr-x 1 root root 11K 16 sep 13.57 sysvshm.so
    -rwxr-xr-x 1 root root 79K 16 sep 13.57 xmlrpc.so
    -rwxr-xr-x 1 root root 79K 16 sep 13.57 zip.so
    Last edited by nullvoid (2009-09-22 17:39:47)

  • Jail in vsftpd 2.3.4-2 do not work properly... no idea why

    I have used the chroot_local_user=YES option in the vsftpd conf... (I have restarted it)
    But then I tried in filezilla accessing with a regular user, and its not jailed at all, I can see everything in the server... any idea?
    vsftpd 2.3.4-2
    here the current conf:
    # Example config file /etc/vsftpd.conf
    # The default compiled in settings are fairly paranoid. This sample file
    # loosens things up a bit, to make the ftp daemon more usable.
    # Please see vsftpd.conf.5 for all compiled in defaults.
    # READ THIS: This example file is NOT an exhaustive list of vsftpd options.
    # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
    # capabilities.
    # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
    anonymous_enable=NO
    # Uncomment this to allow local users to log in.
    local_enable=YES
    # Uncomment this to enable any form of FTP write command.
    write_enable=YES
    # Default umask for local users is 077. You may wish to change this to 022,
    # if your users expect that (022 is used by most other ftpd's)
    #local_umask=022
    # Uncomment this to allow the anonymous FTP user to upload files. This only
    # has an effect if the above global write enable is activated. Also, you will
    # obviously need to create a directory writable by the FTP user.
    #anon_upload_enable=YES
    # Uncomment this if you want the anonymous FTP user to be able to create
    # new directories.
    #anon_mkdir_write_enable=YES
    # Activate directory messages - messages given to remote users when they
    # go into a certain directory.
    dirmessage_enable=YES
    # Activate logging of uploads/downloads.
    xferlog_enable=YES
    # Make sure PORT transfer connections originate from port 20 (ftp-data).
    connect_from_port_20=YES
    # If you want, you can arrange for uploaded anonymous files to be owned by
    # a different user. Note! Using "root" for uploaded files is not
    # recommended!
    #chown_uploads=YES
    #chown_username=whoever
    # You may override where the log file goes if you like. The default is shown
    # below.
    #xferlog_file=/var/log/vsftpd.log
    # If you want, you can have your log file in standard ftpd xferlog format.
    # Note that the default log file location is /var/log/xferlog in this case.
    #xferlog_std_format=YES
    # You may change the default value for timing out an idle session.
    #idle_session_timeout=600
    # You may change the default value for timing out a data connection.
    #data_connection_timeout=120
    # It is recommended that you define on your system a unique user which the
    # ftp server can use as a totally isolated and unprivileged user.
    #nopriv_user=ftpsecure
    # Enable this and the server will recognise asynchronous ABOR requests. Not
    # recommended for security (the code is non-trivial). Not enabling it,
    # however, may confuse older FTP clients.
    #async_abor_enable=YES
    # By default the server will pretend to allow ASCII mode but in fact ignore
    # the request. Turn on the below options to have the server actually do ASCII
    # mangling on files when in ASCII mode.
    # Beware that on some FTP servers, ASCII support allows a denial of service
    # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
    # predicted this attack and has always been safe, reporting the size of the
    # raw file.
    # ASCII mangling is a horrible feature of the protocol.
    #ascii_upload_enable=YES
    #ascii_download_enable=YES
    # You may fully customise the login banner string:
    #ftpd_banner=Welcome to blah FTP service.
    # You may specify a file of disallowed anonymous e-mail addresses. Apparently
    # useful for combatting certain DoS attacks.
    #deny_email_enable=YES
    # (default follows)
    #banned_email_file=/etc/vsftpd.banned_emails
    # You may specify an explicit list of local users to chroot() to their home
    # directory. If chroot_local_user is YES, then this list becomes a list of
    # users to NOT chroot().
    chroot_local_user=YES
    #chroot_list_enable=YES
    # (default follows)
    #chroot_list_file=/etc/vsftpd.chroot_list
    # You may activate the "-R" option to the builtin ls. This is disabled by
    # default to avoid remote users being able to cause excessive I/O on large
    # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
    # the presence of the "-R" option, so there is a strong case for enabling it.
    #ls_recurse_enable=YES
    # When "listen" directive is enabled, vsftpd runs in standalone mode and
    # listens on IPv4 sockets. This directive cannot be used in conjunction
    # with the listen_ipv6 directive.
    listen=YES
    # This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6
    # sockets, you must run two copies of vsftpd with two configuration files.
    # Make sure, that one of the listen options is commented !!
    #listen_ipv6=YES
    ssl_enable=YES
    force_local_logins_ssl=YES
    ssl_tlsv1=YES
    ssl_sslv2=YES
    ssl_sslv3=YES
    rsa_cert_file=/etc/ssl/certs/vsftpd.pem
    rsa_private_key_file=/etc/ssl/certs/vsftpd.pem

    Yup, well, I did not read the man page yet... just read the arch wiki page...
    I thought that using just chroot_local_user=YES I will not need to use that file, as it uses the system users...
    Do not work that way?
    /me runs man vsftpd... then man vsftpd.conf
    Last edited by luuuciano (2011-12-02 14:57:00)

  • External USB HD does not work with HAL:

    External USB HD does not work with HAL:
    From the last 10 days the HAL auto-mount with ntfs-3g file system of my external hard drive  does not woks.
    But the manual mount procedure with the command mount -t ntfs-3g /dev/sdb* /mnt/XYZ works.
    I've followed the instructions in the wiki: http://wiki.archlinux.org/index.php/HAL and the system has worked up to the last kernel or HAL update.
    My fat32 usb-stick works without any problem.
    If I try to open the device with KDE it appears an error popup wit this message:
    TODO: have to rethink extra options
    Error: kio_media_mount_helper
    The log from the kernel.log is
    Nov 6 22:03:16 myhost usb 5-1: new high speed USB device using ehci_hcd and address 4
    Nov 6 22:03:16 myhost usb 5-1: configuration #1 chosen from 1 choice
    Nov 6 22:03:17 myhost Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
    Nov 6 22:03:17 myhost ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
    Nov 6 22:03:17 myhost Initializing USB Mass Storage driver...
    Nov 6 22:03:17 myhost scsi6 : SCSI emulation for USB Mass Storage devices
    Nov 6 22:03:17 myhost usb-storage: device found at 4
    Nov 6 22:03:17 myhost usb-storage: waiting for device to settle before scanning
    Nov 6 22:03:17 myhost usbcore: registered new interface driver usb-storage
    Nov 6 22:03:17 myhost USB Mass Storage support registered.
    Nov 6 22:03:22 myhost scsi 6:0:0:0: Direct-Access WDC WD32 00JB-00KFA0 0811 PQ: 0 ANSI: 0
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] 625142448 512-byte hardware sectors (320073 MB)
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Test WP failed, assume Write Enabled
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Assuming drive cache: write through
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] 625142448 512-byte hardware sectors (320073 MB)
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Test WP failed, assume Write Enabled
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Assuming drive cache: write through
    Nov 6 22:03:22 myhost sdb: sdb1
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Attached SCSI disk
    Nov 6 22:03:22 myhost sd 6:0:0:0: Attached scsi generic sg2 type 0
    Nov 6 22:03:22 myhost usb-storage: device scan complete
    and the error.log is
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Assuming drive cache: write through
    Nov 6 22:03:22 myhost sd 6:0:0:0: [sdb] Assuming drive cache: write through
    Do you have some idea ....
    Bye.

    I have done the following:
    Downloaded the patched hal version.
    used makepkg in /abs/local/trunk/ to create a pkg for pacman
    used sudo pacman -U pkgname to install it.
    used sudo nano /etc/hal/fdi/policy/preferences.fdi to create the fdi file with the following content:
    saved the file and removed my ntfs entryes from fstab and rebooted. and still there is no automount off ntfs partitions.
    have i done something wrong?
    br fjodork
    WARNING: what follows is a guide of what did work for me, I'm still in an early stage of learning linux, so please correct me if anything of what follows is wrong/dangerous/stupid. As I said, this worked for me, it's not pretty, since I was learning each step on the fly and I'm sure there are better ways to do this.
    So fjodork, you seem to have done the the necessary steps, though i couldn't get it to work until i first removed hal without dependencies
    pacman -Rd hal
    it will give you some warning about the dependencies, ignore  it since we are reinstalling hal in a few steps.
    First i tried to follow Raymano's link, obviously it showed me nothing in the browser so I thought it might be a broken link.
    So I downloaded the source tarball from here http://hal.freedesktop.org/releases/hal-0.5.10.tar.gz
    unpacked it changed the /tools/hal-storage-mount.c as per Milfadoodle's instructions.
    at first I tried to compile directly from source, the process would finish without a glitch though after reboot nothing changed, as if hal weren't
    installed, i guess there were issues with paths. anyway read on
    Then repacked the source in tarball, copied it to /var/abs/extra/system/hal and modified the PKGBUILD as follows
    makedepends=('pkgconfig' 'gperf')
    options=('!libtool')
    install=hal.install
    source=(${pkgname}-${pkgver}.tar.gz #removed url so makepkg looks in the current directory for the tarball
        hal
        hal-policy.patch
        cryptsetup_location.patch
        hal-0.5.9-hide-diagnostic.patch
        ntfs3g-valid-options.patch)
    md5sums=('6641c30a27c00485c6accac5110ff911' # replace with md5sum of your package's sourceball (run md5sum filename)
             '882f67668cb14a0a9e4a27ef22278027'
             '5ba8b610aa9763a5f42b9f7cbd7a86ad'
    then makepkg (i had to add --asroot, don't ask why
    and finally pacman -U hal-0.5.10-1-i686.pkg
    another reboot and everything worked without a glitch!:D (yeah i know i still haven't got rid of the reboot mentality )
    I have also put the policy files as per the wiki instructions.
    PS: I know this is a dirty way to getting things done but as i said, I'm just starting
    If anyone could comment/correct/explain this post I'd be more than happy, the automount issue was bothering me for about a month now (you'll say why do I need ntfs in the first place? well, I only recently switched for Linux as my primary OS, these are some relics of the M$ era

Maybe you are looking for