mirror of
https://github.com/internetarchive/heritrix3.git
synced 2026-07-09 17:17:16 +00:00
141 lines
5.7 KiB
ReStructuredText
141 lines
5.7 KiB
ReStructuredText
Getting Started with Heritrix
|
|
=============================
|
|
|
|
System Requirements
|
|
^^^^^^^^^^^^^^^^^^^
|
|
|
|
Heritrix is primarily used on Linux. It may run on other platforms but is not regularly tested or supported on them.
|
|
|
|
Heritrix requires Java 17 or later. We recommend using your Linux distribution's OpenJDK packages. Alternatively up to
|
|
date builds of OpenJDK for several platforms are available from `Adoptium <https://adoptium.net/>`__.
|
|
|
|
The default Java heap for Heritrix is 256MB RAM, which is usually suitable for crawls that range over hundreds of
|
|
hosts. Assign more of your available RAM to the heap if you are crawling thousands of hosts or experience Java
|
|
out-of-memory problems. You can use the JAVA_OPTS variable to configure memory
|
|
|
|
Installation
|
|
^^^^^^^^^^^^
|
|
|
|
Download the latest Heritrix distribution package linked from the `Heritrix releases page
|
|
<https://github.com/internetarchive/heritrix3/releases>`__ and unzip it somewhere.
|
|
|
|
The installation will contain the following subdirectories:
|
|
|
|
bin
|
|
contains shell scripts/batch files for launching Heritrix.
|
|
lib
|
|
contains the third-party .jar files the Heritrix application requires to run.
|
|
conf
|
|
contains various configuration files (such as the configuration for Java logging, and pristine versions of the bundled profiles)
|
|
jobs
|
|
the default location where operator-created jobs are stored
|
|
|
|
Environment Variables
|
|
^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
#. Set the ``JAVA_HOME`` environment variable. The value should point to your Java installation.
|
|
|
|
.. code-block:: bash
|
|
|
|
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
|
|
|
|
#. Set the ``HERITRIX_HOME`` environment variable. The value should be set to the path where Heritrix is installed.
|
|
|
|
.. code-block:: bash
|
|
|
|
export HERITRIX_HOME=/home/user/heritrix3.1
|
|
|
|
#. Set execute permission on the Heritirix startup file.
|
|
|
|
.. code-block:: bash
|
|
|
|
chmod u+x $HERITRIX_HOME/bin/heritrix
|
|
|
|
#. To change the amount of memory allocated to Heritrix (the Java heap size), set the ``JAVA_OPTS`` environment
|
|
variable. The following example allocates 1GB of memory to Heritrix.
|
|
|
|
.. code-block:: bash
|
|
|
|
export JAVA_OPTS=-Xmx1024M
|
|
|
|
Running Heritrix
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
To launch Heritrix with the Web UI enabled, enter the following command. The username and password for the Web UI are
|
|
set to "admin" and "admin", respectively.
|
|
|
|
.. code-block:: bash
|
|
|
|
$HERITRIX_HOME/bin/heritrix -a admin:admin
|
|
|
|
By default, the Web UI listening address is only bound to the 'localhost' address. Therefore, the Web UI can only be
|
|
accessed on the same machine from which it was launched. The '-b' option may be used to listen on
|
|
different/additional addresses. See :ref:`Security Considerations <security-considerations>` before changing this
|
|
default.
|
|
|
|
If the parameter supplied to the ``-a`` option is a file path beginning with "@", the admin username and password
|
|
will be read from a file. This adds an additional layer of protection to the admin username and password by ensuring
|
|
they don't appear directly in the command-line and can't be seen by other users running the ``ps`` command.
|
|
|
|
Accessing the User Interface
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
After Heritrix has been launched, the Web-based user interface (WUI) becomes accessible.
|
|
|
|
The URI to access the Web UI is typically
|
|
|
|
https://localhost:8443/
|
|
|
|
The initial login page prompts for the username and password. After login, your session will time-out after a period
|
|
of non-use.
|
|
|
|
Access to the WUI is through HTTPS. Heritrix is installed with a keystore containing a self-signed certificate. This
|
|
will cause your browser to display a prompt, warning that a self-signed certificate is being used. Follow the steps
|
|
below for your browser to login to Heritrix for the first time.
|
|
|
|
**Chrome:** The message "Your connection is not private" is displayed. Click the "Advanced" button and then click
|
|
"Proceed to localhost (unsafe)."
|
|
|
|
**Firefox:** The message "Warning: Potential Security Risk Ahead" is displayed. Click the "Advanced..." button and then
|
|
click "Accept the Risk and Continue."
|
|
|
|
Your First Crawl
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
#. Enter the name of the new job in the text box with the "create new job" label. Then click "create".
|
|
|
|
#. Click on the name of the new job and you will be taken to the job page.
|
|
|
|
#. Click on the "Configuration" link at the top and the contents of the job configuration file will be displayed.
|
|
|
|
#. At this point you must enter several properties to make the job runnable.
|
|
|
|
#. First, add the URL of page explaining how webmasters can contact you to the metadata.operatorContactUrl property.
|
|
|
|
#. Next, populate the ``<prop>`` element of the ``longerOverrides`` bean with the seed values for the crawl. A
|
|
test seed is configured for reference.
|
|
|
|
#. When done click "save changes" at the top of the page.
|
|
|
|
For more detailed information on configuring
|
|
jobs see `Configuring Jobs and Profiles <https://github
|
|
.com/internetarchive/heritrix3/wiki/Configuring%20Jobs%20and%20Profiles>`__
|
|
|
|
#. From the job screen, click "build." This command will validate the job configuration and load it into memory. In
|
|
the Job Log the following message will display: "INFO JOB instantiated."
|
|
|
|
#. Next, click the "launch" button. This command launches the job in "paused" mode. At this point the job is ready
|
|
to run.
|
|
|
|
#. To run the job, click the "unpause" button. The job will now begin sending requests to the seeds of your crawl.
|
|
The status of the job will be set to "Running." Refresh the page to see updated statistics.
|
|
|
|
#. When you want to stop your crawl, click the "terminate" button to finish and then "teardown" to unload the job
|
|
configuration from memory.
|
|
|
|
Exiting Heritrix
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
To exit Heritrix get back to the main page by clicking "Engine" in the top bar. Then check the "I'm sure" box under
|
|
"Exit Java" and click the "exit java process" button.
|