unofficial mirror of meta@public-inbox.org
 help / color / mirror / Atom feed
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Eric Wong <e@80x24.org>
Cc: meta@public-inbox.org
Subject: Re: Setup woes
Date: Tue, 23 Feb 2021 22:31:17 +0100	[thread overview]
Message-ID: <20210223213117.52p5kmhqvtafbho5@pengutronix.de> (raw)
In-Reply-To: <20210223200124.GA26348@dcvr>

[-- Attachment #1: Type: text/plain, Size: 5536 bytes --]

Hello Eric,

On Tue, Feb 23, 2021 at 08:01:24PM +0000, Eric Wong wrote:
> Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote:
> >  1) Import of older mails
> >     I used Konstantin Ryabitsev script[1] to generate a directory of
> >     mbob files. It's unclear to me how to easily import that into the
> >     archive. Not knowing a better way, I'd put them all in a Maildir and
> >     use public-inbox-watch to import them. Is there a nicer way?
> 
> scripts/import_vger_from_mbox is probably the best maintained
> of the stuff in scripts for mass imports (it supports v2, unlike
> the rest of scripts/).

Ah, this worked great. I missed these scripts because they are not
included in my public-inbox.deb.

> >  2) Apache configuration
> >     I was able to setup Apache to serve individual archives but I fail
> >     to get a list listing at the root. That is I can access the barebox
> >     archive at http://lore.pengutronix.de/barebox/, but not the overview
> >     of the archived lists at http://lore.pengutronix.de/.
> > 
> > 	$ curl -D - http://lore.pengutronix.de/
> > 	HTTP/1.1 404 Not Found
> > 	Date: Tue, 23 Feb 2021 15:31:54 GMT
> > 	Server: Apache/2.4.38 (Debian)
> > 	Expires: Fri, 01 Jan 1980 00:00:00 GMT
> > 	Pragma: no-cache
> > 	Cache-Control: no-cache, max-age=0, must-revalidate
> > 	Content-Length: 9
> > 	Content-Type: text/plain
> > 
> > 	Not Found
> 
> You might need to configure publicinbox.wwwlisting to
> "all" or match=domain".  See publicinbox.wwwlisting in
> public-inbox-config(5).

I have this, with public-inbox-httpd I get a listing.

> The default behavior is to 404 since the listing is a
> fairly recent addition.
> 
> >     The Apache config looks as follows:
> > 
> > 	<VirtualHost *:80>
> > 		ServerName lore.pengutronix.de
> > 
> > 		ServerAdmin webmaster@localhost
> > 		DocumentRoot /srv/www/lore.pengutronix.de/root
> > 
> > 		<Directory "/srv/www/lore.pengutronix.de/root">
> > 			AllowOverride None
> > 			Require all granted
> > 		</Directory>
> > 
> > 		LogLevel debug
> > 
> > 		ErrorLog ${APACHE_LOG_DIR}/error.log
> > 		CustomLog ${APACHE_LOG_DIR}/access.log combined
> > 
> > 		Include conf-available/serve-cgi-bin.conf
> > 		Include mods-available/rewrite.load
> > 		SetEnv PI_DIR /home/lore/.public-inbox
> > 		SetEnv NO_SCRIPT_NAME 1
> > 
> > 		Options +ExecCGI
> > 		ScriptAlias /public-inbox.cgi "/usr/lib/cgi-bin/public-inbox.cgi"
> > 
> > 		DirectoryIndex public-inbox.cgi
> > 		RewriteEngine On
> > 		RewriteCond %{REQUEST_FILENAME} !-f
> > 		RewriteCond %{REQUEST_FILENAME} !-d
> 
> Perhaps it's the -d check?  I haven't tested WwwListing with
> Apache.

When I drop this I get:

	$ curl http://lore.pengutronix.de/
	<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
	<html><head>
	<title>500 Internal Server Error</title>
	</head><body>
	<h1>Internal Server Error</h1>
	<p>The server encountered an internal error or
	misconfiguration and was unable to complete
	your request.</p>
	<p>Please contact the server administrator at
	 webmaster@localhost to inform them of the time this error occurred,
	 and the actions you performed just before this error.</p>
	<p>More information about this error may be available
	in the server error log.</p>
	<hr>
	<address>Apache/2.4.38 (Debian) Server at lore.pengutronix.de Port 80</address>
	</body></html>

:-)
 
> > 		RewriteRule ^.* /public-inbox.cgi/$0 [L,PT]
> > 
> > 	</VirtualHost>
> > 
> >      My guess is that the "SetEnv NO_SCRIPT_NAME 1" part doesn't work as
> >      expected, but after some searching in the net I didn't find how to
> >      do this properly.
> 
> Not sure, I haven't used Apache in ages and some of the configs
> in examples/ are likely out-of-date and never tested with
> WwwListing.
> 
> If you're not using public-inbox-httpd; then I strongly suggest
> using at least mod_perl (and not plain CGI) since Perl startup
> time is atrocious.

I used CGI because I had the impression this was the easiest to get
running. Also ISTR that this isn't using cgi, but cgid, so the startup
time isn't that relevant.  Will try with mod_perl next, maybe the script
name issue will go away then.

When I debugged that some time ago I saw that /public-inbox.cgi/ is part
of the request URL that is handled in the CGI. Also the footer of the
generated pages has:

	This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.pengutronix.de/public-inbox.cgi/barebox/0 barebox/git/0.git

	...

which is wrong.
 
> If you're dealing with large inboxes and supporting smart HTTP
> clone/fetch, then use public-inbox-httpd (which works with
> varnish, mod_proxy, or any other front-end proxy).

Using Apache was one of the preconditions by the company's admin team,
but I will forward your information once I'm done with the setup and
when I hand over operation of lore.pengutronix.de to them.

> public-inbox-httpd can throttle CPU/memory intensive tasks
> (e.g. git-http-backend, cgit) independently of other work
> (the "limiter" stuff in public-inbox-config(5)).
> 
> As of public-inbox 1.6, -httpd also does git blob retrievals
> around 20% faster on /T/, /t/ and t.mbox.gz requests and
> decouples high-latency HDD from network ops.

Thanks for your valuable input,
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2021-02-23 21:31 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-23 15:42 Setup woes Uwe Kleine-König
2021-02-23 20:01 ` Eric Wong
2021-02-23 21:31   ` Uwe Kleine-König [this message]
2021-02-23 22:11     ` Eric Wong
2021-02-24 10:25       ` Uwe Kleine-König
2021-02-24 11:09         ` Eric Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210223213117.52p5kmhqvtafbho5@pengutronix.de \
    --to=u.kleine-koenig@pengutronix.de \
    --cc=e@80x24.org \
    --cc=meta@public-inbox.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).