Webapp help

I'm preparing to write my first big web application, and now I have problem, which technology I should use. Many people suggest using spring, but when I searched the web, I noticed that sun lunched new standard (ejb3, jpa, jee5). Which solution is better for beginners? Which is more comprehensive solution? What is you're opinion? Maybe I should try something else, for example seam?
Thx for help

I agree with Paul. If you:
A)Write a big web application with the basics then it will be very messy and probably inefficient which means you wasted your time.
B)Skipped all the basics to learn more advance stuff which you would more likely be skipping supposedly the 'minor' stuff that could have made it easier for you to write a big web application plus it would probably be inefficient since it is likely you would be abusing powerful stuff which means it would be a waste of your time.
When I started learning Java I did the exact same thing and that left me confused about many things such as OO, methods, and so on. Trust me, it is not a good start EVER!

Similar Messages

  • Where did webapp help go? there is no documentation to do with web apps in the new help pages???

    hi, when i login as a partner, when i click on the help and support, the new help pages have nothing referring to web apps.... even when you search,  i can find some old knowledge base pages on adobe, but why is web app help pages missing from the new help pages?
    what gives?
    there is topics on everything but web apps...

    Where would you get that idea?
    Web app's are not being dropped.
    The support change over has just been done badly thats all. Pushing to get this sorted myself so stay tuned.
    Web apps are not only staying but down the line will have a full revamp so you can do things like build your own custom blog with them if you wanted to. After that the ability to compile them and sell them on and a BC market place are all things that have been mentioned.
    Rosey futurue for web apps!

  • Need help using weblogic.Deployer to refresh a webapp

    I'm trying to refresh some jsp from a webapp deployed in exploded format
    in WLS 8.1SP3
    The original source files are not located on the machine or filesystem
    running the admin server (the webapp is deployed on a cluster)
    On WLS 6.1SP5, we use weblogic.refresh to upload the files to the admin
    server and redeploy the refreshed files.
    The documentation suggest to use weblogic.Deployer with WLS8.1 since
    weblogic.refresh is deprecated.
    I couldn't find the correct command line options to reproduced the
    weblogic.refresh behaviour. Apparently it is not possible to upload the
    files to the admin server and redeploy in a single step. weblogic.Deployer
    expects the file to be already available to the admin server before
    issuing the redeploy (using rsync, ftp or whatever). Is this correct ?
    What did I miss ?
    Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/

    I thought you've got error of another type - that error is fixed by simple software update.
    Regarding your case - it's always frightening in first time. Believe me - there's completely nothing to be afraid of.
    Resizing C drive may result killing your DATA on it only in case of energy is down during the process. Process is taking about 15-20 minutes on slow programs and about 3-4 minutes on fast programs. That means that even having problems with electricity you'll be able to finish everything correctly running on battery.
    I'd recommend using Acronis Disk director Suite, but it is not free. One of the best free progs for that are bootable Linux livecds PartedMagic and GParted. They're all intuitive understandable. 
    You will get your NOVO recovery feature lost after C resize, but you can enable it later, replacing that factory backup in hidden partition with your own backup - your NOVO button will restore your system with all your software and settings.
    it will be good for you to start with some basic principles on partitions organization schemes - why, what for and how questions are briefly explained here. After reading this you'll be able to ask right questions to get right answers.
    //help will save the world

  • I need help with filtering webapps

    Hi Guys
    This client has products that we built in webapps.
    Now he wants to be able to display certain products, based on input from the user.
    Example:
    User enters page that prompts:
    Please select an industry for your laser measurements: - Select item below
    Mechanical maintenance
    Services Company
    Mechanical Consultant
    Condition Monitoring Service Company
    Ship repair
    Diesel Engine Repair
    Education and Training
    Turbine Repair and Service
    Machine Tool installers
    Example: Mechanical Maintenance was selected
    Then displays new page with:
    Please select the conditions you will encounter - you can select multiple tick boxes:
    2.1  Uncoupled shafts
    2.2  Shaft longer than 5 meters
    2.3  Coupling diameters more than 450mm
    2.4  Belt drives
    2.5  Requirement for vibration acceptance testing and documentation
    2.6  Checking flatness of machine bases
    2.7 Checking straightness of rails, beams and bases
    Example: 2.1, 2.4, 2.5, 2.6 and 2.7 were selected
    Then display the detailed listing of suggested product based on criteria selected above:
    Based on your criteria, we recommend the E710 system which includes:
    Display unit E-series E51
    Measuring unit S
    Measuring unit M
    Any ideas?
    Another question: Can we use AJAX to do it dynamically as the user click the criteria the products show or disappear?
    Your help is appreciated.
    Kind regards
    Casper

    Hi Casper, well the web app search can do this.
    Rather then having the page steps you can hide certain search fields (make them dropdown if you want with set options) and you can ajax submit the search form to display the results inline then enable the other forum options.
    Then the items of results are shown after. If you want and you have only one result you can auto load the detail view of it with javascript as well.

  • Anybody please help me in deploying my webapp

    Hi all,
    Can anybody let me know how to deploy an webapp on myjavaserver.com. I am using Sunone Studio 8. App built on JSP+Access.
    Using the Tomcat admin tool I was able to deploy it on localhost, but when I tried it on myjavaserver.com it came with an error
    Failed to connect to the url www.myjavaserver.com...
    I have the war file(myapp.war) and web.xml files on the server(myjavaserver.com). I think I am using wrong url's. Also I am not sure what needs to be updated in the xml file.(I believe its called deployment descriptor).
    The url's I used at the Tomcat admin tool was:
    www.myjavaserver.com/~xyz/myapp.war(xyz - myaccount at myjavaserver.com)
    www.myjavaserver.com/~xyz/web.xml
    Thanks a lot,
    Kits

    II believe you're supposed to use the URL ftp.myjavaserver.com, instead of www, to upload your WAR file to the server.

  • WebApps (Liquid) Secure Zone Help

    Hi BC Team,
    Hoping someone can help me with this... I am developing a Secured Team Portal for a client of mine.  Unfortunately I haven't had a chance to delve deep into Liquid yet, so, sort of looking for some help here : ).  Here is what I want to achieve:
    A customer is assigned to a particular secure zone (via my client, securing the customer to a secure zone that relates to them).  This customer would only see the web app relates to them only.  More than one customer may have access to the same web app item.
    Assuming we assign these web app items to a Secure Zone, is there anyway to achieve this easily with Liquid? If so, any tips and tricks?
    Thanks in advance,
    Aaron

    Hi Aaron,
    Ownership in the system of a web app item is limited to 1 person, you can not add to that, change that in any form.
    You could have a custom field for a list of peoples names and run a liquid check to see if that name was the same as the person logged in (setting this with javascript on the web app item submission) BUT this is open to issues....
    1. If someone made an admin entry and forgot to add or did not put the correct names down.
    2. Liquid has a scope limit of only 500 items. You can run if statements, your own collection etc but it effectively only works within that 500 item scope. This is a major issue for me and I am trying to get even feedback from BC on this but they avoiding it at the moment

  • Help with passing CLIENT_KEYSTORE as part of webapp

    I've tried out the code at the following URL for accessing a secured webservice.
    http://e-docs.bea.com/wls/docs81/webserv/security.html#1064460
    This code expects the CLIENT_KEYSTORE to be a file on the machine actually running the code. I'm using an applet to connect to the Webservice, so I'm trying to figure out how I can send my keystore along as part of the stuff deployed to a user's machine, instead of having to install the file on each user's machine, which will be a pain.
    Any ideas? I've tried putting the file in the WEB-INF directory, WEB-INF/classes directory, putting the file in the same JAR with the Applet class and HTML/JSP files and nothing seems to work.
    HELP!

    Thanks for your help.
    I have resolved my problem. It turned out that in order to get Sun's JSSE to read my keystore, I needed to set the "javax.net.ssl.keyStore" system property. I chose to let the default trust manager "cacert" be used and that worked fine. The other problem that I had to fix was to have my key contain the full cert chain to the CA, before it got sent.
    I found the following article on the ibm developerworks finally resolve most of my questions.
    http://www-106.ibm.com/developerworks/java/library/j-customssl/
    I still have an open issue that will post seperately dealing with the key that JSSE picks from the keystore. It just takes the first key that matches the cert request and doesn't seem related to any naming and the only way to explicitly specify the key to use is by writing a custom KeyStore and have that be used in the SSL socket creation. However, when I am using the SOAP classes, I am a few levels of abstraction away from the actual Socket creation and this prevents me from setting the client cert explicitly. Any ideas?

  • IIS plugin - please help - how to forward multiple webapps

    I have setup iisproxy and iisforward.dll, and they are working fine for one webapp.
    Now, I am trying to have requests for other webapps too to be forwarded to the weblogic server, but can't figure out a way to do it.
    I am using WL5.1SP8.
    WlForwardPath supports only one path (i.e, one webapp root).
    This seems like a basic requirement to me. If anyone has tackled this, could you please me.
    Thanx in advance,
    Anil

    try the dlls from 6.0sp1.
    thanks
    Jong
    Charles T Hurst <[email protected]> wrote:
    We are using WLS 6.0 and encountered this same "issue" with the distributed
    iisforward.dll. After many hours of searching for a
    work-around, your attachment worked great! How "official" is this DLL?
    Thanks,
    charles.
    Jong Lee wrote:
    "Anil" <[email protected]> wrote:
    I have setup iisproxy and iisforward.dll, and they are working fine
    for one webapp.
    Now, I am trying to have requests for other webapps too to be forwardedto the weblogic server, but can't figure out a way to do it.
    I am using WL5.1SP8.
    WlForwardPath supports only one path (i.e, one webapp root).
    This seems like a basic requirement to me. If anyone has tackled this,could you please me.
    Thanx in advance,
    AnilTry the new iisforward.dll that I attached with this reply.
    1) Stop "IIS Admin Service" from "Control Panel" --> "Services"
    2) copy the iisforward.dll to the appropriate directory.
    3) use "," to separate the wlforwardpaths and pathtrims in your iisproxy.ini
    i.e:
    WlForwardPath=/weblogic/,/webapp/,/console
    PathTrim=/weblogic,/webapp,/console
    thanks
    Jong

  • Need help with home ad rotator webapp please

    i am trying to add text below the header in this home page ad rotator
    this is where i set up the ad rotator. shouldn't that description text be showing up underneath the word "synergies?"
    can you tell me what i am doing wrong? i am completely lost on this one.
    thanks!

    Hello again,
    It's a css issue: one of the margin values is set to 415 px (.intro-a div.two ul.items li span)
    http://screencasteu.worldsecuresystems.com/AP/2013-06-20_1031.swf
    Kind Regards,
    Alex

  • Help: can not regist application in HP-UX 11.0

    My application work fine in iAS SP3 for Win2000, but when I deployed it to
    HP-UX 11.0, It can not regist the application in HP-UX.
    can any onr help me, thanks
    Lu yanqiang
    the error message is:
    HotSpot VM warning: Setting of property "java.compiler" is ignored
    creating engine class space...
    loading jx2util...
    loading jx2util...done
    Connected to LDAP server on websvr.sh-catcher.com port 389
    com.kivasoft.engine.EngineClassLoaderNonVersionable: EngineClassLoader
    constructer called
    com.kivasoft.engine.EngineClassLoaderNonVersionable: ! NVCL CREATED at:
    com.kivasoft.engine.EngineClassLoaderNonVersionable@1fbe93
    ECS initializing engine class loader instance.
    com.kivasoft.engine.EngineClassLoader: EngineClassLoader constructer called
    initGDSKey: GDSKey_Base
    initGDSKey- just put : com.kivasoft.IGDSKey_Base
    key=com.kivasoft.gds.GDSKey@41cd1f
    initGDSKey: GDSKey_Root
    initGDSKey- just put : com.kivasoft.IGDSKey_Root
    key=com.kivasoft.gds.GDSKey@31f71a
    initGDSKey: GDSKey_Current
    initGDSKey- just put : com.kivasoft.IGDSKey_Current
    key=com.kivasoft.gds.GDSKey@5601ea
    initGDSKey: GDSKey_CurrentEngine
    initGDSKey- just put : com.kivasoft.IGDSKey_CurrentEngine
    key=com.kivasoft.gds.GDSKey@17d257
    context= com.kivasoft.context.Context@6ee36c
    resolve property: GX.path.class GX_CLASSPATH SYSTEM_JAVA null
    resolve value: /opt/iplanet/ias6/ias/APPS
    resolve property: GX.path.class.core GX_CLASSPATH_CORE SYSTEM_JAVA
    java.;com.kivasoft.;gx.
    resolve value:
    java.;com.kivasoft.;gx.;com.netscape.;javax.;netscape.ldap.;netscape.tooluti
    l.
    resolve property: GX.versionable GX_VERSIONABLE SYSTEM_JAVA
    com.kivasoft.engine.IVersionable
    property not in GDS
    resolve value: com.kivasoft.engine.IVersionable
    resolve property: GX.all.versionable GX_ALL_VERSIONABLE SYSTEM_JAVA 0
    property not in GDS
    resolve value: 0
    resolve property: GX.taskmanager.period GX_TASKMANAGER_PERIOD SYSTEM_JAVA 10
    property not in GDS
    resolve value: 10
    resolve property: GX.versionable.if.extends GX_VERSIONABLE_IF_EXTENDS
    SYSTEM_JAVA javax.servlet.GenericServlet;javax.servlet.http.HttpServlet
    property not in GDS
    resolve value: javax.servlet.GenericServlet;javax.servlet.http.HttpServlet
    resolve property: GX.versionable.if.implements GX_VERSIONABLE_IF_IMPLEMENTS
    SYSTEM_JAVA javax.servlet.Servlet
    property not in GDS
    resolve value: javax.servlet.Servlet
    class_dir 4 AppPath: /opt/iplanet/ias6/ias/APPS/compiled_jsp
    loading component...{7ee76a00-a999-11d1-a16f-006097594151}
    getting threadLocal obj
    loading component...{91f29740-16e1-11cf-96c8-0020afed9a65}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.thread.ModuleThread
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.thread.ModuleThread appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.thread.ModuleThread
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.thread.ModuleThread loaded by primordial CL
    registered module... com.kivasoft.IModuleThread
    loading component...{91f29620-16e1-11cf-96c8-0020afed9a65}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderJ
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderJ
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.bind.BinderJ
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderJ
    loaded by primordial CL
    loading component...{ed049d80-b936-1548-e481-080020721767}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.eb.EJBBinder
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EJBBinder
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.eb.EJBBinder
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EJBBinder
    loaded by primordial CL
    EJBBinder: binder is GOOD..
    EJBBinder: context set obj for IID_IGXEBBinder
    loading component...{a84f0507-a912-11cf-aa6c-524153480000}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.gds.GDSModule
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.gds.GDSModule
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.gds.GDSModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.gds.GDSModule
    loaded by primordial CL
    registered module... com.kivasoft.IGDSModule
    loading component...{c70f2c00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderBase
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderBase
    loaded by primordial CL
    loading component...{c70f2d00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{c70f1a00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.principal.PrincipalModule
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.principal.PrincipalModule appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.principal.PrincipalModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.principal.PrincipalModule loaded by primordial CL
    registered module... com.kivasoft.IPrincipalModule
    loading component...{35069f7a-0a09-1406-8f1a-0800208055c0}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{e7d37500-23bf-11d1-b6c2-0060082beecf}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{e7d37540-23bf-11d1-b6c2-0060082beecf}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{be5cfde0-cd9e-11d1-94aa-0060083a5082}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.eb.EBModule
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EBModule
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.eb.EBModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EBModule loaded
    by primordial CL
    registered module... com.kivasoft.IEBModule
    The current input file= testdb.xml
    About to start xml -> descriptor conversion process
    xmlToDescriptor- file name=testdb.xml
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/application_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/application-client_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Web Application 2.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-app_2_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-jsptaglibrary_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/ejb-jar_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS J2EE Application Client
    1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASjava_client_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Web Application 1.0//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASWebApp_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Enterprise JavaBeans 1.0//EN
    to uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASEjb_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Persistence Manager 1.0//EN to
    uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASPersistence_manager_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Datasource 1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASDatasource_1_0.dtd
    servlet name = testdb
    !!! parseWebAppFromDOM() just put in setServlet name = testdb
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/application_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/application-client_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Web Application 2.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-app_2_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-jsptaglibrary_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/ejb-jar_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS J2EE Application Client
    1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASjava_client_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Web Application 1.0//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASWebApp_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Enterprise JavaBeans 1.0//EN
    to uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASEjb_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Persistence Manager 1.0//EN to
    uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASPersistence_manager_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Datasource 1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASDatasource_1_0.dtd
    !!! handleIASServlet(): Get servlet name= testdb
    AppComponentDescriptor: com.netscape.server.deployment.WebAppDescriptor
    All EnvEntries name:
    All Ejb-refs:
    All Resource-refs:
    WebApp package name = testdb
    Enter setupPluginInfoInGDS()
    creating ServletPatternTrans entry, url= /testdb
    webapp ContextRoot= null
    Enter getAllServlets,registeredServletNames.size= 0
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Enter getAllServlets,registeredServletNames.size= 0
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Enter getAllServlets,registeredServletNames.size= 0
    [01/Nov/2001 16:00:04:5] info: GDS-007: finished a registry load
    --- now put Web-app component descrptor into GDS
    webAppName = testdb
    Enter getAllServlets,registeredServletNames.size= 0
    Enter getAllServlets,registeredServletNames.size= 0
    getClassDefGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getServletGDSKeyByGuid: return key: com.kivasoft.gds.GDSKey@540408
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getClassImpGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Now do some verification step and regenrate the web-app.xml.out file from
    GDS data
    getWebAppGDSKeyByPackageName: name to match= testdb
    got key to webapp= testdb
    enter WebAppCompGDSUtil.getDescriptorFromGDSByKey()
    About to process the <servlet-mapping> element
    GDSvalue name= /System/StaticServlet
    GDSvalue val= StaticServlet
    GDSvalue name= /System/JSPRunnerSticky
    GDSvalue val= JSPRunnerSticky
    GDSvalue name= /System/JSPRunner
    GDSvalue val= JSPRunner
    GDSvalue name= /System/FormAuthServlet
    GDSvalue val= FormAuthServlet
    GDSvalue name= /System/BasicAuthServlet
    GDSvalue val= BasicAuthServlet
    GDSvalue name= /System/CertAuthServlet
    GDSvalue val= CertAuthServlet
    GDSvalue name= /System/SessionInvalidator
    GDSvalue val= SessionInvalidator
    GDSvalue name= /fortune/fortune
    GDSvalue val= FortuneServlet
    GDSvalue name= /web/StaticServlet
    GDSvalue val= StaticServlet
    GDSvalue name= /web/JSPRunnerSticky
    GDSvalue val= JSPRunnerSticky
    GDSvalue name= /web/JSPRunner
    GDSvalue val= JSPRunner
    GDSvalue name= /web/FormAuthServlet
    GDSvalue val= FormAuthServlet
    GDSvalue name= /web/BasicAuthServlet
    GDSvalue val= BasicAuthServlet
    GDSvalue name= /web/CertAuthServlet
    GDSvalue val= CertAuthServlet
    GDSvalue name= /web/SessionInvalidator
    GDSvalue val= SessionInvalidator
    GDSvalue name= /web/AdderAlias
    GDSvalue val= AdderServlet
    GDSvalue name= /testdb/testdb
    GDSvalue val= testdb
    getServletMappingFromGDS: url= /testdb, servlet= testdb
    About to process the context-param
    [01/Nov/2001 16:00:06:7] info: GDS-007: finished a registry load
    About to process the mime-mapping
    About to process the servlets
    GDSvalue name= testdb
    GDSvalue val= {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    GDSvalue name= testdb.jsp
    GDSvalue val= {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    The returned hashtable for servlets have: 2 entries
    About to process the servlet name= testdb.jsp
    About to process the servlet name= testdb
    About to process the tld
    The returned vector for taglib have: 0 entries
    Finished getting a wd from gd s!!!
    Now ready to write out WebApp xml file
    descriptorToXml: about to get all servlets
    Enter getAllServlets,registeredServletNames.size= 2
    DescriptorManager.getServletByGuidStr, ctx=
    com.kivasoft.context.Context@6ee36c
    Enter getServletFromGDS
    getClassDefGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getServletGDSKeyByGuid: return key: com.kivasoft.gds.GDSKey@76c74b
    load-on-startup value from GDS= 0
    number-of-singles value from GDS= 10
    DescriptorManager.getServletByGuidStr, ctx=
    com.kivasoft.context.Context@6ee36c
    write Xml to output file: web.xml.out
    Finished writing out j2ee xml file
    Enter getAllServlets,registeredServletNames.size= 2
    write Xml to output file: ias-web.xml.out
    Finished writing out IAS xml file
    Extracting JSPs from testdb.xml to /opt/iplanet/ias6/ias/APPS/
    Processing input WAR 1
    Processing input WARi 21 testdb.xml
    Encountered exception java.util.zip.ZipException processing input file testd

    Hi,
    What is the version of app server on HP UX ? How did you deploy on the app
    server in HP UX using command line deployment or GUI tool ? Where are these
    errors shooting from, are these coming at the time of deployment or thrown at
    runtime ? What is the application type that you are trying to deploy ?, if
    possible send me the kxs and kjs log files please.
    Regards
    Raj
    lu yanqiang wrote:
    My application work fine in iAS SP3 for Win2000, but when I deployed it to
    HP-UX 11.0, It can not regist the application in HP-UX.
    can any onr help me, thanks
    Lu yanqiang
    the error message is:
    HotSpot VM warning: Setting of property "java.compiler" is ignored
    creating engine class space...
    loading jx2util...
    loading jx2util...done
    Connected to LDAP server on websvr.sh-catcher.com port 389
    com.kivasoft.engine.EngineClassLoaderNonVersionable: EngineClassLoader
    constructer called
    com.kivasoft.engine.EngineClassLoaderNonVersionable: ! NVCL CREATED at:
    com.kivasoft.engine.EngineClassLoaderNonVersionable@1fbe93
    ECS initializing engine class loader instance.
    com.kivasoft.engine.EngineClassLoader: EngineClassLoader constructer called
    initGDSKey: GDSKey_Base
    initGDSKey- just put : com.kivasoft.IGDSKey_Base
    key=com.kivasoft.gds.GDSKey@41cd1f
    initGDSKey: GDSKey_Root
    initGDSKey- just put : com.kivasoft.IGDSKey_Root
    key=com.kivasoft.gds.GDSKey@31f71a
    initGDSKey: GDSKey_Current
    initGDSKey- just put : com.kivasoft.IGDSKey_Current
    key=com.kivasoft.gds.GDSKey@5601ea
    initGDSKey: GDSKey_CurrentEngine
    initGDSKey- just put : com.kivasoft.IGDSKey_CurrentEngine
    key=com.kivasoft.gds.GDSKey@17d257
    context= com.kivasoft.context.Context@6ee36c
    resolve property: GX.path.class GX_CLASSPATH SYSTEM_JAVA null
    resolve value: /opt/iplanet/ias6/ias/APPS
    resolve property: GX.path.class.core GX_CLASSPATH_CORE SYSTEM_JAVA
    java.;com.kivasoft.;gx.
    resolve value:
    java.;com.kivasoft.;gx.;com.netscape.;javax.;netscape.ldap.;netscape.tooluti
    l.
    resolve property: GX.versionable GX_VERSIONABLE SYSTEM_JAVA
    com.kivasoft.engine.IVersionable
    property not in GDS
    resolve value: com.kivasoft.engine.IVersionable
    resolve property: GX.all.versionable GX_ALL_VERSIONABLE SYSTEM_JAVA 0
    property not in GDS
    resolve value: 0
    resolve property: GX.taskmanager.period GX_TASKMANAGER_PERIOD SYSTEM_JAVA 10
    property not in GDS
    resolve value: 10
    resolve property: GX.versionable.if.extends GX_VERSIONABLE_IF_EXTENDS
    SYSTEM_JAVA javax.servlet.GenericServlet;javax.servlet.http.HttpServlet
    property not in GDS
    resolve value: javax.servlet.GenericServlet;javax.servlet.http.HttpServlet
    resolve property: GX.versionable.if.implements GX_VERSIONABLE_IF_IMPLEMENTS
    SYSTEM_JAVA javax.servlet.Servlet
    property not in GDS
    resolve value: javax.servlet.Servlet
    class_dir 4 AppPath: /opt/iplanet/ias6/ias/APPS/compiled_jsp
    loading component...{7ee76a00-a999-11d1-a16f-006097594151}
    getting threadLocal obj
    loading component...{91f29740-16e1-11cf-96c8-0020afed9a65}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.thread.ModuleThread
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.thread.ModuleThread appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.thread.ModuleThread
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.thread.ModuleThread loaded by primordial CL
    registered module... com.kivasoft.IModuleThread
    loading component...{91f29620-16e1-11cf-96c8-0020afed9a65}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderJ
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderJ
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.bind.BinderJ
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderJ
    loaded by primordial CL
    loading component...{ed049d80-b936-1548-e481-080020721767}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.eb.EJBBinder
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EJBBinder
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.eb.EJBBinder
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EJBBinder
    loaded by primordial CL
    EJBBinder: binder is GOOD..
    EJBBinder: context set obj for IID_IGXEBBinder
    loading component...{a84f0507-a912-11cf-aa6c-524153480000}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.gds.GDSModule
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.gds.GDSModule
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.gds.GDSModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.gds.GDSModule
    loaded by primordial CL
    registered module... com.kivasoft.IGDSModule
    loading component...{c70f2c00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderBase
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.bind.BinderBase
    loaded by primordial CL
    loading component...{c70f2d00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{c70f1a00-abeb-11d0-b4e5-00a024e006be}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.principal.PrincipalModule
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.principal.PrincipalModule appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.principal.PrincipalModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class
    com.kivasoft.principal.PrincipalModule loaded by primordial CL
    registered module... com.kivasoft.IPrincipalModule
    loading component...{35069f7a-0a09-1406-8f1a-0800208055c0}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{e7d37500-23bf-11d1-b6c2-0060082beecf}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{e7d37540-23bf-11d1-b6c2-0060082beecf}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.bind.BinderBase
    com.kivasoft.engine.EngineClassLoader: Got com.kivasoft.bind.BinderBase from
    PCL cache
    loading component...{be5cfde0-cd9e-11d1-94aa-0060083a5082}
    getting threadLocal obj
    com.kivasoft.engine.EngineClassLoader: Enter ECL loadClass:
    com.kivasoft.eb.EBModule
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EBModule
    appears to be a core class
    com.kivasoft.engine.EngineClassLoader: Using primordial classloader to load
    com.kivasoft.eb.EBModule
    com.kivasoft.engine.EngineClassLoader: Entering
    loadClass_primordial(className)
    com.kivasoft.engine.EngineClassLoader: Class com.kivasoft.eb.EBModule loaded
    by primordial CL
    registered module... com.kivasoft.IEBModule
    The current input file= testdb.xml
    About to start xml -> descriptor conversion process
    xmlToDescriptor- file name=testdb.xml
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/application_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/application-client_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Web Application 2.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-app_2_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-jsptaglibrary_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/ejb-jar_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS J2EE Application Client
    1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASjava_client_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Web Application 1.0//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASWebApp_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Enterprise JavaBeans 1.0//EN
    to uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASEjb_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Persistence Manager 1.0//EN to
    uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASPersistence_manager_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Datasource 1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASDatasource_1_0.dtd
    servlet name = testdb
    !!! parseWebAppFromDOM() just put in setServlet name = testdb
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/application_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD J2EE Application Client 1.2//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/application-client_1_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Web Application 2.2//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-app_2_2.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/web-jsptaglibrary_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/ejb-jar_1_1.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS J2EE Application Client
    1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASjava_client_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Web Application 1.0//EN to
    uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASWebApp_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Enterprise JavaBeans 1.0//EN
    to uri= file://localhost/opt/iplanet/ias6/ias/APPS/IASEjb_jar_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Persistence Manager 1.0//EN to
    uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASPersistence_manager_1_0.dtd
    Set PubId= -//Sun Microsystems, Inc.//DTD iAS Datasource 1.0//EN to uri=
    file://localhost/opt/iplanet/ias6/ias/APPS/IASDatasource_1_0.dtd
    !!! handleIASServlet(): Get servlet name= testdb
    AppComponentDescriptor: com.netscape.server.deployment.WebAppDescriptor
    All EnvEntries name:
    All Ejb-refs:
    All Resource-refs:
    WebApp package name = testdb
    Enter setupPluginInfoInGDS()
    creating ServletPatternTrans entry, url= /testdb
    webapp ContextRoot= null
    Enter getAllServlets,registeredServletNames.size= 0
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Enter getAllServlets,registeredServletNames.size= 0
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Enter getAllServlets,registeredServletNames.size= 0
    [01/Nov/2001 16:00:04:5] info: GDS-007: finished a registry load
    --- now put Web-app component descrptor into GDS
    webAppName = testdb
    Enter getAllServlets,registeredServletNames.size= 0
    Enter getAllServlets,registeredServletNames.size= 0
    getClassDefGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getServletGDSKeyByGuid: return key: com.kivasoft.gds.GDSKey@540408
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getClassImpGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    Now do some verification step and regenrate the web-app.xml.out file from
    GDS data
    getWebAppGDSKeyByPackageName: name to match= testdb
    got key to webapp= testdb
    enter WebAppCompGDSUtil.getDescriptorFromGDSByKey()
    About to process the <servlet-mapping> element
    GDSvalue name= /System/StaticServlet
    GDSvalue val= StaticServlet
    GDSvalue name= /System/JSPRunnerSticky
    GDSvalue val= JSPRunnerSticky
    GDSvalue name= /System/JSPRunner
    GDSvalue val= JSPRunner
    GDSvalue name= /System/FormAuthServlet
    GDSvalue val= FormAuthServlet
    GDSvalue name= /System/BasicAuthServlet
    GDSvalue val= BasicAuthServlet
    GDSvalue name= /System/CertAuthServlet
    GDSvalue val= CertAuthServlet
    GDSvalue name= /System/SessionInvalidator
    GDSvalue val= SessionInvalidator
    GDSvalue name= /fortune/fortune
    GDSvalue val= FortuneServlet
    GDSvalue name= /web/StaticServlet
    GDSvalue val= StaticServlet
    GDSvalue name= /web/JSPRunnerSticky
    GDSvalue val= JSPRunnerSticky
    GDSvalue name= /web/JSPRunner
    GDSvalue val= JSPRunner
    GDSvalue name= /web/FormAuthServlet
    GDSvalue val= FormAuthServlet
    GDSvalue name= /web/BasicAuthServlet
    GDSvalue val= BasicAuthServlet
    GDSvalue name= /web/CertAuthServlet
    GDSvalue val= CertAuthServlet
    GDSvalue name= /web/SessionInvalidator
    GDSvalue val= SessionInvalidator
    GDSvalue name= /web/AdderAlias
    GDSvalue val= AdderServlet
    GDSvalue name= /testdb/testdb
    GDSvalue val= testdb
    getServletMappingFromGDS: url= /testdb, servlet= testdb
    About to process the context-param
    [01/Nov/2001 16:00:06:7] info: GDS-007: finished a registry load
    About to process the mime-mapping
    About to process the servlets
    GDSvalue name= testdb
    GDSvalue val= {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    GDSvalue name= testdb.jsp
    GDSvalue val= {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    The returned hashtable for servlets have: 2 entries
    About to process the servlet name= testdb.jsp
    About to process the servlet name= testdb
    About to process the tld
    The returned vector for taglib have: 0 entries
    Finished getting a wd from gd s!!!
    Now ready to write out WebApp xml file
    descriptorToXml: about to get all servlets
    Enter getAllServlets,registeredServletNames.size= 2
    DescriptorManager.getServletByGuidStr, ctx=
    com.kivasoft.context.Context@6ee36c
    Enter getServletFromGDS
    getClassDefGDSKeyByGuid: name to match=
    {eea893d3-d646-4f8e-8c6d-6f92a8563c46}
    BaseKey= com.kivasoft.gds.GDSKey@41cd1f
    getServletGDSKeyByGuid: return key: com.kivasoft.gds.GDSKey@76c74b
    load-on-startup value from GDS= 0
    number-of-singles value from GDS= 10
    DescriptorManager.getServletByGuidStr, ctx=
    com.kivasoft.context.Context@6ee36c
    write Xml to output file: web.xml.out
    Finished writing out j2ee xml file
    Enter getAllServlets,registeredServletNames.size= 2
    write Xml to output file: ias-web.xml.out
    Finished writing out IAS xml file
    Extracting JSPs from testdb.xml to /opt/iplanet/ias6/ias/APPS/
    Processing input WAR 1
    Processing input WARi 21 testdb.xml
    Encountered exception java.util.zip.ZipException processing input file testd

  • A little help with rutorrent

    Hi comrades,
    I use rtorrent in terminal without problems but recently I got interested in rutorrent.
    I've been following the rtorrent wiki and rutorrent wiki to get to this point.
    First of all rtorrent is working fine in terminal, but with rutorrent I only get to this far: http://i637.photobucket.com/albums/uu93 … 1403737709
    As you can see in the upeer right of the image it's trying to connect and in the log section is throwing me this:
    [25.06.2014 18:37:22] WebUI started.
    [25.06.2014 18:37:23] Bad response from server: (200 [parsererror,getplugins]) <?php require_once( "util.php" ); require_once( "settings.php" ); function pluginsSort($a, $b) { $lvl1 = (float) $a["info"]["plugin.runlevel"]; $lvl2 = (float) $b["info"]["plugin.runlevel"]; if($lvl1>$lvl2) return(1); if($lvl1<$lvl2) return(-1); return( strcmp($a["name"],$b["name"]) ); } function getFlag($permissions,$pname,$fname) { $ret = true; if(array_key_exists($pname,$permissions) && array_key_exists($fname,$permissions[$pname])) $ret = $permissions[$pname][$fname]; else if(array_key_exists("default",$permissions) && array_key_exists($fname,$permissions["default"])) $ret = $permissions["default"][$fname]; return($ret); } function getPluginInfo( $name, $permissions ) { $info = array( 'rtorrent.need'=>1, 'rtorrent.remote'=>'ok', 'rtorrent.external.warning'=>array(), 'rtorrent.external.error'=>array(), 'rtorrent.script.error'=>array(), 'rtorrent.php.error'=>array(), 'rtorrent.version'=>0x802, 'rtorrent.version.readable'=>'0.8.2', 'plugin.may_be_shutdowned'=>1, 'plugin.may_be_launched'=>1, 'plugin.runlevel'=>10.0, 'plugin.description'=>'', 'plugin.author'=>'unknown', 'plugin.dependencies'=>array(), 'php.version'=>0x50000, 'php.version.readable'=>'5.0.0', 'php.extensions.warning'=>array(), 'php.extensions.error'=>array(), 'web.external.warning'=>array(), 'web.external.error'=>array(), 'plugin.help'=>'', ); $fname = "../plugins/".$name."/plugin.info"; if(is_readable($fname)) { $lines = file($fname); foreach($lines as $line) { $fields = explode(":",$line,2); if(count($fields)==2) { $value = addcslashes(trim($fields[1]),"\\\'\"\n\r\t"); $field = trim($fields[0]); switch($field) { case "plugin.help": case "plugin.author": case "plugin.description": case "rtorrent.remote": { $info[$field] = $value; break; } case "plugin.may_be_shutdowned": case "plugin.may_be_launched": case "rtorrent.need": { $info[$field] = intval($value); break; } case "plugin.version": case "plugin.runlevel": { $info[$field] = floatval($value); break; } case "rtorrent.version": case "php.version": { $version = explode('.', $value); $info[$field] = (intval($version[0])<<16) + (intval($version[1])<<8) + intval($version[2]); $info[$field.'.readable'] = $value; break; } case "plugin.dependencies": case "rtorrent.external.warning": case "rtorrent.external.error": case "rtorrent.script.error": case "rtorrent.php.error": case "web.external.warning": case "web.external.error": case "php.extensions.warning": case "php.extensions.error": { $info[$field] = explode(',', $value); break; } // for compatibility case "author": case "description": { $info['plugin.'.$field] = $value; break; } case "remote": { $info['rtorrent.remote'] = $value; break; } case "need_rtorrent": { $info['rtorrent.need'] = intval($value); break; } case "version": case "runlevel": { $info['plugin.'.$field] = floatval($value); break; } } } } $perms = 0; if($permissions!==false) { if(!getFlag($permissions,$name,"enabled")) return(false); $flags = array( "canChangeToolbar" => 0x0001, "canChangeMenu" => 0x0002, "canChangeOptions" => 0x0004, "canChangeTabs" => 0x0008, "canChangeColumns" => 0x0010, "canChangeStatusBar" => 0x0020, "canChangeCategory" => 0x0040, "canBeShutdowned" => 0x0080, /* "canBeLaunched" => 0x0100, */ ); foreach($flags as $flagName=>$flagVal) if(!getFlag($permissions,$name,$flagName)) $perms|=$flagVal; if(!$info["plugin.may_be_shutdowned"]) $perms|=$flags["canBeShutdowned"]; } $info["perms"] = $perms; } return(array_key_exists("plugin.version",$info) ? $info : false); } function findRemoteEXE( $exe, $err, &$remoteRequests ) { $st = getSettingsPath().'/'.rand(); if(!array_key_exists($exe,$remoteRequests)) { $path=realpath(dirname('.')); global $pathToExternals; $add = ''; if(isset($pathToExternals[$exe]) && !empty($pathToExternals[$exe])) $add = " ".escapeshellarg($pathToExternals[$exe]); $req = new rXMLRPCRequest(new rXMLRPCCommand("execute", array( "sh", "-c", escapeshellarg(addslash($path)."test.sh")." ".$exe." ".escapeshellarg($st).$add))); $req->run(); $remoteRequests[$exe] = array( "path"=>$st, "err"=>array() ); } $remoteRequests[$exe]["err"][] = $err; } function testRemoteRequests($remoteRequests) { $ret = ""; foreach($remoteRequests as $exe=>$info) { $file = $info["path"].$exe.".found"; if(!is_file($file)) { foreach($info["err"] as $err) $ret.=$err; } else @unlink($file); } return($ret); } $jResult = "theWebUI.deltaTime = 0;\n"; $access = getConfFile('access.ini'); if(!$access) $access = "../conf/access.ini"; $permissions = parse_ini_file($access); $settingsFlags = array( "showDownloadsPage" => 0x0001, "showConnectionPage" => 0x0002, "showBittorentPage" => 0x0004, "showAdvancedPage" => 0x0008, "showPluginsTab" => 0x0010, "canChangeULRate" => 0x0020, "canChangeDLRate" => 0x0040, "canChangeTorrentProperties" => 0x0080, ); $perms = 0; foreach($settingsFlags as $flagName=>$flagVal) if(array_key_exists($flagName,$permissions) && $permissions[$flagName]) $perms|=$flagVal; $jResult .= "theWebUI.showFlags = ".$perms.";\n"; $jResult .= "theURLs.XMLRPCMountPoint = '".$XMLRPCMountPoint."';\n"; $jResult.="theWebUI.systemInfo = {};\ntheWebUI.systemInfo.php = { canHandleBigFiles : ".((PHP_INT_SIZE<=4) ? "false" : "true")." };\n"; if($handle = opendir('../plugins')) { ignore_user_abort(true); set_time_limit(0); makeDirectory(getTempDirectory()); if(!@file_exists($tempDirectory.'/.') || !is_readable($tempDirectory) || !is_writable($tempDirectory)) $jResult.="noty(theUILang.badTempPath+' (".$tempDirectory.")','error');"; if(!function_exists('preg_match_all')) { $jResult.="noty(theUILang.PCRENotFound,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: false, iVersion : 0, version : '?', libVersion : '?' };\n"; } else { $remoteRequests = array(); $theSettings = rTorrentSettings::get(true); if(!$theSettings->linkExist) { $jResult.="noty(theUILang.badLinkTorTorrent,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: false, iVersion : 0, version : '?', libVersion : '?', apiVersion : 0 };\n"; } else { if($theSettings->idNotFound) $jResult.="noty(theUILang.idNotFound,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: true, iVersion : ".$theSettings->iVersion.", version : '". $theSettings->version."', libVersion : '".$theSettings->libVersion."', apiVersion : ".$theSettings->apiVersion." };\n"; if($theSettings->mostOfMethodsRenamed) $jResult.="theWebUI.systemInfo.rTorrent.newMethodsSet = true;\n"; if($do_diagnostic) { $up = getUploadsPath(); $st = getSettingsPath(); @chmod($up,$profileMask); @chmod($st,$profileMask); @chmod('./test.sh',$profileMask & 0755); if(PHP_USE_GZIP && (findEXE('gzip')===false)) { @define('PHP_USE_GZIP', false); $jResult.="noty(theUILang.gzipNotFound,'error');"; } if(PHP_INT_SIZE<=4) { if(findEXE('stat')===false) $jResult.="noty(theUILang.statNotFoundW,'error');"; findRemoteEXE('stat',"noty(theUILang.statNotFound,'error');",$remoteRequests); } if(!@file_exists($up.'/.') || !is_readable($up) || !is_writable($up)) $jResult.="noty(theUILang.badUploadsPath+' (".$up.")','error');"; if(!@file_exists($st.'/.') || !is_readable($st) || !is_writable($st)) $jResult.="noty(theUILang.badSettingsPath+' (".$st.")','error');"; if(isLocalMode() && !$theSettings->idNotFound) { if($theSettings->uid<0) $jResult.="noty(theUILang.cantObtainUser,'error');"; else { if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$tempDirectory,0x0007)) $jResult.="noty(theUILang.badTempPath2+' (".$tempDirectory.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$up,0x0007)) $jResult.="noty(theUILang.badUploadsPath2+' (".$up.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$st,0x0007)) $jResult.="noty(theUILang.badSettingsPath2+' (".$st.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,'./test.sh',0x0005)) $jResult.="noty(theUILang.badTestPath+' (".realpath('./test.sh').")','error');"; } } if($theSettings->badXMLRPCVersion) $jResult.="noty(theUILang.badXMLRPCVersion,'error');"; } } $plg = getConfFile('plugins.ini'); if(!$plg) $plg = "../conf/plugins.ini"; $permissions = parse_ini_file($plg,true); $init = array(); $names = array(); $disabled = array(); $phpVersion = phpversion(); if( ($pos=strpos($phpVersion, '-'))!==false ) $phpVersion = substr($phpVersion,0,$pos); $phpIVersion = explode('.',$phpVersion); $phpIVersion = (intval($phpIVersion[0])<<16) + (intval($phpIVersion[1])<<8) + intval($phpIVersion[2]); $phpRequired = false; $userPermissions = array( "__hash__"=>"plugins.dat" ); $cache = new rCache(); $cache->get($userPermissions); $cantBeShutdowned = 0x0080; $canBeLaunched = 0x0100; $disabledByUser = 0x8000; $loadedExtensions = array_map("strtolower",get_loaded_extensions()); while(false !== ($file = readdir($handle))) { if($file != "." && $file != ".." && is_dir('../plugins/'.$file)) { if(!array_key_exists($file,$userPermissions)) $userPermissions[$file] = true; $info = getPluginInfo( $file, $permissions ); if($info) { if( $info["plugin.may_be_launched"] && getFlag($permissions,$file,"enabled")=="user-defined") { $info["perms"] |= $canBeLaunched; if(!$userPermissions[$file]) { $info["perms"] |= $disabledByUser; $disabled[$file] = $info; $info = false; } } else $info["perms"] |= $cantBeShutdowned; } if($info!==false) { if(!$theSettings->linkExist && $info["rtorrent.need"]) { $disabled[$file] = $info; continue; } if($info['php.version']>$phpIVersion) { $jResult.="noty('".$file.": '+theUILang.badPHPVersion+' '+'".$info['php.version.readable']."'+'.','error');"; $disabled[$file] = $info; continue; } $extError = false; foreach( $info['php.extensions.error'] as $extension ) if(!in_array( $extension, $loadedExtensions )) { $jResult.="noty('".$file.": '+theUILang.phpExtensionNotFoundError+' ('+'".$extension."'+').','error');"; $extError = true; } if($extError) { $disabled[$file] = $info; continue; } if(count($info['web.external.error']) || count($info['web.external.warning']) || count($info['rtorrent.external.error']) || count($info['rtorrent.external.warning'])) eval( getPluginConf( $file ) ); foreach( $info['web.external.error'] as $external ) { if(findEXE($external)==false) { $jResult.="noty('".$file.": '+theUILang.webExternalNotFoundError+' ('+'".$external."'+').','error');"; $extError = true; } else if($external=='php') $phpRequired = true; } if($extError) { $disabled[$file] = $info; continue; } if($theSettings->linkExist) { if($info['rtorrent.version']>$theSettings->iVersion) { $jResult.="noty('".$file.": '+theUILang.badrTorrentVersion+' '+'".$info['rtorrent.version.readable']."'+'.','error');"; $disabled[$file] = $info; continue; } foreach( $info['rtorrent.external.error'] as $external ) { findRemoteEXE($external,"noty('".$file.": '+theUILang.rTorrentExternalNotFoundError+' ('+'".$external."'+').','error'); thePlugins.get('".$file."').disable();",$remoteRequests); if($external=='php') $phpRequired = true; } foreach( $info['rtorrent.script.error'] as $external ) { $fname = $rootPath.'/plugins/'.$file.'/'.$external; @chmod($fname,$profileMask & 0755); if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$fname,0x0005)) { $jResult.="noty('".$file.": '+theUILang.rTorrentBadScriptPath+' ('+'".$fname."'+').','error');"; $extError = true; } } if($extError) { $disabled[$file] = $info; continue; } foreach( $info['rtorrent.php.error'] as $external ) { $fname = $rootPath.'/plugins/'.$file.'/'.$external; @chmod($fname,$profileMask & 0644); if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$fname,0x0004)) { $jResult.="noty('".$file.": '+theUILang.rTorrentBadPHPScriptPath+' ('+'".$fname."'+').','error');"; $extError = true; } } if($extError) { $disabled[$file] = $info; continue; } if(!isLocalMode()) { if($info["rtorrent.remote"]=="error") { $jResult.="noty('".$file.": '+theUILang.errMustBeInSomeHost,'error');"; $disabled[$file] = $info; continue; } if($do_diagnostic && ($info["rtorrent.remote"]=="warning")) $jResult.="noty('".$file.": '+theUILang.warnMustBeInSomeHost,'error');"; } } if($do_diagnostic) { if($theSettings->linkExist) foreach( $info['rtorrent.external.warning'] as $external ) findRemoteEXE($external,"noty('".$file.": '+theUILang.rTorrentExternalNotFoundWarning+' ('+'".$external."'+').','error');",$remoteRequests); foreach( $info['web.external.warning'] as $external ) if(findEXE($external)==false) $jResult.="noty('".$file.": '+theUILang.webExternalNotFoundWarning+' ('+'".$external."'+').','error');"; foreach( $info['php.extensions.warning'] as $extension ) if(!in_array( $extension, $loadedExtensions )) $jResult.="noty('".$file.": '+theUILang.phpExtensionNotFoundWarning+' ('+'".$extension."'+').','error');"; } $js = "../plugins/".$file."/init.js"; if(!is_readable($js)) $js = NULL; $php = "../plugins/".$file."/init.php"; if(!is_readable($php)) $php = NULL; $init[] = array( "js" => $js, "php" => $php, "info" => $info, "name" => $file ); $names[] = $file; } } } if($phpRequired) { $val = strtoupper(ini_get("register_argc_argv")); if( $val!=='' && $val!='ON' && $val!='1' && $val!='TRUE' ) $jResult.="noty(theUILang.phpParameterUnavailable,'error');"; } usort($init,"pluginsSort"); foreach($init as $plugin) { $jEnd = ''; $pInfo = $plugin["info"]; $deps = array_diff( $pInfo["plugin.dependencies"], $names ); if(count($deps)) { $jResult.="noty('".$plugin["name"].": '+theUILang.dependenceError+' ".implode(",",$deps)."','error');"; $disabled[$plugin["name"]] = $pInfo; continue; } $jResult.="(function () { var plugin = new rPlugin( '".$plugin["name"]."',".$pInfo["plugin.version"]. ",'".$pInfo["plugin.author"]."','".$pInfo["plugin.description"]."',".$pInfo["perms"].",'".$pInfo["plugin.help"]."' );\n"; if($plugin["php"]) require_once( $plugin["php"] ); else $theSettings->registerPlugin($plugin["name"],$pInfo["perms"]); if($plugin["js"]) { $js = file_get_contents($plugin["js"]); if($theSettings->isPluginRegistered($plugin["name"])) $jResult.=$js; else { if(strpos($js,"plugin.loadLang()")!==false) $jResult.="plugin.loadLang();"; } $jResult.="\n"; } $jResult.=$jEnd; $jResult.="\n})();"; } foreach($disabled as $name=>$pInfo) { $jResult.="(function () { var plugin = new rPlugin( '".$name."',".$pInfo["plugin.version"]. ",'".$pInfo["plugin.author"]."','".$pInfo["plugin.description"]."',".$pInfo["perms"].",'".$pInfo["plugin.help"]."' );\n"; $jResult.="plugin.disable(); "; if($pInfo["perms"] & $disabledByUser) $jResult.="plugin.unlaunch(); "; $jResult.="\n})();"; } $jResult.=testRemoteRequests($remoteRequests); $theSettings->store(); } closedir($handle); } cachedEcho($jResult,"application/javascript",true);
    [25.06.2014 18:37:23] Bad response from server: (200 [parsererror,getuisettings]) <?php require_once( 'util.php' ); $s = '{}'; $fname = getSettingsPath()."/uisettings.json"; $fo = fopen($fname, 'r'); if($fo!==false) { if(flock($fo, LOCK_SH)) { $s = @file_get_contents($fname); if($s==false) $s = '{}'; flock($fo, LOCK_UN); } fclose($fo); } cachedEcho($s,"application/json",true);
    For that log I believe I've a problem with permission, or rutorrent plugins.
    Here are my configuration files
    /etc/webapps/rutorrent/conf/config.php
    <?php
    // configuration parameters
    // for snoopy client
    @define('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0', true);
    @define('HTTP_TIME_OUT', 30, true); // in seconds
    @define('HTTP_USE_GZIP', true, true);
    $httpIP = null; // IP string. Or null for any.
    @define('RPC_TIME_OUT', 5, true); // in seconds
    @define('LOG_RPC_CALLS', false, true);
    @define('LOG_RPC_FAULTS', true, true);
    // for php
    @define('PHP_USE_GZIP', false, true);
    @define('PHP_GZIP_LEVEL', 2, true);
    $schedule_rand = 10; // rand for schedulers start, +0..X seconds
    $do_diagnostic = true;
    $log_file = '/tmp/errors.log'; // path to log file (comment or leave blank to disable logging)
    $saveUploadedTorrents = true; // Save uploaded torrents to profile/torrents directory or not
    $overwriteUploadedTorrents = false; // Overwrite existing uploaded torrents in profile/torrents directory or make unique name
    $topDirectory = '/'; // Upper available directory. Absolute path with trail slash.
    $forbidUserSettings = false;
    $scgi_port = 5000;
    $scgi_host = "127.0.0.1";
    // For web->rtorrent link through unix domain socket
    // (scgi_local in rtorrent conf file), change variables
    // above to something like this:
    // $scgi_port = 0;
    // $scgi_host = "unix:///tmp/rpc.socket";
    $XMLRPCMountPoint = "/RPC2"; // DO NOT DELETE THIS LINE!!! DO NOT COMMENT THIS LINE!!!
    $pathToExternals = array(
    "php" => '/usr/bin/php', // Something like /usr/bin/php. If empty, will be found in PATH.
    "curl" => '/usr/bin/curl', // Something like /usr/bin/curl. If empty, will be found in PATH.
    "gzip" => '/usr/bin/gzip', // Something like /usr/bin/gzip. If empty, will be found in PATH.
    "id" => '/usr/bin/id', // Something like /usr/bin/id. If empty, will be found in PATH.
    "stat" => '/usr/bin/stat', // Something like /usr/bin/stat. If empty, will be found in PATH.
    $localhosts = array( // list of local interfaces
    "127.0.0.1",
    "localhost",
    $profilePath = '../share'; // Path to user profiles
    $profileMask = 0777; // Mask for files and directory creation in user profiles.
    // Both Webserver and rtorrent users must have read-write access to it.
    // For example, if Webserver and rtorrent users are in the same group then the value may be 0770.
    $tempDirectory = null; // Temp directory. Absolute path with trail slash. If null, then autodetect will be used.
    ~/.rtorrent.rc
    scgi_port = localhost:5000
    directory = /home/milo/Downloads
    session = /home/milo/.rutorrent/.session
    schedule = watch_directory,5,5,load_start=/home/milo/Downloads/*.torrent
    schedule = low_diskspace,5,60,close_low_diskspace=100M
    port_range = 49152-50000
    check_hash = no
    encryption = allow_incoming,try_outgoing,enable_retry
    dht = auto
    dht_port = 6881
    peer_exchange = yes
    /etc/php/php.ini
    [PHP]
    ; About php.ini ;
    ; PHP's initialization file, generally called php.ini, is responsible for
    ; configuring many of the aspects of PHP's behavior.
    ; PHP attempts to find and load this configuration from a number of locations.
    ; The following is a summary of its search order:
    ; 1. SAPI module specific location.
    ; 2. The PHPRC environment variable. (As of PHP 5.2.0)
    ; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
    ; 4. Current working directory (except CLI)
    ; 5. The web server's directory (for SAPI modules), or directory of PHP
    ; (otherwise in Windows)
    ; 6. The directory from the --with-config-file-path compile time option, or the
    ; Windows directory (C:\windows or C:\winnt)
    ; See the PHP docs for more specific information.
    ; http://php.net/configuration.file
    ; 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 following the section heading [PATH=/www/mysite] only
    ; apply to PHP files in the /www/mysite directory. Directives
    ; following the section heading [HOST=www.example.com] only apply to
    ; PHP files served from www.example.com. Directives set in these
    ; special sections cannot be overridden by user-defined INI files or
    ; at runtime. Currently, [PATH=] and [HOST=] sections only work under
    ; CGI/FastCGI.
    ; http://php.net/ini.sections
    ; Directives are specified using the following syntax:
    ; directive = value
    ; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
    ; Directives are variables used to configure PHP or PHP extensions.
    ; There is no name validation. If PHP can't find an expected
    ; directive because it is not set or is mistyped, a default value will be used.
    ; 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), a quoted string ("bar"), or a reference to a
    ; previously set variable or directive (e.g. ${foo})
    ; Expressions in the INI file are limited to bitwise operators and parentheses:
    ; | bitwise OR
    ; ^ bitwise XOR
    ; & 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 ;
    ; PHP comes packaged with two INI files. One that is recommended to be used
    ; in production environments and one that is recommended to be used in
    ; development environments.
    ; php.ini-production contains settings which hold security, performance and
    ; best practices at its core. But please be aware, these settings may break
    ; compatibility with older or less security conscience applications. We
    ; recommending using the production ini in production and testing environments.
    ; php.ini-development is very similar to its production variant, except it's
    ; much more verbose when it comes to errors. We recommending using the
    ; development version only in development environments as errors shown to
    ; application users can inadvertently leak otherwise secure information.
    ; This is php.ini-production INI file.
    ; Quick Reference ;
    ; The following are all the settings which are different in either the production
    ; or development versions of the INIs with respect to PHP's default behavior.
    ; Please see the actual settings later in the document for more details as to why
    ; we recommend these changes in PHP's behavior.
    ; display_errors
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    ; display_startup_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; error_reporting
    ; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
    ; Development Value: E_ALL
    ; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; html_errors
    ; Default Value: On
    ; Development Value: On
    ; Production value: On
    ; log_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: On
    ; max_input_time
    ; Default Value: -1 (Unlimited)
    ; Development Value: 60 (60 seconds)
    ; Production Value: 60 (60 seconds)
    ; output_buffering
    ; Default Value: Off
    ; Development Value: 4096
    ; Production Value: 4096
    ; register_argc_argv
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; request_order
    ; Default Value: None
    ; Development Value: "GP"
    ; Production Value: "GP"
    ; session.gc_divisor
    ; Default Value: 100
    ; Development Value: 1000
    ; Production Value: 1000
    ; session.hash_bits_per_character
    ; Default Value: 4
    ; Development Value: 5
    ; Production Value: 5
    ; short_open_tag
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; track_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; url_rewriter.tags
    ; Default Value: "a=href,area=href,frame=src,form=,fieldset="
    ; Development Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    ; Production Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    ; variables_order
    ; Default Value: "EGPCS"
    ; Development Value: "GPCS"
    ; Production Value: "GPCS"
    ; php.ini Options ;
    ; Name for user-defined php.ini (.htaccess) files. Default is ".user.ini"
    ;user_ini.filename = ".user.ini"
    ; To disable this feature set this option to empty value
    ;user_ini.filename =
    ; TTL for user-defined php.ini files (time-to-live) in seconds. Default is 300 seconds (5 minutes)
    ;user_ini.cache_ttl = 300
    ; Language Options ;
    ; Enable the PHP scripting language engine under Apache.
    ; http://php.net/engine
    engine = On
    ; This directive determines whether or not PHP will recognize code between
    ; <? and ?> tags as PHP source which should be processed as such. It is
    ; generally recommended that <?php and ?> should be used and that this feature
    ; should be disabled, as enabling it may result in issues when generating XML
    ; documents, however this remains supported for backward compatibility reasons.
    ; Note that this directive does not control the <?= shorthand tag, which can be
    ; used regardless of this directive.
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; http://php.net/short-open-tag
    short_open_tag = Off
    ; Allow ASP-style <% %> tags.
    ; http://php.net/asp-tags
    asp_tags = Off
    ; The number of significant digits displayed in floating point numbers.
    ; http://php.net/precision
    precision = 14
    ; Output buffering is a mechanism for controlling how much output data
    ; (excluding headers and cookies) PHP should keep internally before pushing that
    ; data to the client. If your application's output exceeds this setting, PHP
    ; will send that data in chunks of roughly the size you specify.
    ; Turning on this setting and managing its maximum buffer size can yield some
    ; interesting side-effects depending on your application and web server.
    ; You may be able to send headers and cookies after you've already sent output
    ; through print or echo. You also may see performance benefits if your server is
    ; emitting less packets due to buffered output versus PHP streaming the output
    ; as it gets it. On production servers, 4096 bytes is a good setting for performance
    ; reasons.
    ; Note: Output buffering can also be controlled via Output Buffering Control
    ; functions.
    ; Possible Values:
    ; On = Enabled and buffer is unlimited. (Use with caution)
    ; Off = Disabled
    ; Integer = Enables the buffer and sets its maximum size in bytes.
    ; Note: This directive is hardcoded to Off for the CLI SAPI
    ; Default Value: Off
    ; Development Value: 4096
    ; Production Value: 4096
    ; http://php.net/output-buffering
    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.
    ; http://php.net/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.
    ; http://php.net/zlib.output-compression
    zlib.output_compression = Off
    ; http://php.net/zlib.output-compression-level
    ;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.
    ; http://php.net/zlib.output-handler
    ;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.
    ; http://php.net/implicit-flush
    ; Note: This directive is hardcoded to On for the CLI SAPI
    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 = 17
    ; 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.
    ; http://php.net/open-basedir
    open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/rutorrent/conf/:/usr/share/webapps/rutorrent/php/:/usr/share/webapps/rutorrent/
    ; 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.
    ; http://php.net/disable-functions
    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.
    ; http://php.net/disable-classes
    disable_classes =
    ; Colors for Syntax Highlighting mode. Anything that's acceptable in
    ; <span style="color: ???????"> would work.
    ; http://php.net/syntax-highlighting
    ;highlight.string = #DD0000
    ;highlight.comment = #FF9900
    ;highlight.keyword = #007700
    ;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 requests, which may end up
    ; being interrupted by the user or a browser timing out. PHP's default behavior
    ; is to disable this feature.
    ; http://php.net/ignore-user-abort
    ;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.
    ; http://php.net/realpath-cache-size
    ;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.
    ; http://php.net/realpath-cache-ttl
    ;realpath_cache_ttl = 120
    ; Enables or disables the circular reference collector.
    ; http://php.net/zend.enable-gc
    zend.enable_gc = On
    ; If enabled, scripts may be written in encodings that are incompatible with
    ; the scanner. CP936, Big5, CP949 and Shift_JIS are the examples of such
    ; encodings. To use this feature, mbstring extension must be enabled.
    ; Default: Off
    ;zend.multibyte = Off
    ; Allows to set the default encoding for the scripts. This value will be used
    ; unless "declare(encoding=...)" directive appears at the top of the script.
    ; Only affects if zend.multibyte is set.
    ; Default: ""
    ;zend.script_encoding =
    ; Miscellaneous ;
    ; 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.
    ; http://php.net/expose-php
    expose_php = On
    ; Resource Limits ;
    ; Maximum execution time of each script, in seconds
    ; http://php.net/max-execution-time
    ; Note: This directive is hardcoded to 0 for the CLI SAPI
    max_execution_time = 30
    ; Maximum amount of time each script may spend parsing request data. It's a good
    ; idea to limit this time on productions servers in order to eliminate unexpectedly
    ; long running scripts.
    ; Note: This directive is hardcoded to -1 for the CLI SAPI
    ; Default Value: -1 (Unlimited)
    ; Development Value: 60 (60 seconds)
    ; Production Value: 60 (60 seconds)
    ; http://php.net/max-input-time
    max_input_time = 60
    ; Maximum input variable nesting level
    ; http://php.net/max-input-nesting-level
    ;max_input_nesting_level = 64
    ; How many GET/POST/COOKIE input variables may be accepted
    ; max_input_vars = 1000
    ; Maximum amount of memory a script may consume (128MB)
    ; http://php.net/memory-limit
    memory_limit = 128M
    ; Error handling and logging ;
    ; This directive informs PHP of which errors, warnings and notices you would like
    ; it to take action for. The recommended way of setting values for this
    ; directive is through the use of the error level constants and bitwise
    ; operators. The error level constants are below here for convenience as well as
    ; some common settings and their meanings.
    ; By default, PHP is set to take action on all errors, notices and warnings EXCEPT
    ; those related to E_NOTICE and E_STRICT, which together cover best practices and
    ; recommended coding standards in PHP. For performance reasons, this is the
    ; recommend error reporting setting. Your production server shouldn't be wasting
    ; resources complaining about best practices and coding standards. That's what
    ; development servers and development settings are for.
    ; Note: The php.ini-development file has this setting as E_ALL. This
    ; means it pretty much reports everything which is exactly what you want during
    ; development and early testing.
    ; Error Level Constants:
    ; E_ALL - All errors and warnings (includes E_STRICT as of PHP 5.4.0)
    ; 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
    ; E_DEPRECATED - warn about code that will not work in future versions
    ; of PHP
    ; E_USER_DEPRECATED - user-generated deprecation warnings
    ; Common Values:
    ; E_ALL (Show all errors, warnings and notices including coding standards.)
    ; E_ALL & ~E_NOTICE (Show all errors, except for notices)
    ; E_ALL & ~E_NOTICE & ~E_STRICT (Show all errors, except for notices and coding standards warnings.)
    ; E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (Show only errors)
    ; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
    ; Development Value: E_ALL
    ; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; http://php.net/error-reporting
    error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; This directive controls whether or not and where PHP will output errors,
    ; notices and warnings too. Error output is very useful during development, but
    ; it could be very dangerous in production environments. Depending on the code
    ; which is triggering the error, sensitive information could potentially leak
    ; out of your application such as database usernames and passwords or worse.
    ; It's recommended that errors be logged on production servers rather than
    ; having the errors sent to STDOUT.
    ; Possible Values:
    ; Off = Do not display any errors
    ; stderr = Display errors to STDERR (affects only CGI/CLI binaries!)
    ; On or stdout = Display errors to STDOUT
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/display-errors
    display_errors = Off
    ; The display of errors which occur during PHP's startup sequence are handled
    ; separately from display_errors. PHP's default behavior is to suppress those
    ; errors from clients. Turning the display of startup errors on can be useful in
    ; debugging configuration problems. But, it's strongly recommended that you
    ; leave this setting off on production servers.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/display-startup-errors
    display_startup_errors = Off
    ; Besides displaying errors, PHP can also log errors to locations such as a
    ; server-specific log, STDERR, or a location specified by the error_log
    ; directive found below. While errors should not be displayed on productions
    ; servers they should still be monitored and logging is a great way to do that.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: On
    ; http://php.net/log-errors
    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.
    ; http://php.net/log-errors-max-len
    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.
    ; http://php.net/ignore-repeated-errors
    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.
    ; http://php.net/ignore-repeated-source
    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
    ; http://php.net/report-memleaks
    report_memleaks = On
    ; This setting is on by default.
    ;report_zend_debug = 0
    ; Store the last error/warning message in $php_errormsg (boolean). Setting this value
    ; to On can assist in debugging and is appropriate for development servers. It should
    ; however be disabled on production servers.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/track-errors
    track_errors = Off
    ; Turn off normal error reporting and emit XML-RPC error XML
    ; http://php.net/xmlrpc-errors
    ;xmlrpc_errors = 0
    ; An XML-RPC faultCode
    ;xmlrpc_error_number = 0
    ; When PHP displays or logs an error, it has the capability of formatting the
    ; error message as HTML for easier reading. This directive controls whether
    ; the error message is formatted as HTML or not.
    ; Note: This directive is hardcoded to Off for the CLI SAPI
    ; Default Value: On
    ; Development Value: On
    ; Production value: On
    ; http://php.net/html-errors
    html_errors = On
    ; If html_errors is set to On *and* docref_root is not empty, then 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://php.net/docs
    ; 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. PHP's default behavior is to leave these settings empty, in which
    ; case no links to documentation are generated.
    ; Note: Never use this feature for production boxes.
    ; http://php.net/docref-root
    ; Examples
    ;docref_root = "/phpmanual/"
    ; http://php.net/docref-ext
    ;docref_ext = .html
    ; String to output before an error message. PHP's default behavior is to leave
    ; this setting blank.
    ; http://php.net/error-prepend-string
    ; Example:
    ;error_prepend_string = "<span style='color: #ff0000'>"
    ; String to output after an error message. PHP's default behavior is to leave
    ; this setting blank.
    ; http://php.net/error-append-string
    ; Example:
    ;error_append_string = "</span>"
    ; Log errors to specified file. PHP's default behavior is to leave this value
    ; empty.
    ; http://php.net/error-log
    ; Example:
    ;error_log = php_errors.log
    ; Log errors to syslog (Event Log on Windows).
    ;error_log = syslog
    ;windows.show_crt_warning
    ; Default value: 0
    ; Development value: 0
    ; Production value: 0
    ; Data Handling ;
    ; The separator used in PHP generated URLs to separate arguments.
    ; PHP's default setting is "&".
    ; http://php.net/arg-separator.output
    ; Example:
    ;arg_separator.output = "&amp;"
    ; List of separator(s) used by PHP to parse input URLs into variables.
    ; PHP's default setting is "&".
    ; NOTE: Every character in this directive is considered as separator!
    ; http://php.net/arg-separator.input
    ; Example:
    ;arg_separator.input = ";&"
    ; This directive determines which super global arrays are registered when PHP
    ; starts up. G,P,C,E & S are abbreviations for the following respective super
    ; globals: GET, POST, COOKIE, ENV and SERVER. There is a performance penalty
    ; paid for the registration of these arrays and because ENV is not as commonly
    ; used as the others, ENV is not recommended on productions servers. You
    ; can still get access to the environment variables through getenv() should you
    ; need to.
    ; Default Value: "EGPCS"
    ; Development Value: "GPCS"
    ; Production Value: "GPCS";
    ; http://php.net/variables-order
    variables_order = "GPCS"
    ; This directive determines which super global data (G,P,C,E & S) should
    ; be registered into the super global array REQUEST. If so, it also determines
    ; the order in which that data is registered. The values for this directive are
    ; specified in the same manner as the variables_order directive, EXCEPT one.
    ; Leaving this value empty will cause PHP to use the value set in the
    ; variables_order directive. It does not mean it will leave the super globals
    ; array REQUEST empty.
    ; Default Value: None
    ; Development Value: "GP"
    ; Production Value: "GP"
    ; http://php.net/request-order
    request_order = "GP"
    ; This directive determines whether PHP registers $argv & $argc each time it
    ; runs. $argv contains an array of all the arguments passed to PHP when a script
    ; is invoked. $argc contains an integer representing the number of arguments
    ; that were passed when the script was invoked. These arrays are extremely
    ; useful when running scripts from the command line. When this directive is
    ; enabled, registering these variables consumes CPU cycles and memory each time
    ; a script is executed. For performance reasons, this feature should be disabled
    ; on production servers.
    ; Note: This directive is hardcoded to On for the CLI SAPI
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; http://php.net/register-argc-argv
    register_argc_argv = Off
    ; When enabled, the ENV, REQUEST and SERVER 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 directive register_argc_argv must be disabled
    ; for this directive to have any affect.
    ; http://php.net/auto-globals-jit
    auto_globals_jit = On
    ; Whether PHP will read the POST data.
    ; This option is enabled by default.
    ; Most likely, you won't want to disable this option globally. It causes $_POST
    ; and $_FILES to always be empty; the only way you will be able to read the
    ; POST data will be through the php://input stream wrapper. This can be useful
    ; to proxy requests or to process the POST data in a memory efficient fashion.
    ; http://php.net/enable-post-data-reading
    ;enable_post_data_reading = Off
    ; Maximum size of POST data that PHP will accept.
    ; Its value may be 0 to disable the limit. It is ignored if POST data reading
    ; is disabled through enable_post_data_reading.
    ; http://php.net/post-max-size
    post_max_size = 8M
    ; Automatically add files before PHP document.
    ; http://php.net/auto-prepend-file
    auto_prepend_file =
    ; Automatically add files after PHP document.
    ; http://php.net/auto-append-file
    auto_append_file =
    ; By default, PHP will output a character encoding using
    ; the Content-type: header. To disable sending of the charset, simply
    ; set it to be empty.
    ; PHP's built-in default is text/html
    ; http://php.net/default-mimetype
    default_mimetype = "text/html"
    ; PHP's default character set is set to empty.
    ; http://php.net/default-charset
    ;default_charset = "UTF-8"
    ; Always populate the $HTTP_RAW_POST_DATA variable. PHP's default behavior is
    ; to disable this feature. If post reading is disabled through
    ; enable_post_data_reading, $HTTP_RAW_POST_DATA is *NOT* populated.
    ; http://php.net/always-populate-raw-post-data
    ;always_populate_raw_post_data = On
    ; Paths and Directories ;
    ; UNIX: "/path1:/path2"
    include_path = ".:/usr/share/pear"
    ; Windows: "\path1;\path2"
    ;include_path = ".;c:\php\includes"
    ; PHP's default setting for include_path is ".;/path/to/php/pear"
    ; http://php.net/include-path
    ; 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
    ; http://php.net/doc-root
    doc_root =
    ; The directory under which PHP opens the script using /~username used only
    ; if nonempty.
    ; http://php.net/user-dir
    user_dir =
    ; Directory in which the loadable extensions (modules) reside.
    ; http://php.net/extension-dir
    extension_dir = "/usr/lib/php/modules/"
    ; On windows:
    ; extension_dir = "ext"
    ; Directory where the temporary files should be placed.
    ; Defaults to the system default (see sys_get_temp_dir)
    ; sys_temp_dir = "/tmp"
    ; 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.
    ; http://php.net/enable-dl
    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.**
    ; http://php.net/cgi.force-redirect
    ;cgi.force_redirect = 1
    ; if cgi.nph is enabled it will force cgi to always sent Status: 200 with
    ; every request. PHP's default behavior is to disable this feature.
    ;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.
    ; http://php.net/cgi.redirect-status-env
    ;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 its 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.
    ; http://php.net/cgi.fix-pathinfo
    ;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.
    ; http://php.net/fastcgi.impersonate
    ;fastcgi.impersonate = 1
    ; Disable logging through FastCGI connection. PHP's default behavior is to enable
    ; this feature.
    ;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.
    ; http://php.net/cgi.rfc2616-headers
    ;cgi.rfc2616_headers = 0
    ; File Uploads ;
    ; Whether to allow HTTP file uploads.
    ; http://php.net/file-uploads
    file_uploads = On
    ; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    ; http://php.net/upload-tmp-dir
    ;upload_tmp_dir =
    ; Maximum allowed size for uploaded files.
    ; http://php.net/upload-max-filesize
    upload_max_filesize = 2M
    ; Maximum number of files that can be uploaded via a single request
    max_file_uploads = 20
    ; Fopen wrappers ;
    ; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
    ; http://php.net/allow-url-fopen
    allow_url_fopen = On
    ; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
    ; http://php.net/allow-url-include
    allow_url_include = Off
    ; Define the anonymous ftp password (your email address). PHP's default setting
    ; for this is empty.
    ; http://php.net/from
    ;from="[email protected]"
    ; Define the User-Agent string. PHP's default setting for this is empty.
    ; http://php.net/user-agent
    ;user_agent="PHP"
    ; Default timeout for socket based streams (seconds)
    ; http://php.net/default-socket-timeout
    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.
    ; http://php.net/auto-detect-line-endings
    ;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
    ; ... or with a path:
    ; extension=/path/to/extension/msql.so
    ; If you only provide the name of the extension, PHP will look for it in its
    ; default extension directory.
    ;extension=bcmath.so
    ;extension=bz2.so
    ;extension=calendar.so
    extension=curl.so
    ;extension=dba.so
    ;extension=enchant.so
    ;extension=exif.so
    ;extension=ftp.so
    ;extension=gd.so
    extension=gettext.so
    ;extension=gmp.so
    ;extension=iconv.so
    ;extension=imap.so
    ;extension=intl.so
    ;extension=ldap.so
    ;extension=mcrypt.so
    ;extension=mssql.so
    ;extension=mysqli.so
    ;extension=mysql.so
    ;extension=odbc.so
    ;zend_extension=opcache.so
    ;extension=openssl.so
    ;extension=pdo_mysql.so
    ;extension=pdo_odbc.so
    ;extension=pdo_pgsql.so
    ;extension=pdo_sqlite.so
    ;extension=pgsql.so
    ;extension=phar.so
    ;extension=posix.so
    ;extension=pspell.so
    ;extension=shmop.so
    ;extension=snmp.so
    ;extension=soap.so
    ;extension=sockets.so
    ;extension=sqlite3.so
    ;extension=sysvmsg.so
    ;extension=sysvsem.so
    ;extension=sysvshm.so
    ;extension=tidy.so
    ;extension=xmlrpc.so
    ;extension=xsl.so
    ;extension=zip.so
    ; Module Settings ;
    [CLI Server]
    ; Whether the CLI web server uses ANSI color coding in its terminal output.
    cli_server.color = On
    [Date]
    ; Defines the default timezone used by the date functions
    ; http://php.net/date.timezone
    ;date.timezone =
    ; http://php.net/date.default-latitude
    ;date.default_latitude = 31.7667
    ; http://php.net/date.default-longitude
    ;date.default_longitude = 35.2333
    ; http://php.net/date.sunrise-zenith
    ;date.sunrise_zenith = 90.583333
    ; http://php.net/date.sunset-zenith
    ;date.sunset_zenith = 90.583333
    [filter]
    ; http://php.net/filter.default
    ;filter.default = unsafe_raw
    ; http://php.net/filter.default-flags
    ;filter.default_flags =
    [iconv]
    ;iconv.input_encoding = ISO-8859-1
    ;iconv.internal_encoding = ISO-8859-1
    ;iconv.output_encoding = ISO-8859-1
    [intl]
    ;intl.default_locale =
    ; This directive allows you to produce PHP errors when some error
    ; happens within intl functions. The value is the level of the error produced.
    ; Default is 0, which does not produce any errors.
    ;intl.error_level = E_WARNING
    [sqlite]
    ; http://php.net/sqlite.assoc-case
    ;sqlite.assoc_case = 0
    [sqlite3]
    ;sqlite3.extension_dir =
    [Pcre]
    ;PCRE library backtracking limit.
    ; http://php.net/pcre.backtrack-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).
    ; http://php.net/pcre.recursion-limit
    ;pcre.recursion_limit=100000
    [Pdo]
    ; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off"
    ; http://php.net/pdo-odbc.connection-pooling
    ;pdo_odbc.connection_pooling=strict
    ;pdo_odbc.db2_instance_name
    [Pdo_mysql]
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/pdo_mysql.cache_size
    pdo_mysql.cache_size = 2000
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/pdo_mysql.default-socket
    pdo_mysql.default_socket=
    [Phar]
    ; http://php.net/phar.readonly
    ;phar.readonly = On
    ; http://php.net/phar.require-hash
    ;phar.require_hash = On
    ;phar.cache_list =
    [mail function]
    ; For Win32 only.
    ; http://php.net/smtp
    SMTP = localhost
    ; http://php.net/smtp-port
    smtp_port = 25
    ; For Win32 only.
    ; http://php.net/sendmail-from
    ;sendmail_from = [email protected]
    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    ; http://php.net/sendmail-path
    ;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 =
    ; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
    mail.add_x_header = On
    ; The path to a log file that will log all mail() calls. Log entries include
    ; the full path of the script, line number, To address and headers.
    ;mail.log =
    ; Log mail to syslog (Event Log on Windows).
    ;mail.log = syslog
    [SQL]
    ; http://php.net/sql.safe-mode
    sql.safe_mode = Off
    [ODBC]
    ; http://php.net/odbc.default-db
    ;odbc.default_db = Not yet implemented
    ; http://php.net/odbc.default-user
    ;odbc.default_user = Not yet implemented
    ; http://php.net/odbc.default-pw
    ;odbc.default_pw = Not yet implemented
    ; Controls the ODBC cursor model.
    ; Default: SQL_CURSOR_STATIC (default).
    ;odbc.default_cursortype
    ; Allow or prevent persistent links.
    ; http://php.net/odbc.allow-persistent
    odbc.allow_persistent = On
    ; Check that a connection is still valid before reuse.
    ; http://php.net/odbc.check-persistent
    odbc.check_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/odbc.max-persistent
    odbc.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ; http://php.net/odbc.max-links
    odbc.max_links = -1
    ; Handling of LONG fields. Returns number of bytes to variables. 0 means
    ; passthru.
    ; http://php.net/odbc.defaultlrl
    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 odbc.defaultlrl and odbc.defaultbinmode
    ; http://php.net/odbc.defaultbinmode
    odbc.defaultbinmode = 1
    ;birdstep.max_links = -1
    [Interbase]
    ; Allow or prevent persistent links.
    ibase.allow_persistent = 1
    ; Maximum number of persistent links. -1 means no limit.
    ibase.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ibase.max_links = -1
    ; Default database name for ibase_connect().
    ;ibase.default_db =
    ; Default username for ibase_connect().
    ;ibase.default_user =
    ; Default password for ibase_connect().
    ;ibase.default_password =
    ; Default charset for ibase_connect().
    ;ibase.default_charset =
    ; Default timestamp format.
    ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
    ; Default date format.
    ibase.dateformat = "%Y-%m-%d"
    ; Default time format.
    ibase.timeformat = "%H:%M:%S"
    [MySQL]
    ; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
    ; http://php.net/mysql.allow_local_infile
    mysql.allow_local_infile = On
    ; Allow or prevent persistent links.
    ; http://php.net/mysql.allow-persistent
    mysql.allow_persistent = On
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/mysql.cache_size
    mysql.cache_size = 2000
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/mysql.max-persistent
    mysql.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ; http://php.net/mysql.max-links
    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.
    ; http://php.net/mysql.default-port
    mysql.default_port =
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/mysql.default-socket
    mysql.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysql.default-host
    mysql.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysql.default-user
    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.
    ; http://php.net/mysql.default-password
    mysql.default_password =
    ; Maximum time (in seconds) for connect timeout. -1 means no limit
    ; http://php.net/mysql.connect-timeout
    mysql.connect_timeout = 60
    ; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
    ; SQL-Errors will be displayed.
    ; http://php.net/mysql.trace-mode
    mysql.trace_mode = Off
    [MySQLi]
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/mysqli.max-persistent
    mysqli.max_persistent = -1
    ; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
    ; http://php.net/mysqli.allow_local_infile
    ;mysqli.allow_local_infile = On
    ; Allow or prevent persistent links.
    ; http://php.net/mysqli.allow-persistent
    mysqli.allow_persistent = On
    ; Maximum number of links. -1 means no limit.
    ; http://php.net/mysqli.max-links
    mysqli.max_links = -1
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/mysqli.cache_size
    mysqli.cache_size = 2000
    ; 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.
    ; http://php.net/mysqli.default-port
    mysqli.default_port = 3306
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/mysqli.default-socket
    mysqli.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysqli.default-host
    mysqli.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysqli.default-user
    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.
    ; http://php.net/mysqli.default-pw
    mysqli.default_pw =
    ; Allow or prevent reconnect
    mysqli.reconnect = Off
    [mysqlnd]
    ; Enable / Disable collection of general statistics by mysqlnd which can be
    ; used to tune and monitor MySQL operations.
    ; http://php.net/mysqlnd.collect_statistics
    mysqlnd.collect_statistics = On
    ; Enable / Disable collection of memory usage statistics by mysqlnd which can be
    ; used to tune and monitor MySQL operations.
    ; http://php.net/mysqlnd.collect_memory_statistics
    mysqlnd.collect_memory_statistics = Off
    ; Size of a pre-allocated buffer used when sending commands to MySQL in bytes.
    ; http://php.net/mysqlnd.net_cmd_buffer_size
    ;mysqlnd.net_cmd_buffer_size = 2048
    ; Size of a pre-allocated buffer used for reading data sent by the server in
    ; bytes.
    ; http://php.net/mysqlnd.net_read_buffer_size
    ;mysqlnd.net_read_buffer_size = 32768
    [OCI8]
    ; Connection: Enables privileged connections using external
    ; credentials (OCI_SYSOPER, OCI_SYSDBA)
    ; http://php.net/oci8.privileged-connect
    ;oci8.privileged_connect = Off
    ; Connection: The maximum number of persistent OCI8 connections per
    ; process. Using -1 means no limit.
    ; http://php.net/oci8.max-persistent
    ;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.
    ; http://php.net/oci8.persistent-timeout
    ;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.
    ; http://php.net/oci8.ping-interval
    ;oci8.ping_interval = 60
    ; Connection: Set this to a user chosen connection class to be used
    ; for all pooled server requests with Oracle 11g Database Resident
    ; Connection Pooling (DRCP). To use DRCP, this value should be set to
    ; the same string for all web servers running the same application,
    ; the database pool must be configured, and the connection string must
    ; specify to use a pooled server.
    ;oci8.connection_class =
    ; High Availability: Using On lets PHP receive Fast Application
    ; Notification (FAN) events generated when a database node fails. The
    ; database must also be configured to post FAN events.
    ;oci8.events = Off
    ; Tuning: This option enables statement

    Hi comrades,
    I use rtorrent in terminal without problems but recently I got interested in rutorrent.
    I've been following the rtorrent wiki and rutorrent wiki to get to this point.
    First of all rtorrent is working fine in terminal, but with rutorrent I only get to this far: http://i637.photobucket.com/albums/uu93 … 1403737709
    As you can see in the upeer right of the image it's trying to connect and in the log section is throwing me this:
    [25.06.2014 18:37:22] WebUI started.
    [25.06.2014 18:37:23] Bad response from server: (200 [parsererror,getplugins]) <?php require_once( "util.php" ); require_once( "settings.php" ); function pluginsSort($a, $b) { $lvl1 = (float) $a["info"]["plugin.runlevel"]; $lvl2 = (float) $b["info"]["plugin.runlevel"]; if($lvl1>$lvl2) return(1); if($lvl1<$lvl2) return(-1); return( strcmp($a["name"],$b["name"]) ); } function getFlag($permissions,$pname,$fname) { $ret = true; if(array_key_exists($pname,$permissions) && array_key_exists($fname,$permissions[$pname])) $ret = $permissions[$pname][$fname]; else if(array_key_exists("default",$permissions) && array_key_exists($fname,$permissions["default"])) $ret = $permissions["default"][$fname]; return($ret); } function getPluginInfo( $name, $permissions ) { $info = array( 'rtorrent.need'=>1, 'rtorrent.remote'=>'ok', 'rtorrent.external.warning'=>array(), 'rtorrent.external.error'=>array(), 'rtorrent.script.error'=>array(), 'rtorrent.php.error'=>array(), 'rtorrent.version'=>0x802, 'rtorrent.version.readable'=>'0.8.2', 'plugin.may_be_shutdowned'=>1, 'plugin.may_be_launched'=>1, 'plugin.runlevel'=>10.0, 'plugin.description'=>'', 'plugin.author'=>'unknown', 'plugin.dependencies'=>array(), 'php.version'=>0x50000, 'php.version.readable'=>'5.0.0', 'php.extensions.warning'=>array(), 'php.extensions.error'=>array(), 'web.external.warning'=>array(), 'web.external.error'=>array(), 'plugin.help'=>'', ); $fname = "../plugins/".$name."/plugin.info"; if(is_readable($fname)) { $lines = file($fname); foreach($lines as $line) { $fields = explode(":",$line,2); if(count($fields)==2) { $value = addcslashes(trim($fields[1]),"\\\'\"\n\r\t"); $field = trim($fields[0]); switch($field) { case "plugin.help": case "plugin.author": case "plugin.description": case "rtorrent.remote": { $info[$field] = $value; break; } case "plugin.may_be_shutdowned": case "plugin.may_be_launched": case "rtorrent.need": { $info[$field] = intval($value); break; } case "plugin.version": case "plugin.runlevel": { $info[$field] = floatval($value); break; } case "rtorrent.version": case "php.version": { $version = explode('.', $value); $info[$field] = (intval($version[0])<<16) + (intval($version[1])<<8) + intval($version[2]); $info[$field.'.readable'] = $value; break; } case "plugin.dependencies": case "rtorrent.external.warning": case "rtorrent.external.error": case "rtorrent.script.error": case "rtorrent.php.error": case "web.external.warning": case "web.external.error": case "php.extensions.warning": case "php.extensions.error": { $info[$field] = explode(',', $value); break; } // for compatibility case "author": case "description": { $info['plugin.'.$field] = $value; break; } case "remote": { $info['rtorrent.remote'] = $value; break; } case "need_rtorrent": { $info['rtorrent.need'] = intval($value); break; } case "version": case "runlevel": { $info['plugin.'.$field] = floatval($value); break; } } } } $perms = 0; if($permissions!==false) { if(!getFlag($permissions,$name,"enabled")) return(false); $flags = array( "canChangeToolbar" => 0x0001, "canChangeMenu" => 0x0002, "canChangeOptions" => 0x0004, "canChangeTabs" => 0x0008, "canChangeColumns" => 0x0010, "canChangeStatusBar" => 0x0020, "canChangeCategory" => 0x0040, "canBeShutdowned" => 0x0080, /* "canBeLaunched" => 0x0100, */ ); foreach($flags as $flagName=>$flagVal) if(!getFlag($permissions,$name,$flagName)) $perms|=$flagVal; if(!$info["plugin.may_be_shutdowned"]) $perms|=$flags["canBeShutdowned"]; } $info["perms"] = $perms; } return(array_key_exists("plugin.version",$info) ? $info : false); } function findRemoteEXE( $exe, $err, &$remoteRequests ) { $st = getSettingsPath().'/'.rand(); if(!array_key_exists($exe,$remoteRequests)) { $path=realpath(dirname('.')); global $pathToExternals; $add = ''; if(isset($pathToExternals[$exe]) && !empty($pathToExternals[$exe])) $add = " ".escapeshellarg($pathToExternals[$exe]); $req = new rXMLRPCRequest(new rXMLRPCCommand("execute", array( "sh", "-c", escapeshellarg(addslash($path)."test.sh")." ".$exe." ".escapeshellarg($st).$add))); $req->run(); $remoteRequests[$exe] = array( "path"=>$st, "err"=>array() ); } $remoteRequests[$exe]["err"][] = $err; } function testRemoteRequests($remoteRequests) { $ret = ""; foreach($remoteRequests as $exe=>$info) { $file = $info["path"].$exe.".found"; if(!is_file($file)) { foreach($info["err"] as $err) $ret.=$err; } else @unlink($file); } return($ret); } $jResult = "theWebUI.deltaTime = 0;\n"; $access = getConfFile('access.ini'); if(!$access) $access = "../conf/access.ini"; $permissions = parse_ini_file($access); $settingsFlags = array( "showDownloadsPage" => 0x0001, "showConnectionPage" => 0x0002, "showBittorentPage" => 0x0004, "showAdvancedPage" => 0x0008, "showPluginsTab" => 0x0010, "canChangeULRate" => 0x0020, "canChangeDLRate" => 0x0040, "canChangeTorrentProperties" => 0x0080, ); $perms = 0; foreach($settingsFlags as $flagName=>$flagVal) if(array_key_exists($flagName,$permissions) && $permissions[$flagName]) $perms|=$flagVal; $jResult .= "theWebUI.showFlags = ".$perms.";\n"; $jResult .= "theURLs.XMLRPCMountPoint = '".$XMLRPCMountPoint."';\n"; $jResult.="theWebUI.systemInfo = {};\ntheWebUI.systemInfo.php = { canHandleBigFiles : ".((PHP_INT_SIZE<=4) ? "false" : "true")." };\n"; if($handle = opendir('../plugins')) { ignore_user_abort(true); set_time_limit(0); makeDirectory(getTempDirectory()); if(!@file_exists($tempDirectory.'/.') || !is_readable($tempDirectory) || !is_writable($tempDirectory)) $jResult.="noty(theUILang.badTempPath+' (".$tempDirectory.")','error');"; if(!function_exists('preg_match_all')) { $jResult.="noty(theUILang.PCRENotFound,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: false, iVersion : 0, version : '?', libVersion : '?' };\n"; } else { $remoteRequests = array(); $theSettings = rTorrentSettings::get(true); if(!$theSettings->linkExist) { $jResult.="noty(theUILang.badLinkTorTorrent,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: false, iVersion : 0, version : '?', libVersion : '?', apiVersion : 0 };\n"; } else { if($theSettings->idNotFound) $jResult.="noty(theUILang.idNotFound,'error');"; $jResult.="theWebUI.systemInfo.rTorrent = { started: true, iVersion : ".$theSettings->iVersion.", version : '". $theSettings->version."', libVersion : '".$theSettings->libVersion."', apiVersion : ".$theSettings->apiVersion." };\n"; if($theSettings->mostOfMethodsRenamed) $jResult.="theWebUI.systemInfo.rTorrent.newMethodsSet = true;\n"; if($do_diagnostic) { $up = getUploadsPath(); $st = getSettingsPath(); @chmod($up,$profileMask); @chmod($st,$profileMask); @chmod('./test.sh',$profileMask & 0755); if(PHP_USE_GZIP && (findEXE('gzip')===false)) { @define('PHP_USE_GZIP', false); $jResult.="noty(theUILang.gzipNotFound,'error');"; } if(PHP_INT_SIZE<=4) { if(findEXE('stat')===false) $jResult.="noty(theUILang.statNotFoundW,'error');"; findRemoteEXE('stat',"noty(theUILang.statNotFound,'error');",$remoteRequests); } if(!@file_exists($up.'/.') || !is_readable($up) || !is_writable($up)) $jResult.="noty(theUILang.badUploadsPath+' (".$up.")','error');"; if(!@file_exists($st.'/.') || !is_readable($st) || !is_writable($st)) $jResult.="noty(theUILang.badSettingsPath+' (".$st.")','error');"; if(isLocalMode() && !$theSettings->idNotFound) { if($theSettings->uid<0) $jResult.="noty(theUILang.cantObtainUser,'error');"; else { if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$tempDirectory,0x0007)) $jResult.="noty(theUILang.badTempPath2+' (".$tempDirectory.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$up,0x0007)) $jResult.="noty(theUILang.badUploadsPath2+' (".$up.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$st,0x0007)) $jResult.="noty(theUILang.badSettingsPath2+' (".$st.")','error');"; if(!isUserHavePermission($theSettings->uid,$theSettings->gid,'./test.sh',0x0005)) $jResult.="noty(theUILang.badTestPath+' (".realpath('./test.sh').")','error');"; } } if($theSettings->badXMLRPCVersion) $jResult.="noty(theUILang.badXMLRPCVersion,'error');"; } } $plg = getConfFile('plugins.ini'); if(!$plg) $plg = "../conf/plugins.ini"; $permissions = parse_ini_file($plg,true); $init = array(); $names = array(); $disabled = array(); $phpVersion = phpversion(); if( ($pos=strpos($phpVersion, '-'))!==false ) $phpVersion = substr($phpVersion,0,$pos); $phpIVersion = explode('.',$phpVersion); $phpIVersion = (intval($phpIVersion[0])<<16) + (intval($phpIVersion[1])<<8) + intval($phpIVersion[2]); $phpRequired = false; $userPermissions = array( "__hash__"=>"plugins.dat" ); $cache = new rCache(); $cache->get($userPermissions); $cantBeShutdowned = 0x0080; $canBeLaunched = 0x0100; $disabledByUser = 0x8000; $loadedExtensions = array_map("strtolower",get_loaded_extensions()); while(false !== ($file = readdir($handle))) { if($file != "." && $file != ".." && is_dir('../plugins/'.$file)) { if(!array_key_exists($file,$userPermissions)) $userPermissions[$file] = true; $info = getPluginInfo( $file, $permissions ); if($info) { if( $info["plugin.may_be_launched"] && getFlag($permissions,$file,"enabled")=="user-defined") { $info["perms"] |= $canBeLaunched; if(!$userPermissions[$file]) { $info["perms"] |= $disabledByUser; $disabled[$file] = $info; $info = false; } } else $info["perms"] |= $cantBeShutdowned; } if($info!==false) { if(!$theSettings->linkExist && $info["rtorrent.need"]) { $disabled[$file] = $info; continue; } if($info['php.version']>$phpIVersion) { $jResult.="noty('".$file.": '+theUILang.badPHPVersion+' '+'".$info['php.version.readable']."'+'.','error');"; $disabled[$file] = $info; continue; } $extError = false; foreach( $info['php.extensions.error'] as $extension ) if(!in_array( $extension, $loadedExtensions )) { $jResult.="noty('".$file.": '+theUILang.phpExtensionNotFoundError+' ('+'".$extension."'+').','error');"; $extError = true; } if($extError) { $disabled[$file] = $info; continue; } if(count($info['web.external.error']) || count($info['web.external.warning']) || count($info['rtorrent.external.error']) || count($info['rtorrent.external.warning'])) eval( getPluginConf( $file ) ); foreach( $info['web.external.error'] as $external ) { if(findEXE($external)==false) { $jResult.="noty('".$file.": '+theUILang.webExternalNotFoundError+' ('+'".$external."'+').','error');"; $extError = true; } else if($external=='php') $phpRequired = true; } if($extError) { $disabled[$file] = $info; continue; } if($theSettings->linkExist) { if($info['rtorrent.version']>$theSettings->iVersion) { $jResult.="noty('".$file.": '+theUILang.badrTorrentVersion+' '+'".$info['rtorrent.version.readable']."'+'.','error');"; $disabled[$file] = $info; continue; } foreach( $info['rtorrent.external.error'] as $external ) { findRemoteEXE($external,"noty('".$file.": '+theUILang.rTorrentExternalNotFoundError+' ('+'".$external."'+').','error'); thePlugins.get('".$file."').disable();",$remoteRequests); if($external=='php') $phpRequired = true; } foreach( $info['rtorrent.script.error'] as $external ) { $fname = $rootPath.'/plugins/'.$file.'/'.$external; @chmod($fname,$profileMask & 0755); if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$fname,0x0005)) { $jResult.="noty('".$file.": '+theUILang.rTorrentBadScriptPath+' ('+'".$fname."'+').','error');"; $extError = true; } } if($extError) { $disabled[$file] = $info; continue; } foreach( $info['rtorrent.php.error'] as $external ) { $fname = $rootPath.'/plugins/'.$file.'/'.$external; @chmod($fname,$profileMask & 0644); if(!isUserHavePermission($theSettings->uid,$theSettings->gid,$fname,0x0004)) { $jResult.="noty('".$file.": '+theUILang.rTorrentBadPHPScriptPath+' ('+'".$fname."'+').','error');"; $extError = true; } } if($extError) { $disabled[$file] = $info; continue; } if(!isLocalMode()) { if($info["rtorrent.remote"]=="error") { $jResult.="noty('".$file.": '+theUILang.errMustBeInSomeHost,'error');"; $disabled[$file] = $info; continue; } if($do_diagnostic && ($info["rtorrent.remote"]=="warning")) $jResult.="noty('".$file.": '+theUILang.warnMustBeInSomeHost,'error');"; } } if($do_diagnostic) { if($theSettings->linkExist) foreach( $info['rtorrent.external.warning'] as $external ) findRemoteEXE($external,"noty('".$file.": '+theUILang.rTorrentExternalNotFoundWarning+' ('+'".$external."'+').','error');",$remoteRequests); foreach( $info['web.external.warning'] as $external ) if(findEXE($external)==false) $jResult.="noty('".$file.": '+theUILang.webExternalNotFoundWarning+' ('+'".$external."'+').','error');"; foreach( $info['php.extensions.warning'] as $extension ) if(!in_array( $extension, $loadedExtensions )) $jResult.="noty('".$file.": '+theUILang.phpExtensionNotFoundWarning+' ('+'".$extension."'+').','error');"; } $js = "../plugins/".$file."/init.js"; if(!is_readable($js)) $js = NULL; $php = "../plugins/".$file."/init.php"; if(!is_readable($php)) $php = NULL; $init[] = array( "js" => $js, "php" => $php, "info" => $info, "name" => $file ); $names[] = $file; } } } if($phpRequired) { $val = strtoupper(ini_get("register_argc_argv")); if( $val!=='' && $val!='ON' && $val!='1' && $val!='TRUE' ) $jResult.="noty(theUILang.phpParameterUnavailable,'error');"; } usort($init,"pluginsSort"); foreach($init as $plugin) { $jEnd = ''; $pInfo = $plugin["info"]; $deps = array_diff( $pInfo["plugin.dependencies"], $names ); if(count($deps)) { $jResult.="noty('".$plugin["name"].": '+theUILang.dependenceError+' ".implode(",",$deps)."','error');"; $disabled[$plugin["name"]] = $pInfo; continue; } $jResult.="(function () { var plugin = new rPlugin( '".$plugin["name"]."',".$pInfo["plugin.version"]. ",'".$pInfo["plugin.author"]."','".$pInfo["plugin.description"]."',".$pInfo["perms"].",'".$pInfo["plugin.help"]."' );\n"; if($plugin["php"]) require_once( $plugin["php"] ); else $theSettings->registerPlugin($plugin["name"],$pInfo["perms"]); if($plugin["js"]) { $js = file_get_contents($plugin["js"]); if($theSettings->isPluginRegistered($plugin["name"])) $jResult.=$js; else { if(strpos($js,"plugin.loadLang()")!==false) $jResult.="plugin.loadLang();"; } $jResult.="\n"; } $jResult.=$jEnd; $jResult.="\n})();"; } foreach($disabled as $name=>$pInfo) { $jResult.="(function () { var plugin = new rPlugin( '".$name."',".$pInfo["plugin.version"]. ",'".$pInfo["plugin.author"]."','".$pInfo["plugin.description"]."',".$pInfo["perms"].",'".$pInfo["plugin.help"]."' );\n"; $jResult.="plugin.disable(); "; if($pInfo["perms"] & $disabledByUser) $jResult.="plugin.unlaunch(); "; $jResult.="\n})();"; } $jResult.=testRemoteRequests($remoteRequests); $theSettings->store(); } closedir($handle); } cachedEcho($jResult,"application/javascript",true);
    [25.06.2014 18:37:23] Bad response from server: (200 [parsererror,getuisettings]) <?php require_once( 'util.php' ); $s = '{}'; $fname = getSettingsPath()."/uisettings.json"; $fo = fopen($fname, 'r'); if($fo!==false) { if(flock($fo, LOCK_SH)) { $s = @file_get_contents($fname); if($s==false) $s = '{}'; flock($fo, LOCK_UN); } fclose($fo); } cachedEcho($s,"application/json",true);
    For that log I believe I've a problem with permission, or rutorrent plugins.
    Here are my configuration files
    /etc/webapps/rutorrent/conf/config.php
    <?php
    // configuration parameters
    // for snoopy client
    @define('HTTP_USER_AGENT', 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0', true);
    @define('HTTP_TIME_OUT', 30, true); // in seconds
    @define('HTTP_USE_GZIP', true, true);
    $httpIP = null; // IP string. Or null for any.
    @define('RPC_TIME_OUT', 5, true); // in seconds
    @define('LOG_RPC_CALLS', false, true);
    @define('LOG_RPC_FAULTS', true, true);
    // for php
    @define('PHP_USE_GZIP', false, true);
    @define('PHP_GZIP_LEVEL', 2, true);
    $schedule_rand = 10; // rand for schedulers start, +0..X seconds
    $do_diagnostic = true;
    $log_file = '/tmp/errors.log'; // path to log file (comment or leave blank to disable logging)
    $saveUploadedTorrents = true; // Save uploaded torrents to profile/torrents directory or not
    $overwriteUploadedTorrents = false; // Overwrite existing uploaded torrents in profile/torrents directory or make unique name
    $topDirectory = '/'; // Upper available directory. Absolute path with trail slash.
    $forbidUserSettings = false;
    $scgi_port = 5000;
    $scgi_host = "127.0.0.1";
    // For web->rtorrent link through unix domain socket
    // (scgi_local in rtorrent conf file), change variables
    // above to something like this:
    // $scgi_port = 0;
    // $scgi_host = "unix:///tmp/rpc.socket";
    $XMLRPCMountPoint = "/RPC2"; // DO NOT DELETE THIS LINE!!! DO NOT COMMENT THIS LINE!!!
    $pathToExternals = array(
    "php" => '/usr/bin/php', // Something like /usr/bin/php. If empty, will be found in PATH.
    "curl" => '/usr/bin/curl', // Something like /usr/bin/curl. If empty, will be found in PATH.
    "gzip" => '/usr/bin/gzip', // Something like /usr/bin/gzip. If empty, will be found in PATH.
    "id" => '/usr/bin/id', // Something like /usr/bin/id. If empty, will be found in PATH.
    "stat" => '/usr/bin/stat', // Something like /usr/bin/stat. If empty, will be found in PATH.
    $localhosts = array( // list of local interfaces
    "127.0.0.1",
    "localhost",
    $profilePath = '../share'; // Path to user profiles
    $profileMask = 0777; // Mask for files and directory creation in user profiles.
    // Both Webserver and rtorrent users must have read-write access to it.
    // For example, if Webserver and rtorrent users are in the same group then the value may be 0770.
    $tempDirectory = null; // Temp directory. Absolute path with trail slash. If null, then autodetect will be used.
    ~/.rtorrent.rc
    scgi_port = localhost:5000
    directory = /home/milo/Downloads
    session = /home/milo/.rutorrent/.session
    schedule = watch_directory,5,5,load_start=/home/milo/Downloads/*.torrent
    schedule = low_diskspace,5,60,close_low_diskspace=100M
    port_range = 49152-50000
    check_hash = no
    encryption = allow_incoming,try_outgoing,enable_retry
    dht = auto
    dht_port = 6881
    peer_exchange = yes
    /etc/php/php.ini
    [PHP]
    ; About php.ini ;
    ; PHP's initialization file, generally called php.ini, is responsible for
    ; configuring many of the aspects of PHP's behavior.
    ; PHP attempts to find and load this configuration from a number of locations.
    ; The following is a summary of its search order:
    ; 1. SAPI module specific location.
    ; 2. The PHPRC environment variable. (As of PHP 5.2.0)
    ; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
    ; 4. Current working directory (except CLI)
    ; 5. The web server's directory (for SAPI modules), or directory of PHP
    ; (otherwise in Windows)
    ; 6. The directory from the --with-config-file-path compile time option, or the
    ; Windows directory (C:\windows or C:\winnt)
    ; See the PHP docs for more specific information.
    ; http://php.net/configuration.file
    ; 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 following the section heading [PATH=/www/mysite] only
    ; apply to PHP files in the /www/mysite directory. Directives
    ; following the section heading [HOST=www.example.com] only apply to
    ; PHP files served from www.example.com. Directives set in these
    ; special sections cannot be overridden by user-defined INI files or
    ; at runtime. Currently, [PATH=] and [HOST=] sections only work under
    ; CGI/FastCGI.
    ; http://php.net/ini.sections
    ; Directives are specified using the following syntax:
    ; directive = value
    ; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
    ; Directives are variables used to configure PHP or PHP extensions.
    ; There is no name validation. If PHP can't find an expected
    ; directive because it is not set or is mistyped, a default value will be used.
    ; 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), a quoted string ("bar"), or a reference to a
    ; previously set variable or directive (e.g. ${foo})
    ; Expressions in the INI file are limited to bitwise operators and parentheses:
    ; | bitwise OR
    ; ^ bitwise XOR
    ; & 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 ;
    ; PHP comes packaged with two INI files. One that is recommended to be used
    ; in production environments and one that is recommended to be used in
    ; development environments.
    ; php.ini-production contains settings which hold security, performance and
    ; best practices at its core. But please be aware, these settings may break
    ; compatibility with older or less security conscience applications. We
    ; recommending using the production ini in production and testing environments.
    ; php.ini-development is very similar to its production variant, except it's
    ; much more verbose when it comes to errors. We recommending using the
    ; development version only in development environments as errors shown to
    ; application users can inadvertently leak otherwise secure information.
    ; This is php.ini-production INI file.
    ; Quick Reference ;
    ; The following are all the settings which are different in either the production
    ; or development versions of the INIs with respect to PHP's default behavior.
    ; Please see the actual settings later in the document for more details as to why
    ; we recommend these changes in PHP's behavior.
    ; display_errors
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    ; display_startup_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; error_reporting
    ; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
    ; Development Value: E_ALL
    ; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; html_errors
    ; Default Value: On
    ; Development Value: On
    ; Production value: On
    ; log_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: On
    ; max_input_time
    ; Default Value: -1 (Unlimited)
    ; Development Value: 60 (60 seconds)
    ; Production Value: 60 (60 seconds)
    ; output_buffering
    ; Default Value: Off
    ; Development Value: 4096
    ; Production Value: 4096
    ; register_argc_argv
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; request_order
    ; Default Value: None
    ; Development Value: "GP"
    ; Production Value: "GP"
    ; session.gc_divisor
    ; Default Value: 100
    ; Development Value: 1000
    ; Production Value: 1000
    ; session.hash_bits_per_character
    ; Default Value: 4
    ; Development Value: 5
    ; Production Value: 5
    ; short_open_tag
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; track_errors
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; url_rewriter.tags
    ; Default Value: "a=href,area=href,frame=src,form=,fieldset="
    ; Development Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    ; Production Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    ; variables_order
    ; Default Value: "EGPCS"
    ; Development Value: "GPCS"
    ; Production Value: "GPCS"
    ; php.ini Options ;
    ; Name for user-defined php.ini (.htaccess) files. Default is ".user.ini"
    ;user_ini.filename = ".user.ini"
    ; To disable this feature set this option to empty value
    ;user_ini.filename =
    ; TTL for user-defined php.ini files (time-to-live) in seconds. Default is 300 seconds (5 minutes)
    ;user_ini.cache_ttl = 300
    ; Language Options ;
    ; Enable the PHP scripting language engine under Apache.
    ; http://php.net/engine
    engine = On
    ; This directive determines whether or not PHP will recognize code between
    ; <? and ?> tags as PHP source which should be processed as such. It is
    ; generally recommended that <?php and ?> should be used and that this feature
    ; should be disabled, as enabling it may result in issues when generating XML
    ; documents, however this remains supported for backward compatibility reasons.
    ; Note that this directive does not control the <?= shorthand tag, which can be
    ; used regardless of this directive.
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; http://php.net/short-open-tag
    short_open_tag = Off
    ; Allow ASP-style <% %> tags.
    ; http://php.net/asp-tags
    asp_tags = Off
    ; The number of significant digits displayed in floating point numbers.
    ; http://php.net/precision
    precision = 14
    ; Output buffering is a mechanism for controlling how much output data
    ; (excluding headers and cookies) PHP should keep internally before pushing that
    ; data to the client. If your application's output exceeds this setting, PHP
    ; will send that data in chunks of roughly the size you specify.
    ; Turning on this setting and managing its maximum buffer size can yield some
    ; interesting side-effects depending on your application and web server.
    ; You may be able to send headers and cookies after you've already sent output
    ; through print or echo. You also may see performance benefits if your server is
    ; emitting less packets due to buffered output versus PHP streaming the output
    ; as it gets it. On production servers, 4096 bytes is a good setting for performance
    ; reasons.
    ; Note: Output buffering can also be controlled via Output Buffering Control
    ; functions.
    ; Possible Values:
    ; On = Enabled and buffer is unlimited. (Use with caution)
    ; Off = Disabled
    ; Integer = Enables the buffer and sets its maximum size in bytes.
    ; Note: This directive is hardcoded to Off for the CLI SAPI
    ; Default Value: Off
    ; Development Value: 4096
    ; Production Value: 4096
    ; http://php.net/output-buffering
    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.
    ; http://php.net/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.
    ; http://php.net/zlib.output-compression
    zlib.output_compression = Off
    ; http://php.net/zlib.output-compression-level
    ;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.
    ; http://php.net/zlib.output-handler
    ;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.
    ; http://php.net/implicit-flush
    ; Note: This directive is hardcoded to On for the CLI SAPI
    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 = 17
    ; 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.
    ; http://php.net/open-basedir
    open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/rutorrent/conf/:/usr/share/webapps/rutorrent/php/:/usr/share/webapps/rutorrent/
    ; 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.
    ; http://php.net/disable-functions
    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.
    ; http://php.net/disable-classes
    disable_classes =
    ; Colors for Syntax Highlighting mode. Anything that's acceptable in
    ; <span style="color: ???????"> would work.
    ; http://php.net/syntax-highlighting
    ;highlight.string = #DD0000
    ;highlight.comment = #FF9900
    ;highlight.keyword = #007700
    ;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 requests, which may end up
    ; being interrupted by the user or a browser timing out. PHP's default behavior
    ; is to disable this feature.
    ; http://php.net/ignore-user-abort
    ;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.
    ; http://php.net/realpath-cache-size
    ;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.
    ; http://php.net/realpath-cache-ttl
    ;realpath_cache_ttl = 120
    ; Enables or disables the circular reference collector.
    ; http://php.net/zend.enable-gc
    zend.enable_gc = On
    ; If enabled, scripts may be written in encodings that are incompatible with
    ; the scanner. CP936, Big5, CP949 and Shift_JIS are the examples of such
    ; encodings. To use this feature, mbstring extension must be enabled.
    ; Default: Off
    ;zend.multibyte = Off
    ; Allows to set the default encoding for the scripts. This value will be used
    ; unless "declare(encoding=...)" directive appears at the top of the script.
    ; Only affects if zend.multibyte is set.
    ; Default: ""
    ;zend.script_encoding =
    ; Miscellaneous ;
    ; 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.
    ; http://php.net/expose-php
    expose_php = On
    ; Resource Limits ;
    ; Maximum execution time of each script, in seconds
    ; http://php.net/max-execution-time
    ; Note: This directive is hardcoded to 0 for the CLI SAPI
    max_execution_time = 30
    ; Maximum amount of time each script may spend parsing request data. It's a good
    ; idea to limit this time on productions servers in order to eliminate unexpectedly
    ; long running scripts.
    ; Note: This directive is hardcoded to -1 for the CLI SAPI
    ; Default Value: -1 (Unlimited)
    ; Development Value: 60 (60 seconds)
    ; Production Value: 60 (60 seconds)
    ; http://php.net/max-input-time
    max_input_time = 60
    ; Maximum input variable nesting level
    ; http://php.net/max-input-nesting-level
    ;max_input_nesting_level = 64
    ; How many GET/POST/COOKIE input variables may be accepted
    ; max_input_vars = 1000
    ; Maximum amount of memory a script may consume (128MB)
    ; http://php.net/memory-limit
    memory_limit = 128M
    ; Error handling and logging ;
    ; This directive informs PHP of which errors, warnings and notices you would like
    ; it to take action for. The recommended way of setting values for this
    ; directive is through the use of the error level constants and bitwise
    ; operators. The error level constants are below here for convenience as well as
    ; some common settings and their meanings.
    ; By default, PHP is set to take action on all errors, notices and warnings EXCEPT
    ; those related to E_NOTICE and E_STRICT, which together cover best practices and
    ; recommended coding standards in PHP. For performance reasons, this is the
    ; recommend error reporting setting. Your production server shouldn't be wasting
    ; resources complaining about best practices and coding standards. That's what
    ; development servers and development settings are for.
    ; Note: The php.ini-development file has this setting as E_ALL. This
    ; means it pretty much reports everything which is exactly what you want during
    ; development and early testing.
    ; Error Level Constants:
    ; E_ALL - All errors and warnings (includes E_STRICT as of PHP 5.4.0)
    ; 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
    ; E_DEPRECATED - warn about code that will not work in future versions
    ; of PHP
    ; E_USER_DEPRECATED - user-generated deprecation warnings
    ; Common Values:
    ; E_ALL (Show all errors, warnings and notices including coding standards.)
    ; E_ALL & ~E_NOTICE (Show all errors, except for notices)
    ; E_ALL & ~E_NOTICE & ~E_STRICT (Show all errors, except for notices and coding standards warnings.)
    ; E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (Show only errors)
    ; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
    ; Development Value: E_ALL
    ; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; http://php.net/error-reporting
    error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
    ; This directive controls whether or not and where PHP will output errors,
    ; notices and warnings too. Error output is very useful during development, but
    ; it could be very dangerous in production environments. Depending on the code
    ; which is triggering the error, sensitive information could potentially leak
    ; out of your application such as database usernames and passwords or worse.
    ; It's recommended that errors be logged on production servers rather than
    ; having the errors sent to STDOUT.
    ; Possible Values:
    ; Off = Do not display any errors
    ; stderr = Display errors to STDERR (affects only CGI/CLI binaries!)
    ; On or stdout = Display errors to STDOUT
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/display-errors
    display_errors = Off
    ; The display of errors which occur during PHP's startup sequence are handled
    ; separately from display_errors. PHP's default behavior is to suppress those
    ; errors from clients. Turning the display of startup errors on can be useful in
    ; debugging configuration problems. But, it's strongly recommended that you
    ; leave this setting off on production servers.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/display-startup-errors
    display_startup_errors = Off
    ; Besides displaying errors, PHP can also log errors to locations such as a
    ; server-specific log, STDERR, or a location specified by the error_log
    ; directive found below. While errors should not be displayed on productions
    ; servers they should still be monitored and logging is a great way to do that.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: On
    ; http://php.net/log-errors
    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.
    ; http://php.net/log-errors-max-len
    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.
    ; http://php.net/ignore-repeated-errors
    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.
    ; http://php.net/ignore-repeated-source
    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
    ; http://php.net/report-memleaks
    report_memleaks = On
    ; This setting is on by default.
    ;report_zend_debug = 0
    ; Store the last error/warning message in $php_errormsg (boolean). Setting this value
    ; to On can assist in debugging and is appropriate for development servers. It should
    ; however be disabled on production servers.
    ; Default Value: Off
    ; Development Value: On
    ; Production Value: Off
    ; http://php.net/track-errors
    track_errors = Off
    ; Turn off normal error reporting and emit XML-RPC error XML
    ; http://php.net/xmlrpc-errors
    ;xmlrpc_errors = 0
    ; An XML-RPC faultCode
    ;xmlrpc_error_number = 0
    ; When PHP displays or logs an error, it has the capability of formatting the
    ; error message as HTML for easier reading. This directive controls whether
    ; the error message is formatted as HTML or not.
    ; Note: This directive is hardcoded to Off for the CLI SAPI
    ; Default Value: On
    ; Development Value: On
    ; Production value: On
    ; http://php.net/html-errors
    html_errors = On
    ; If html_errors is set to On *and* docref_root is not empty, then 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://php.net/docs
    ; 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. PHP's default behavior is to leave these settings empty, in which
    ; case no links to documentation are generated.
    ; Note: Never use this feature for production boxes.
    ; http://php.net/docref-root
    ; Examples
    ;docref_root = "/phpmanual/"
    ; http://php.net/docref-ext
    ;docref_ext = .html
    ; String to output before an error message. PHP's default behavior is to leave
    ; this setting blank.
    ; http://php.net/error-prepend-string
    ; Example:
    ;error_prepend_string = "<span style='color: #ff0000'>"
    ; String to output after an error message. PHP's default behavior is to leave
    ; this setting blank.
    ; http://php.net/error-append-string
    ; Example:
    ;error_append_string = "</span>"
    ; Log errors to specified file. PHP's default behavior is to leave this value
    ; empty.
    ; http://php.net/error-log
    ; Example:
    ;error_log = php_errors.log
    ; Log errors to syslog (Event Log on Windows).
    ;error_log = syslog
    ;windows.show_crt_warning
    ; Default value: 0
    ; Development value: 0
    ; Production value: 0
    ; Data Handling ;
    ; The separator used in PHP generated URLs to separate arguments.
    ; PHP's default setting is "&".
    ; http://php.net/arg-separator.output
    ; Example:
    ;arg_separator.output = "&amp;"
    ; List of separator(s) used by PHP to parse input URLs into variables.
    ; PHP's default setting is "&".
    ; NOTE: Every character in this directive is considered as separator!
    ; http://php.net/arg-separator.input
    ; Example:
    ;arg_separator.input = ";&"
    ; This directive determines which super global arrays are registered when PHP
    ; starts up. G,P,C,E & S are abbreviations for the following respective super
    ; globals: GET, POST, COOKIE, ENV and SERVER. There is a performance penalty
    ; paid for the registration of these arrays and because ENV is not as commonly
    ; used as the others, ENV is not recommended on productions servers. You
    ; can still get access to the environment variables through getenv() should you
    ; need to.
    ; Default Value: "EGPCS"
    ; Development Value: "GPCS"
    ; Production Value: "GPCS";
    ; http://php.net/variables-order
    variables_order = "GPCS"
    ; This directive determines which super global data (G,P,C,E & S) should
    ; be registered into the super global array REQUEST. If so, it also determines
    ; the order in which that data is registered. The values for this directive are
    ; specified in the same manner as the variables_order directive, EXCEPT one.
    ; Leaving this value empty will cause PHP to use the value set in the
    ; variables_order directive. It does not mean it will leave the super globals
    ; array REQUEST empty.
    ; Default Value: None
    ; Development Value: "GP"
    ; Production Value: "GP"
    ; http://php.net/request-order
    request_order = "GP"
    ; This directive determines whether PHP registers $argv & $argc each time it
    ; runs. $argv contains an array of all the arguments passed to PHP when a script
    ; is invoked. $argc contains an integer representing the number of arguments
    ; that were passed when the script was invoked. These arrays are extremely
    ; useful when running scripts from the command line. When this directive is
    ; enabled, registering these variables consumes CPU cycles and memory each time
    ; a script is executed. For performance reasons, this feature should be disabled
    ; on production servers.
    ; Note: This directive is hardcoded to On for the CLI SAPI
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
    ; http://php.net/register-argc-argv
    register_argc_argv = Off
    ; When enabled, the ENV, REQUEST and SERVER 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 directive register_argc_argv must be disabled
    ; for this directive to have any affect.
    ; http://php.net/auto-globals-jit
    auto_globals_jit = On
    ; Whether PHP will read the POST data.
    ; This option is enabled by default.
    ; Most likely, you won't want to disable this option globally. It causes $_POST
    ; and $_FILES to always be empty; the only way you will be able to read the
    ; POST data will be through the php://input stream wrapper. This can be useful
    ; to proxy requests or to process the POST data in a memory efficient fashion.
    ; http://php.net/enable-post-data-reading
    ;enable_post_data_reading = Off
    ; Maximum size of POST data that PHP will accept.
    ; Its value may be 0 to disable the limit. It is ignored if POST data reading
    ; is disabled through enable_post_data_reading.
    ; http://php.net/post-max-size
    post_max_size = 8M
    ; Automatically add files before PHP document.
    ; http://php.net/auto-prepend-file
    auto_prepend_file =
    ; Automatically add files after PHP document.
    ; http://php.net/auto-append-file
    auto_append_file =
    ; By default, PHP will output a character encoding using
    ; the Content-type: header. To disable sending of the charset, simply
    ; set it to be empty.
    ; PHP's built-in default is text/html
    ; http://php.net/default-mimetype
    default_mimetype = "text/html"
    ; PHP's default character set is set to empty.
    ; http://php.net/default-charset
    ;default_charset = "UTF-8"
    ; Always populate the $HTTP_RAW_POST_DATA variable. PHP's default behavior is
    ; to disable this feature. If post reading is disabled through
    ; enable_post_data_reading, $HTTP_RAW_POST_DATA is *NOT* populated.
    ; http://php.net/always-populate-raw-post-data
    ;always_populate_raw_post_data = On
    ; Paths and Directories ;
    ; UNIX: "/path1:/path2"
    include_path = ".:/usr/share/pear"
    ; Windows: "\path1;\path2"
    ;include_path = ".;c:\php\includes"
    ; PHP's default setting for include_path is ".;/path/to/php/pear"
    ; http://php.net/include-path
    ; 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
    ; http://php.net/doc-root
    doc_root =
    ; The directory under which PHP opens the script using /~username used only
    ; if nonempty.
    ; http://php.net/user-dir
    user_dir =
    ; Directory in which the loadable extensions (modules) reside.
    ; http://php.net/extension-dir
    extension_dir = "/usr/lib/php/modules/"
    ; On windows:
    ; extension_dir = "ext"
    ; Directory where the temporary files should be placed.
    ; Defaults to the system default (see sys_get_temp_dir)
    ; sys_temp_dir = "/tmp"
    ; 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.
    ; http://php.net/enable-dl
    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.**
    ; http://php.net/cgi.force-redirect
    ;cgi.force_redirect = 1
    ; if cgi.nph is enabled it will force cgi to always sent Status: 200 with
    ; every request. PHP's default behavior is to disable this feature.
    ;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.
    ; http://php.net/cgi.redirect-status-env
    ;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 its 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.
    ; http://php.net/cgi.fix-pathinfo
    ;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.
    ; http://php.net/fastcgi.impersonate
    ;fastcgi.impersonate = 1
    ; Disable logging through FastCGI connection. PHP's default behavior is to enable
    ; this feature.
    ;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.
    ; http://php.net/cgi.rfc2616-headers
    ;cgi.rfc2616_headers = 0
    ; File Uploads ;
    ; Whether to allow HTTP file uploads.
    ; http://php.net/file-uploads
    file_uploads = On
    ; Temporary directory for HTTP uploaded files (will use system default if not
    ; specified).
    ; http://php.net/upload-tmp-dir
    ;upload_tmp_dir =
    ; Maximum allowed size for uploaded files.
    ; http://php.net/upload-max-filesize
    upload_max_filesize = 2M
    ; Maximum number of files that can be uploaded via a single request
    max_file_uploads = 20
    ; Fopen wrappers ;
    ; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
    ; http://php.net/allow-url-fopen
    allow_url_fopen = On
    ; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
    ; http://php.net/allow-url-include
    allow_url_include = Off
    ; Define the anonymous ftp password (your email address). PHP's default setting
    ; for this is empty.
    ; http://php.net/from
    ;from="[email protected]"
    ; Define the User-Agent string. PHP's default setting for this is empty.
    ; http://php.net/user-agent
    ;user_agent="PHP"
    ; Default timeout for socket based streams (seconds)
    ; http://php.net/default-socket-timeout
    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.
    ; http://php.net/auto-detect-line-endings
    ;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
    ; ... or with a path:
    ; extension=/path/to/extension/msql.so
    ; If you only provide the name of the extension, PHP will look for it in its
    ; default extension directory.
    ;extension=bcmath.so
    ;extension=bz2.so
    ;extension=calendar.so
    extension=curl.so
    ;extension=dba.so
    ;extension=enchant.so
    ;extension=exif.so
    ;extension=ftp.so
    ;extension=gd.so
    extension=gettext.so
    ;extension=gmp.so
    ;extension=iconv.so
    ;extension=imap.so
    ;extension=intl.so
    ;extension=ldap.so
    ;extension=mcrypt.so
    ;extension=mssql.so
    ;extension=mysqli.so
    ;extension=mysql.so
    ;extension=odbc.so
    ;zend_extension=opcache.so
    ;extension=openssl.so
    ;extension=pdo_mysql.so
    ;extension=pdo_odbc.so
    ;extension=pdo_pgsql.so
    ;extension=pdo_sqlite.so
    ;extension=pgsql.so
    ;extension=phar.so
    ;extension=posix.so
    ;extension=pspell.so
    ;extension=shmop.so
    ;extension=snmp.so
    ;extension=soap.so
    ;extension=sockets.so
    ;extension=sqlite3.so
    ;extension=sysvmsg.so
    ;extension=sysvsem.so
    ;extension=sysvshm.so
    ;extension=tidy.so
    ;extension=xmlrpc.so
    ;extension=xsl.so
    ;extension=zip.so
    ; Module Settings ;
    [CLI Server]
    ; Whether the CLI web server uses ANSI color coding in its terminal output.
    cli_server.color = On
    [Date]
    ; Defines the default timezone used by the date functions
    ; http://php.net/date.timezone
    ;date.timezone =
    ; http://php.net/date.default-latitude
    ;date.default_latitude = 31.7667
    ; http://php.net/date.default-longitude
    ;date.default_longitude = 35.2333
    ; http://php.net/date.sunrise-zenith
    ;date.sunrise_zenith = 90.583333
    ; http://php.net/date.sunset-zenith
    ;date.sunset_zenith = 90.583333
    [filter]
    ; http://php.net/filter.default
    ;filter.default = unsafe_raw
    ; http://php.net/filter.default-flags
    ;filter.default_flags =
    [iconv]
    ;iconv.input_encoding = ISO-8859-1
    ;iconv.internal_encoding = ISO-8859-1
    ;iconv.output_encoding = ISO-8859-1
    [intl]
    ;intl.default_locale =
    ; This directive allows you to produce PHP errors when some error
    ; happens within intl functions. The value is the level of the error produced.
    ; Default is 0, which does not produce any errors.
    ;intl.error_level = E_WARNING
    [sqlite]
    ; http://php.net/sqlite.assoc-case
    ;sqlite.assoc_case = 0
    [sqlite3]
    ;sqlite3.extension_dir =
    [Pcre]
    ;PCRE library backtracking limit.
    ; http://php.net/pcre.backtrack-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).
    ; http://php.net/pcre.recursion-limit
    ;pcre.recursion_limit=100000
    [Pdo]
    ; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off"
    ; http://php.net/pdo-odbc.connection-pooling
    ;pdo_odbc.connection_pooling=strict
    ;pdo_odbc.db2_instance_name
    [Pdo_mysql]
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/pdo_mysql.cache_size
    pdo_mysql.cache_size = 2000
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/pdo_mysql.default-socket
    pdo_mysql.default_socket=
    [Phar]
    ; http://php.net/phar.readonly
    ;phar.readonly = On
    ; http://php.net/phar.require-hash
    ;phar.require_hash = On
    ;phar.cache_list =
    [mail function]
    ; For Win32 only.
    ; http://php.net/smtp
    SMTP = localhost
    ; http://php.net/smtp-port
    smtp_port = 25
    ; For Win32 only.
    ; http://php.net/sendmail-from
    ;sendmail_from = [email protected]
    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    ; http://php.net/sendmail-path
    ;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 =
    ; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
    mail.add_x_header = On
    ; The path to a log file that will log all mail() calls. Log entries include
    ; the full path of the script, line number, To address and headers.
    ;mail.log =
    ; Log mail to syslog (Event Log on Windows).
    ;mail.log = syslog
    [SQL]
    ; http://php.net/sql.safe-mode
    sql.safe_mode = Off
    [ODBC]
    ; http://php.net/odbc.default-db
    ;odbc.default_db = Not yet implemented
    ; http://php.net/odbc.default-user
    ;odbc.default_user = Not yet implemented
    ; http://php.net/odbc.default-pw
    ;odbc.default_pw = Not yet implemented
    ; Controls the ODBC cursor model.
    ; Default: SQL_CURSOR_STATIC (default).
    ;odbc.default_cursortype
    ; Allow or prevent persistent links.
    ; http://php.net/odbc.allow-persistent
    odbc.allow_persistent = On
    ; Check that a connection is still valid before reuse.
    ; http://php.net/odbc.check-persistent
    odbc.check_persistent = On
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/odbc.max-persistent
    odbc.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ; http://php.net/odbc.max-links
    odbc.max_links = -1
    ; Handling of LONG fields. Returns number of bytes to variables. 0 means
    ; passthru.
    ; http://php.net/odbc.defaultlrl
    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 odbc.defaultlrl and odbc.defaultbinmode
    ; http://php.net/odbc.defaultbinmode
    odbc.defaultbinmode = 1
    ;birdstep.max_links = -1
    [Interbase]
    ; Allow or prevent persistent links.
    ibase.allow_persistent = 1
    ; Maximum number of persistent links. -1 means no limit.
    ibase.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ibase.max_links = -1
    ; Default database name for ibase_connect().
    ;ibase.default_db =
    ; Default username for ibase_connect().
    ;ibase.default_user =
    ; Default password for ibase_connect().
    ;ibase.default_password =
    ; Default charset for ibase_connect().
    ;ibase.default_charset =
    ; Default timestamp format.
    ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
    ; Default date format.
    ibase.dateformat = "%Y-%m-%d"
    ; Default time format.
    ibase.timeformat = "%H:%M:%S"
    [MySQL]
    ; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
    ; http://php.net/mysql.allow_local_infile
    mysql.allow_local_infile = On
    ; Allow or prevent persistent links.
    ; http://php.net/mysql.allow-persistent
    mysql.allow_persistent = On
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/mysql.cache_size
    mysql.cache_size = 2000
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/mysql.max-persistent
    mysql.max_persistent = -1
    ; Maximum number of links (persistent + non-persistent). -1 means no limit.
    ; http://php.net/mysql.max-links
    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.
    ; http://php.net/mysql.default-port
    mysql.default_port =
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/mysql.default-socket
    mysql.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysql.default-host
    mysql.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysql.default-user
    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.
    ; http://php.net/mysql.default-password
    mysql.default_password =
    ; Maximum time (in seconds) for connect timeout. -1 means no limit
    ; http://php.net/mysql.connect-timeout
    mysql.connect_timeout = 60
    ; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
    ; SQL-Errors will be displayed.
    ; http://php.net/mysql.trace-mode
    mysql.trace_mode = Off
    [MySQLi]
    ; Maximum number of persistent links. -1 means no limit.
    ; http://php.net/mysqli.max-persistent
    mysqli.max_persistent = -1
    ; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
    ; http://php.net/mysqli.allow_local_infile
    ;mysqli.allow_local_infile = On
    ; Allow or prevent persistent links.
    ; http://php.net/mysqli.allow-persistent
    mysqli.allow_persistent = On
    ; Maximum number of links. -1 means no limit.
    ; http://php.net/mysqli.max-links
    mysqli.max_links = -1
    ; If mysqlnd is used: Number of cache slots for the internal result set cache
    ; http://php.net/mysqli.cache_size
    mysqli.cache_size = 2000
    ; 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.
    ; http://php.net/mysqli.default-port
    mysqli.default_port = 3306
    ; Default socket name for local MySQL connects. If empty, uses the built-in
    ; MySQL defaults.
    ; http://php.net/mysqli.default-socket
    mysqli.default_socket =
    ; Default host for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysqli.default-host
    mysqli.default_host =
    ; Default user for mysql_connect() (doesn't apply in safe mode).
    ; http://php.net/mysqli.default-user
    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.
    ; http://php.net/mysqli.default-pw
    mysqli.default_pw =
    ; Allow or prevent reconnect
    mysqli.reconnect = Off
    [mysqlnd]
    ; Enable / Disable collection of general statistics by mysqlnd which can be
    ; used to tune and monitor MySQL operations.
    ; http://php.net/mysqlnd.collect_statistics
    mysqlnd.collect_statistics = On
    ; Enable / Disable collection of memory usage statistics by mysqlnd which can be
    ; used to tune and monitor MySQL operations.
    ; http://php.net/mysqlnd.collect_memory_statistics
    mysqlnd.collect_memory_statistics = Off
    ; Size of a pre-allocated buffer used when sending commands to MySQL in bytes.
    ; http://php.net/mysqlnd.net_cmd_buffer_size
    ;mysqlnd.net_cmd_buffer_size = 2048
    ; Size of a pre-allocated buffer used for reading data sent by the server in
    ; bytes.
    ; http://php.net/mysqlnd.net_read_buffer_size
    ;mysqlnd.net_read_buffer_size = 32768
    [OCI8]
    ; Connection: Enables privileged connections using external
    ; credentials (OCI_SYSOPER, OCI_SYSDBA)
    ; http://php.net/oci8.privileged-connect
    ;oci8.privileged_connect = Off
    ; Connection: The maximum number of persistent OCI8 connections per
    ; process. Using -1 means no limit.
    ; http://php.net/oci8.max-persistent
    ;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.
    ; http://php.net/oci8.persistent-timeout
    ;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.
    ; http://php.net/oci8.ping-interval
    ;oci8.ping_interval = 60
    ; Connection: Set this to a user chosen connection class to be used
    ; for all pooled server requests with Oracle 11g Database Resident
    ; Connection Pooling (DRCP). To use DRCP, this value should be set to
    ; the same string for all web servers running the same application,
    ; the database pool must be configured, and the connection string must
    ; specify to use a pooled server.
    ;oci8.connection_class =
    ; High Availability: Using On lets PHP receive Fast Application
    ; Notification (FAN) events generated when a database node fails. The
    ; database must also be configured to post FAN events.
    ;oci8.events = Off
    ; Tuning: This option enables statement

  • Java Web Start- Cannot launch Application. Pls help

    HI
    Ia m beginner in java web start. I creaate a simple swing application and try to launch it through web start. But I failed. My application jar file (sample.jar)contains only class files. No menifest file. Then I sign my "sample.jar" file and placed inside tomcat server: "webapps/root/WebStart/Sample". I also placed the "sample.jnlp" file in the above directory.The name of my main class is :"Sample" .Here is the content of sample.jnlp:
    <?xml version="1.0" encoding="UTF-8"?>
    <jnlp spec="1.0+"
      codebase="http://165.231199.164:8080"
    >
    <information>
      <title>Sample Launching Test</title>
      <vendor>FMO</vendor> 
      <homepage href="www.sun.com" />
      <description>Demonstration of JNLP</description>
    </information>
    <offline-allowed/>
    <security>
      <all-permissions/>
    </security>
    <resources>
      <j2se version="1.2+" />
      <jar href="/WebStart/Sample/sample.jar"/>
    </resources>
    <application-desc main-class="Sample" />
    </jnlp>Whenever I try to launch this application from the browser , it shows me following :
    An error occurred while launching/running the application.
    Title: Sample Launching Test
    Vendor: FMO
    Category: Unexpected Error
    RED
    Anybody pls help me here about how to Launch my application. Am I missing something?

    I fixed the porblem by modifying the sample.jnlp file. Here is the latest version:
    <?xml version="1.0" encoding="UTF-8"?>
    <jnlp codebase=http://[my-ip-address]:8080/WebStart/Sample>
    <href="sample.jnlp">
    <information>
      <title>Sample Launching Test</title>
      <vendor>FMO</vendor> 
      <homepage href="www.sun.com" />
      <description>Demonstration of JNLP</description>
      <offline-allowed/>
    </information>
    <security>
      <all-permissions/>
    </security>
    <resources>
      <j2se version=1.4+ />
      <jar href="sample.jar"/>
    </resources>
    <application-desc main-class="Sample" />
    </jnlp>

  • Problem with a Servlet - URGENT help

    Hello
    i really need your help. here i uploaded my web project: http://www.2shared.com/file/4450238/aaa4d9cd/JMSTest.html
    it's about 2 servlets, one Test servlet sending a message, and another one, Receiver, to receive the message sent via JMS (i use ActiveMQ)
    i didn't know what's wrong, if i call http://localhost:8080/JMSTest , then i enter something into that textfield, then i press the button(form action is http://localhost:8080/test ). it writes that "Mesaj trimis" (message sent - written by me in Romanian), and when i call http://localhost:8080/receiver i did not receive the message. Why?
    I use queue, so i think the send message is stored in a queue until a receiver receives it.
    Please download the project, isn't complicated.
    I did not know what's the problem.
    here is the server.xml file from Tomcat conf folder:
    <?xml version="1.0" encoding="UTF-8"?>
    <Server port="8005" shutdown="SHUTDOWN">
      <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
      <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
      <!-- Global JNDI resources
           Documentation at /docs/jndi-resources-howto.html
      -->
      <GlobalNamingResources>
        <!-- Editable user database that can also be used by
             UserDatabaseRealm to authenticate users
        -->
        <Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
      </GlobalNamingResources>
      <Service name="Catalina">
        <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>      
        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
        <Engine defaultHost="localhost" name="Catalina"> 
          <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
          <!-- Define the default virtual host
               Note: XML Schema validation will not work with Xerces 2.2.
           -->
          <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
            <!-- SingleSignOn valve, share authentication between web applications
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
            -->
            <!-- Access log processes all example.
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
                   prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
            -->
           <Context path="/JMSTest" docBase="JMSTest"
            debug="5" reloadable="true" crossContext="true">
        <Resource name="jms/ConnectionFactory" auth="Container"
                     type="org.apache.activemq.ActiveMQConnectionFactory"
                     description="JMS Connection Factory"
                     factory="org.apache.activemq.jndi.JNDIReferenceFactory"
                     brokerURL="vm://localhost"
                     brokerName="LocalActiveMQBroker"
                     userName="activemq" password="activemq"
                     useEmbeddedBroker="false"
                     clientID="TomcatClientID" />
        <Resource name="jms/myQueue" auth="Container"
                     type="org.apache.activemq.command.ActiveMQQueue"
                     description="JMS Queue"
                     factory="org.apache.activemq.jndi.JNDIReferenceFactory"
                     physicalName="TEST.FOO" />
        <Resource name="jms/myTopic" auth="Container"
                     type="org.apache.activemq.command.ActiveMQTopic"
                     description="JMS Topic"
                     factory="org.apache.activemq.jndi.JNDIReferenceFactory"
                     physicalName="TEST.BAR"/>
    </Context>
           </Host>
        </Engine>
      </Service>
    </Server>or, how should i do this, but using Sun Message Queue? my way is using Apache MQ
    Thanks
    Edited by: Talkabout on Dec 13, 2008 7:15 AM

    I didn't go all through your code, but I'd say you should make sure that the Receiver servlet is up and running BEFORE your access the Sender servlet.

  • Help needed for using BASIC authentication through JDBCRealm

    Help needed.
    Hello,
    I am doing a degree project, so far it works fine in my local machine, I need to try it on my virtual hosting (as it is a live server).
    My project requires JDBCRealm, that is BASIC authentication loading access data from mysql database. Normally this setup can be done in Server.xml file, because my Tomcat hosting is a virtual one, I only have permission to access the web.xml file.
    My question is: is it possible to get it done in an alternative way? In web.xml? Some properties file maybe?
    Thank you very much.

    You can set this up for your context using META-INF/context.xml instead of working with server.xml.
    Make a directory called META-INF under your webapp ( it'll be at the same level as WEB-INF ). Under this, add a context.xml with all your context specific configuration including the realm. A sample is below
    <?xml version="1.0" encoding="UTF-8"?>
    <Context path="/myApp" reloadable="true">
        <Realm
            className="org.apache.catalina.realm.JDBCRealm"            
            driverName="com.microsoft.jdbc.sqlserver.SQLServerDriver"         
            connectionURL="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=myDB;SelectMethod=Cursor;"
            connectionName="username" connectionPassword="password"
            digest="MD5" userTable="users" userNameCol="userid" userCredCol="userpassword"
            userRoleTable="user_roles" roleNameCol="rolename"
        />
    </Context>Hope this helps.
    People on the forum help others voluntarily, it's not their job.
    Help them help you.
    Learn how to ask questions first: http://faq.javaranch.com/java/HowToAskQuestionsOnJavaRanch
    ----------------------------------------------------------------

  • Urgent help required...for replacing JSP session variables

    I am trying to enhance the performance of a j2ee based webapp which use session variables to store the data...
    Is there any alternative for session variables..The project is based on j2ee-Struts frame work..But the amount of code maintainance should be minimum ....so i can't create beanforms for all these data...
    Is there any XML based methods available...??

    ok... thanks... i created a fla file and inthe action script
    pasted the following code
    var nc:NetConnection = new NetConnection();
    nc.connect("rtmp://flash.ispstream.com/ondemand/unikron/my_video_dj/");
    var ns:NetStream = new NetStream(nc);
    contentMain.myVideo.attachVideo(ns);
    ns.setBufferTime(5);
    ns.play("dvd_r");
    nothing is working if i tried to load... can u help me out

Maybe you are looking for