We're attempting to set up a sandbox copy of ArchivesSpace so that we can do some customization without touching the production copy. Due to circumstances beyond our control we cannot just set up a whole new VM for this sandbox: it needs to live on our existing development server, alongside a variety of other programs.
- Set up a database. We're using MariaDB, because that's what production is running on. This part went fine.
- Set up a Solr instance. This part went fine.
- Installed ArchivesSpace.
The problem is that somewhere along the line, ArchivesSpace is losing track of what page to load. When we attempt to access it, we get the following error message in the ArchivesSpace log:
F, [2025-11-07T14:10:10.883655 #464381] FATAL -- :
ActionController::RoutingError (No route matches [GET] "/"):
We have gone around and around and around trying to figure out how to get this thing to work. The log files say that the connections to the database and the solr instance are working. And the fact that we're getting the error message in the AS log means that Apache is correctly handling the reverse proxy stuff. The request comes in, and is being sent to AS. And then it dies.
Our config.rb is as follows:
# Set database credentials
AppConfig[:db_url] = "jdbc:mysql://localhost:3306/archives_space?user=redacted&password=redacted"
# Specify where to find Solr
AppConfig[:solr_url] = "http://localhost:8983/solr/archivesspace"
# Reduce the number of logged messages
AppConfig[:frontend_log_level] = "error"
AppConfig[:backend_log_level] = "error"
AppConfig[:pui_log_level] = "error"
AppConfig[:indexer_log_level] = "error"
# Change the default admin password
AppConfig[:default_admin_password] = "redacted"
# We explicitly specified this because in an
# earlier revision port 8080 was not available.
# It's redundant now.
AppConfig[:frontend_url] = "http://localhost:8080"
# Set the correct URLs for the staff/public interfaces
AppConfig[:frontend_proxy_url] = "https://dev.library.und.edu/as/staff"
AppConfig[:public_proxy_url] = "https://dev.library.und.edu/as"
#AppConfig[:frontend_proxy_prefix] = proc { "#{URI(AppConfig[:frontend_proxy_url]).path}/".gsub(%r{/+$}, "/") }
#AppConfig[:public_proxy_prefix] = proc { "#{URI(AppConfig[:public_proxy_url]).path}/".gsub(%r{/+$}, "/") }
That's a complete copy of everything in the config; everything else we're just using the defaults.
Here are the relevant bits of our Apache configuration for the proxy pass through:
# Redirect all traffic for the /solr folder to :8983 instead.
ProxyPass /solr http://localhost:8983/solr
ProxyPassReverse /solr http://localhost:8983/solr
# Redirect all traffic for the /as/staff folder to :8080 instead.
# This is the staff interface for ArchivesSpace.
ProxyPass /as/staff http://localhost:8080
ProxyPassReverse /as/staff http://localhost:8080
# Redirect all traffic for the /as folder to :8081 instead.
# This is the public interface for ArchivesSpace.
ProxyPass /as http://localhost:8081
ProxyPassReverse /as http://localhost:8081We've tried every variation we can think of with the slashes at the end here -- no trailing slashes, trailing slashes on everything, trailing slashes on the ProxyPassReverse but not the ProxyPass, and the other way around -- all to no avail. The traffic appears to be getting direct to ArchivesSpace correctly, and then the router in AS just can't figure out what the heck page to load.
We've tried putting in more complete URLs by adjusting copies of the production stuff, like so:
Which generates an error like so:
F, [2025-11-07T14:32:44.321777 #464381] FATAL -- : [e27a6c05-29a9-469a-97a3-7d1b875d3170]
[e27a6c05-29a9-469a-97a3-7d1b875d3170] ActionController::RoutingError (No route matches [GET] "/repositories/2/resources/281"):
[e27a6c05-29a9-469a-97a3-7d1b875d3170]
We've checked the archives of this user group, and found some people with similar error messages, but their solutions did not help.
We've been at it for two weeks now, and basically, we're stumped. Short of cracking open .war files and doing some low level debug, I'm not sure what else to try. So I thought I would ask here before dusting off the code editor.
Will Martin
Head of Digital Initiatives, Systems and Services
Chester Fritz Library
University of North Dakota