EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #07181


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

Re: [EP-tech] Not a valid repository identifier


A thought – it might just be when you copied the code into the email, but does your 10_core.pl file have a semi-colon on the end of the last line in the broken repository?

 

$c->{http_root} = undef

 

?

Cheers,

Alan

 

 

From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Christer Enkvist
Sent: 26 February 2018 18:43
To: eprints-tech@ecs.soton.ac.uk
Subject: [EP-tech] Not a valid repository identifier

 

Hi,

 

Eprints 3.3.14/Ubuntu 12LTS.

 

I have made something stupid in my settings, probably in Apache.  I have two repositories on a server, pub5 and stud5.  Both worked excellently but suddenly one stopped working (yes, I did something in some Apache/SSL setting but can’t figure out what).

 

Now I cannot access and pages and the log explains why:

 

------------------------------------------------------------------

---------------- EPrints System Error ----------------------------

------------------------------------------------------------------

'pub5' is not a valid repository identifier:

PerlSetVar EPrints_ArchiveID pub5

------------------------------------------------------------------

EPrints System Error inducing stack dump

at /usr/share/eprints3/perl_lib/EPrints.pm line 147

        EPrints::abort('EPrints') called at /usr/share/eprints3/perl_lib/EPrints/Apache/Rewrite.pm line 62

        EPrints::Apache::Rewrite::handler('Apache2::RequestRec=SCALAR(0x7f5d18e9f888)') called at -e line 0

        eval {...} called at -e line 0

 

 

This is very weird as the repository is indeed pub5. So I assume some setting somewhere has been set wrong.

 

Problem is that I cannot find/understand what I have done.  Both repos have virtual host files looking like:

 

# START

<VirtualHost *:443>

SSLEngine on

  ServerName pub.epsilon.slu.se

 

  ServerAdmin eprints-adm@bib.slu.se

 

SSLCertificateFile /etc/apache2/ssl/star_epsilon_slu_se.crt

SSLCertificateKeyFile /etc/apache2/ssl/star.epsilon.slu.se.key

SSLCertificateChainFile /etc/apache2/ssl/DigiCertCA.crt

 

PerlTransHandler +EPrints::Apache::Rewrite

 

  <Location "">

    PerlSetVar EPrints_ArchiveID pub5

    PerlSetVar EPrints_Secure yes

 

    Options +ExecCGI

    Order allow,deny

    Allow from all

  </Location>

 

  ErrorLog /var/log/apache2/pub_ssl_error.log

  CustomLog /var/log/apache2/pub_ssl_access.log combined

  RewriteEngine On

  RewriteCond %{REQUEST_METHOD} ^TRACE

  RewriteRule .* - [F]

 

  PerlTransHandler +EPrints::Apache::Rewrite

</VirtualHost>

# END

 

That is, one file have ServerName= pub.epsilon.slu.se and REPOID=pub5, the other stud.epsilon.slu.se with REPOID=stud5.  If I in the failing pub5-config file choose the other repo-id, then it works (so to me that means that the virtual hosts file are ok).  I then assumed that the problem is the REPO/cfg/cfg.d/10_core.pl files, but these are short and simple:

 

$c->{aliases} = [];

$c->{securehost} = 'pub.epsilon.slu.se';

$c->{secureport} = 443;

$c->{http_root} = undef

 

And with host 'stud.epsilon.slu.se' for the other (working repo).

 

/usr/share/eprints3/bin/epadmin test pub5

Everything seems OK.

 

I have also re-genreated all static pages.

 

Any suggestion what I have missed to check/change is most welcome.  Please let me know!

 

Regards,

Christer

 

-- The Open University is incorporated by Royal Charter (RC 000391), an exempt charity in England & Wales and a charity registered in Scotland (SC 038302). The Open University is authorised and regulated by the Financial Conduct Authority in relation to its secondary activity of credit broking.