PKP Frequently Asked Questions

From PKP Wiki
Revision as of 11:28, 11 March 2009 by Jmacgreg (Talk | contribs) (New page: = FINDING HELP: = == What documentation is available for OJS? == The OJS documentation website at has a list of documents, ranging from general to t...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


What documentation is available for OJS?

The OJS documentation website at has a list of documents, ranging from general to technical in nature. For users who have just downloaded OJS and are wondering where to start, there is docs/README; for users who want a non-technical overview of OJS, the "OJS in an Hour" document is recommended; for users who want a good, no-frills guide on performing basic system admin and management tasks with OJS, the Quick Reference is a good start. More documents specific to certain components of the OJS system are added all the time.

We also create video tutorials that target specific aspects of OJS, such as installing, submitting an article, or creating a user account. They can be found at

Are there other resources for finding help with OJS?

The PKP uses Bugzilla to report and track bugs and new features. It can be found at If you think you've found a bug with our software, we encourage you to search the bug database to see if it has been identified and/or fixed, and to post a bug report if it has not been.

We also maintain a web-based user interface to our CVS repository, which can be found at You can browse the entire codebase for OJS, OCS and more from that site. This is particularly helpful when you have identified a problem file and want to know the file's history: you can look the file up in this interface, and see all code revisions made to it since it was created. Most of these revisions also link back to bug reports posted to Bugzilla, which is again a handy way to look up bugs.

The PKP Support Forum itself has become an invaluable knowledge base for technical and editorial issues, and we highly recommend you search it for information before you post.

And finally, if you are curious about the future direction of OJS, you can check out the roadmap:


When I click some button or follow some link, I'm left with a blank page. What do I do?

Usually, this indicates that a PHP error has occurred and the message has been sent to your web server or system log file. Check there -- e.g. /var/log/apache/error.log, although the exact location will depend on your server configuration -- for further details. If you don't have access to your server log file, you can try adding the following near the top of index.php to cause error messages to be sent to the browser:

ini_set('display_errors', E_ALL);

I can install OJS, but Apache crashes when I try to log in.

This is caused by a buggy version of Zend Optimizer being installed on your system. Search this forum for "optimizer" for a variety of discussions on this, including a work-around patch for OJS. A good thread detailing the Zend Optimizer problem, including workarounds, can be found here -- viewtopic.php?f=3&t=2698.

I am receiving the following error: Fatal error: Allowed memory size of 8388608 bytes exhausted (etc.)

Your PHP memory limit is most likely set too low. It's normally set at 8mb by default, but OJS needs at least 16mb set to run properly. You can find a memory_limit configuration directive in your server's php.ini config file.

I'm having file permission problems; how should I set file permissions?

This is a difficult question to answer generally, as it depends on your server's operating system, web server, and PHP setup.

Start by checking which server API PHP uses on your server. Log in as Site Administrator, click "System Information", and at the bottom of the page, click "Extended PHP Information". Find the line that says "Server API". Depending on which API you are using (mod_php/SAPI or CGI/FastCGI), permissions should be set as follows.

  • mod_php/SAPI: In this configuration, all PHP scripts on the system typically execute as the same user (usually Apache's "nobody" or "www-data" accounts). Be warned that this may be insecure on a shared host. The files_dir (configured in, the cache directory, the public directory, and all contents and subdirectories must be writable and readable by the web server user. The configuration file must be readable by the web server user.
  • CGI/FastCGI: In this configuration, PHP scripts will typically run under your user account (though server configurations may vary). This can be a well-secured configuration. The files_dir (configured in, the cache directory, the public directory, and all contents and subdirectories must be writable and readable by this user account. The configuration file must be readable by this account.

Because security configurations can vary, and because of the volume of requests for support we receive regarding file permissions, we will only be able to provide limited help with these issues. Please be as specific as possible when posting about permissions issues.

PHP Safe Mode is not a recommended configuration and may not function properly. This is because in some configurations it will cause PHP's mkdir() function to create directories that cannot thereafter be read or written because of file permissions. This is a limitation of Safe Mode and may prevent you from using OJS in a Safe Mode environment.

HTML Galleys don't display properly / files I upload aren't being identified properly.

This is most likely caused by your server incorrectly identifying your HTML file as something other than HTML. The quickest way to diagnose this is to check the Galley Edit page: if you have uploaded an HTML file and the Label field says something other than "HTML" (like "Untitled", for example), then the file has not been correctly identified as HTML and will most likely not display correctly.

OJS uses three methods to determine a filetype, in the following order:

  • PHP's mime_content_type function, which uses your system's magic.mime file (this method is deprecated)
  • PHP's finfo_... suite of functions (which replaces mime_content_type as the preferred method)
  • The external "file" tool, by executing the following:
file -bi [filename here]

Problems may occur if:

  • you are using the first option but your magic.mime file does not include enough information on the filetype you are attempting to identify;
  • your server configuration does not support the first two options;
  • you do not have sufficient permissions to run an external tool as in the third

Additionally, you may be encountering problems due to malformed files. If you are having trouble having your HTML files recognized, you may want to run them through HTML-Tidy ( or otherwise ensure that they are valid HTML. HTML files created by word processors in particular may have a hard time being recognized as HTML.

You may also want to search the forums for the keywords "magic mime" or for "mimetype" -- many users have had this problem, and there are several discussions on how to solve it.

My css files aren't being identified properly.

This could be the result of the identification issue above, or it could be because your css file includes a comment on the first line, before any actual css. Try removing the comment(s) from the top of the file and reuploading.

How do I change the way OJS handles URLs?

You can use the base_url override settings in to manage how OJS displays URLs. You can also use Apache's mod_rewrite module, although we won't troubleshoot this if you do. See this thread: <a href="/support/forum/viewtopic.php?f=2&t=2616">this thread</a> in particular, and search the forums for discussion related to mod_rewrite.

How can I change the System Administrator password?

See <a href="/support/forum/viewtopic.php?t=873">this thread</a> on the forum.


I lost/forgot my password, and I can't retrieve it!

Retrieving your password is a three-step process:

  • Request a New Password: click the "Log in" link at the top of the navigation bar or on the sidebar, click the "Forgot your Password" link on the following page, enter your email address, and then click on "Reset Password".
  • Check Your Email and Confirm Your Request: You then need to check your email inbox for a confirmation email which asks whether you did indeed request your password to be reset. When you click the link included in the email, you will be taken back to the journal in question, and the system will email you a new password.
  • Retrieve New Password and Log In: You must then recheck your email for the password that has just been sent to you. It will have been automatically generated; you can use it to log in and then reset your password to something you can more easily remember. The system will automatically ask that you fill in a new password.

Why is Taiwan listed in the country list as a province of China, and not its own country?

In a nutshell, the PKP uses an ISO standard for the OJS and OCS country lists, which is itself derived from UN resources; we don't have plans to use another resource or maintain our own list. More details on the Taiwan question can be found in the ISO FAQ: ... ecific.htm. If you want modify the list that is shipped with OJS or OCS, you can add/edit Taiwan to be its own country by editing registry/locale/[name of locale]/countries.xml -- simply add or edit where you believe to be appropriate. Please note that you should keep track of any changes like this you make to the codebase, as you will have to maintain them in the event of an upgrade.

Why can't I delete a user's account?

As a Journal Manager, you can "remove" and "disable" a user's account. Removing a user will only remove them as a user registered with your journal, and will not delete them from the site. Disabling an account doesn't delete it -- it just makes it so that a user can't log in with that account. User deletion in OJS can only be done by using the Merge Users feature: you pick the user to be removed, and merge their account into another one. We don't provide a one-click delete feature because users typically have a lot of information and actions attached to their that must not be orphaned: submitted files, completed reviews, editorial decisions and so on. We essentially mandate that all of these items must be passed on to another user before the user can be removed from the system.

Is there any way I can get content into OJS quickly?

For small numbers of submissions you can use the Expedited Submission Process: <a href=""></a>. For large amounts of content, you might want to consult with your Journal Manager on using the Articles & Issues XML-based import plugin: <a href=""></a>.