About Features Downloads Getting Started Documentation Events Support GitHub

Love VuFind®? Consider becoming a financial supporter. Your support helps build a better VuFind®!

Site Tools


Warning: This page has not been updated in over over a year and may be outdated or deprecated.
installation:windows

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
vufind2:installation_windows [2013/05/18 05:18] – [7. Configure VuFind] Add information about timeouts dmausinstallation:windows [2021/10/28 11:15] (current) – [4. Install PHP] demiankatz
Line 1: Line 1:
 ====== Installation ====== ====== Installation ======
- 
-// These instructions are for use with VuFind 2.x; for earlier versions, see the [[..:installation_windows|1.x instructions]].// 
  
 **These instructions assume that you are installing your MySQL database on the same server as VuFind itself and that you are using an installation path of c:\vufind** **These instructions assume that you are installing your MySQL database on the same server as VuFind itself and that you are using an installation path of c:\vufind**
Line 8: Line 6:
 ===== Requirements ===== ===== Requirements =====
  
-To satisfy VuFind's dependencies, make sure you install the software versions recommended on the [[..:requirements]] page.  You may use other versions at your own risk.+To satisfy VuFind's dependencies, make sure you install the software versions recommended on the [[requirements]] page.  You may use other versions at your own risk.
  
 These instructions assume that you are installing all software components separately.  Many developers use [[http://www.apachefriends.org/en/xampp-windows.html|XAMPP]] to install Apache, MySQL and PHP as a bundle.  XAMPP should not be used in a production environment, but it may save some time for a test server -- however, it works differently than separate component installation, so watch for XAMPP-related notes as you read. These instructions assume that you are installing all software components separately.  Many developers use [[http://www.apachefriends.org/en/xampp-windows.html|XAMPP]] to install Apache, MySQL and PHP as a bundle.  XAMPP should not be used in a production environment, but it may save some time for a test server -- however, it works differently than separate component installation, so watch for XAMPP-related notes as you read.
Line 35: Line 33:
     DirectoryIndex index.html index.php     DirectoryIndex index.html index.php
  
- +// IMPORTANT: If your VuFind instance will include records with slashes in their IDs, you need to add "AllowEncodedSlashes on" to the appropriate <nowiki><VirtualHost></nowiki> section of your Apache configuration! //
- +
- +
- +
 ==== 3. Install MySQL ==== ==== 3. Install MySQL ====
  
Line 48: Line 42:
 One important piece of the MySQL installation is the library file, libmysql.dll.  If Windows cannot find this file, you may get errors about a missing database driver when you try to view pages in VuFind.  Depending on which operating system/software versions you end up using, you may not have to do anything special to make this work.  However, if you run into trouble after completing the other steps of the VuFind installation process, try these options: One important piece of the MySQL installation is the library file, libmysql.dll.  If Windows cannot find this file, you may get errors about a missing database driver when you try to view pages in VuFind.  Depending on which operating system/software versions you end up using, you may not have to do anything special to make this work.  However, if you run into trouble after completing the other steps of the VuFind installation process, try these options:
  
-1.) Make sure that libmysql.dll is in your PHP directory and that your PHP directory is included in your system path (as described below in the [[installation_windows#install_the_java_jdk|Java JDK]] step).+1.) Make sure that libmysql.dll is in your PHP directory and that your PHP directory is included in your system path (as described below in the [[windows#install_the_java_jdk|Java JDK]] step).
  
 2.) If libmysql.dll is not in your PHP directory, it may be in your MySQL directory (usually something like C:\Program Files\MySQL\MySQL Server 5.0\bin).  It may help to add this directory to your system path as well.  Warning: If the file is in BOTH your PHP //AND// MySQL directories, the PHP version is probably the correct one, and using the MySQL version may cause problems.  In some scenarios, you may actually need to REMOVE the MySQL directory from your path to solve this problem. 2.) If libmysql.dll is not in your PHP directory, it may be in your MySQL directory (usually something like C:\Program Files\MySQL\MySQL Server 5.0\bin).  It may help to add this directory to your system path as well.  Warning: If the file is in BOTH your PHP //AND// MySQL directories, the PHP version is probably the correct one, and using the MySQL version may cause problems.  In some scenarios, you may actually need to REMOVE the MySQL directory from your path to solve this problem.
Line 63: Line 57:
  
 You can download PHP [[http://windows.php.net/download/|here]].  Choose the thread safe version unless you have a specific reason to use the non-thread safe version. You can download PHP [[http://windows.php.net/download/|here]].  Choose the thread safe version unless you have a specific reason to use the non-thread safe version.
 +
 +:!: Pay attention to which version of Apache you downloaded -- PHP and Apache will integrate better if they are built for the same architecture (32-bit vs. 64-bit) using the same compiler. For example, if you downloaded a 32-bit (x86) version of Apache, you should not try to install a 64-bit (x64) version of PHP.
  
 When prompted, choose the appropriate version of Apache and provide your configuration directory (i.e. c:\Program Files\Apache Software Foundation\Apache#.#\conf\); if you get an error message, don't panic -- you can manually correct it later (see notes under the VuFind configuration step below).   When prompted, choose the appropriate version of Apache and provide your configuration directory (i.e. c:\Program Files\Apache Software Foundation\Apache#.#\conf\); if you get an error message, don't panic -- you can manually correct it later (see notes under the VuFind configuration step below).  
Line 72: Line 68:
   * LDAP (optional)   * LDAP (optional)
   * Multi-Byte String (optional, but recommended)   * Multi-Byte String (optional, but recommended)
-  * MySQL 
   * MySQLi   * MySQLi
   * PDO (with MySQL)   * PDO (with MySQL)
Line 86: Line 81:
   * It is possible that PHP will install some extensions without all of the necessary library files.  If this happens, starting up PHP will lead to a series of pop-up alerts.  To fix the problem, simply edit the php.ini file (usually found in c:\Program Files\PHP\, and also available via Start Menu shortcut) and comment out (by putting a semi-colon in front) the offending modules (found in lines like extension=php_*.dll).  If you actually need some of the affected modules, you may have to track down copies of the missing files; Google searches for error messages are usually helpful for this.   * It is possible that PHP will install some extensions without all of the necessary library files.  If this happens, starting up PHP will lead to a series of pop-up alerts.  To fix the problem, simply edit the php.ini file (usually found in c:\Program Files\PHP\, and also available via Start Menu shortcut) and comment out (by putting a semi-colon in front) the offending modules (found in lines like extension=php_*.dll).  If you actually need some of the affected modules, you may have to track down copies of the missing files; Google searches for error messages are usually helpful for this.
   * If you are using XAMPP instead of separate components, the installation process won't ask you about extensions.  Instead, you will have to manually uncomment the relevant lines in your php.ini file.   * If you are using XAMPP instead of separate components, the installation process won't ask you about extensions.  Instead, you will have to manually uncomment the relevant lines in your php.ini file.
-  * If you are a Voyager library, you will also need to install the PHP OCI Driver for Oracle – see [[..:installing_the_php_oci_driver_for_oracle|this page]] for detailed instructions.+  * If you are a Voyager library, you will also need to install the PHP OCI Driver for Oracle – see [[php_oci|this page]] for detailed instructions.
  
 ==== 5. Install the Java JDK ==== ==== 5. Install the Java JDK ====
 +
 +Next install JDK (the Java Development Kit) on the server – VuFind's searching back-end and MARC indexing tools rely on Java. Note that some VuFind components may be able to run using only the JRE (Java Runtime Environment), but the JDK is strongly recommended, and required for proper MARC indexing after release 3.1.
  
 You can download the JDK [[http://java.sun.com/javase/downloads/?intcmp=1281|here]].  You should be able to use all the default installation options. You can download the JDK [[http://java.sun.com/javase/downloads/?intcmp=1281|here]].  You should be able to use all the default installation options.
Line 120: Line 117:
  
 Once the configuration files are edited, you need to restart Apache for them to take effect -- you can do this from the Start menu under Apache HTTP Server, Control Apache Server, Restart. Once the configuration files are edited, you need to restart Apache for them to take effect -- you can do this from the Start menu under Apache HTTP Server, Control Apache Server, Restart.
 +
 +In order to properly handle network timeouts you should modify PHP's maximum execution time and default socket timeout settings. You can do this either in the webserver's php.ini or by adding the following lines to the http-vufind.conf file:
 +
 +    php_value default_socket_timeout 25
 +    php_value max_execution_time 30
 +
 +You can choose lower or higher values (both in seconds) depending on your environment. The socket timeout should always be lower than the max execution time. **This is 100% windows specific** -- the time to connect to a remote host (default_socket_timeout) counts towards the maximum time a PHP script is allowed to run. On *nix platforms it does not.
  
 == Troubleshooting Apache == == Troubleshooting Apache ==
Line 134: Line 138:
  
 It is often helpful when troubleshooting to look at the Apache logs -- you can find these in the Start menu under Apache HTTP Server, Review Server Log Files. It is often helpful when troubleshooting to look at the Apache logs -- you can find these in the Start menu under Apache HTTP Server, Review Server Log Files.
- 
-In order to properly handle network timeouts you should modify PHP's maximum execution time and default socket timeout settings. You can do this either in the webserver's php.ini or by adding the following lines to the http-vufind.conf file: 
- 
-    php_value default_socket_timeout 25 
-    php_value max_execution_time 30 
- 
-You can choose lower or higher values (both in seconds) depending on your environment. The socket timeout should always be lower than the max execution time. **This is 100% windows specific** -- the time to connect to a remote host (default_socket_timeout) counts towards the maximum time a PHP script is allowed to run. On *nix platforms it does not. 
  
 mike_beccaria (Jun 09) : //Add "Options All" to the httpd-vufind.conf file if you are getting an "access Denied" on the homepage and a "Directory index forbidden by option directive" error in the apache error.log.// mike_beccaria (Jun 09) : //Add "Options All" to the httpd-vufind.conf file if you are getting an "access Denied" on the homepage and a "Directory index forbidden by option directive" error in the apache error.log.//
Line 148: Line 145:
 === Configuring Solr === === Configuring Solr ===
  
-The config files for each Solr index are currently set up to use relative paths.  Because Windows services run in a different user context with different working directories, Solr may have problems finding its index files If you skip this stepyou may find that searches never yield any results.  To be on the safe side, you should reconfigure Solr to explicitly point out where the index files live. +Starting with VuFind 3.0, no special Solr configuration should be necessary for the software to run correctly in Windows. If you encounter problems in VuFind 2.x or earlierit may be necessary to edit the various solrconfig.xml files under VuFind's Solr directory to change relative paths to absolute paths
- +==== 8. Start Solr ====
-In the following files: +
-    c:/vufind/solr/biblio/conf/solrconfig.xml +
-    c:/vufind/solr/authority/conf/solrconfig.xml +
-    c:/vufind/solr/stats/conf/solrconfig.xml +
- +
-Find the node: +
-    \config\dataDir +
- +
-And change the relative paths currently there to+
-    c:/vufind/solr/biblio +
-    c:/vufind/solr/authority +
-    c:/vufind/solr/stats +
- +
-For example, you would change this: +
- +
-<code xml> +
-  <dataDir>${solr.data.dir:./solr/biblio}</dataDir>  +
-</code> +
- +
-to this: +
- +
-<code xml> +
-  <dataDir>c:/vufind/solr/biblio</dataDir>  +
-</code> +
- +
-==== 8. Start VuFind ====+
  
-Now that VuFind is installed and basic configuration is complete, you can start the server running.  See the [[..:Starting and Stopping VuFind]] page for details.+Now that VuFind is installed and basic configuration is complete, you can start the Solr server running.  See the [[administration:starting_and_stopping_solr|Starting and Stopping Solr]] page for details.
  
 ==== 9. Final Configuration ==== ==== 9. Final Configuration ====
Line 191: Line 162:
 If you see a blank white screen, something is wrong. If you see a blank white screen, something is wrong.
  
-  * Check your Apache error log for messages -- see [[#Apache_Troubleshooting|Apache Troubleshooting]] above.+  * Check your Apache error log for messages -- see [[#Troubleshooting_Apache|Troubleshooting Apache]] above.
   * If that does not help, try editing c:/vufind/local/httpd_vufind.conf and uncommenting the "SetEnv VUFIND_ENV development" line -- after an Apache restart, this will put VuFind into development mode (which will display more detailed error messages if the code is capable of running).   * If that does not help, try editing c:/vufind/local/httpd_vufind.conf and uncommenting the "SetEnv VUFIND_ENV development" line -- after an Apache restart, this will put VuFind into development mode (which will display more detailed error messages if the code is capable of running).
  
Line 212: Line 183:
 === Locking Down Configurations === === Locking Down Configurations ===
  
-Once all configuration issues are successfully resolved, you will see a "Disable Auto Configuration" link on the "Auto Configure" page.  Click this to prevent future access to the install script.  If you need access again in the future, you can re-enable it by manually editing your [[..:config.ini]] file.+Once all configuration issues are successfully resolved, you will see a "Disable Auto Configuration" link on the "Auto Configure" page.  Click this to prevent future access to the install script.  If you need access again in the future, you can re-enable it by manually editing your [[configuration:files:config.ini]] file.
  
 ==== 10. Import Records ==== ==== 10. Import Records ====
  
-Import bib records using the instructions on the [[..:importing records]] page.+Import bib records using the instructions on the [[:indexing]] page.
  
 ==== Appendix: General Notes ==== ==== Appendix: General Notes ====
Line 244: Line 215:
  
 ---- struct data ---- ---- struct data ----
 +properties.Page Owner : 
 ---- ----
  
installation/windows.1368854293.txt.gz · Last modified: 2014/06/13 13:13 (external edit)