<div dir="ltr"><div><div><div><div><div>HI,<br><br></div>Thanks for the response. The "new" server is fsua3 which I had it on standby so when fsua2 died I put fsua3 to work. It contains new installation (on a 64-bit machine) but was never tested thoroughly as an access server (I test it as far as getting courses but somehow never viewed a problem.)<br>
<br></div>I managed to "fix it" - by comparing the lines in the hosts file with a working server and it looks like that the entries for the ip address does not match the official name on the dns_hosts. Now the problems file show up and I can view the problems on the web.<br>
<br></div>Yes, all access servers get directed to loncapa (lonbalancer) for login which is configured as https. The cert work with IE but firefox, .. does not recognize it. When it expires next year, the plan is to get one that works for all browsers.<br>
<br></div>Thanks,<br></div>-hk<br><br></div><div class="gmail_extra"><br clear="all"><div><div dir="ltr">H. K. Ng<br>Associate Professor of Physics<br>Department of Physics<br>Florida State University<br>Tallahassee, FL 32306-4350</div>
</div>
<br><br><div class="gmail_quote">On Mon, Nov 18, 2013 at 7:17 PM, Stuart Raeburn <span dir="ltr"><<a href="mailto:raeburn@msu.edu" target="_blank">raeburn@msu.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">Hi,<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Recently, I had to switch servers when one suffered from a hard disk<br>
failure.<br>
</blockquote>
<br></div>
Was the "new" server previously used as a LON-CAPA server?<br>
<br>
If so, what was switched on the access server?<br>
IP address, hostname, lonHostID?<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<font color="blue">WARNING: LWP get: 403 Forbidden:<br>
/home/httpd/html/res/....*.<u></u>problem</font><br>
</blockquote>
<br></div>
That warning is reported from &repcopy() in /home/httpd/lib/perl/Apache/<a href="http://lonnet.pm" target="_blank">lo<u></u>nnet.pm</a> on the LON-CAPA access server.<br>
<br>
The URL which is being requested from the remote server (presumably the library server for the fsu domain) should be:<br>
<br>
<a href="http://loncapa10.fsu.edu/raw/....*.problem" target="_blank">http://loncapa10.fsu.edu/raw/.<u></u>...*.problem</a><br>
<br>
The entry in /etc/httpd/conf/loncapa_<u></u>apache.conf which controls access to /raw is:<br>
<br>
<LocationMatch "^/+raw.*"><br>
PerlAccessHandler Apache::lonracc<br>
</LocationMatch><br>
<br>
The handler routine in /home/httpd/lib/perl/Apache/<a href="http://lonracc.pm" target="_blank">lo<u></u>nracc.pm</a> will return a FORBIDDEN (403 return code) from the following code:<br>
<br>
(a)<br>
<br>
my $reqhost = $r->get_remote_host(REMOTE_<u></u>NOLOOKUP);<br>
my @hostids= &Apache::lonnet::get_hosts_<u></u>from_ip($reqhost);<br>
if (!@hostids && $reqhost ne '127.0.0.1' ) {<br>
    $r->log_reason("Unable to find a host for ".<br>
                   $r->get_remote_host(REMOTE_<u></u>NOLOOKUP));<br>
    return FORBIDDEN;<br>
}<br>
<br>
<br>
and (b)<br>
<br>
    foreach my $id (@hostids) {<br>
        my $uri =$r->uri;<br>
        if (($filename=~/\.meta$/) ||<br>
            ($uri=~m|^/raw/uploaded|) ||<br>
            (-e "$filename.$id") ||<br>
            &subscribed($filename,$id) ) {<br>
            return OK;<br>
        } else {<br>
            $return=FORBIDDEN;<br>
            push(@ids,$id);<br>
        }<br>
    }<br>
    if ($return == FORBIDDEN) {<br>
        $r->log_reason(join(':',@ids).<u></u>" not subscribed", $r->filename);<br>
        return FORBIDDEN;<br>
    }<br>
<br>
If you look in the Apache error log (/etc/httpd/logs/error_log or /etc/httpd/logs/ssl_error_log) on the library server you should find which of (a) or (b) are responsible -- "Unable to find a host" or "not subscribed".<br>

<br>
The fact that the .meta files appear to be replicated but the other files are not suggests that:<br>
<br>
&subscribed($filename,$id)<br>
<br>
is returning 0.<br>
<br>
The subscribed routine in <a href="http://lonracc.pm" target="_blank">lonracc.pm</a> returns 0 in the following cases:<br>
<br>
(a) No $filename.subscription file found<br>
<br>
or<br>
<br>
(b) Invalid IP address<br>
<br>
    my $hostname=&Apache::lonnet::<u></u>hostname($id);<br>
    my (undef,undef,undef,undef,$ip) = gethostbyname($hostname);<br>
<br>
    return 0 if (length($ip) != 4);<br>
<br>
or<br>
<br>
(c) The expected pattern for: lonHostID:IP address for the requesting server (the access server) is not found in the subscription file for the resource on the library server<br>
<br>
    $ip=inet_ntoa($ip);<br>
    my $expr='^'.quotemeta($id).':'.<u></u>quotemeta($ip).':';<br>
    my $found=0;<br>
    if (my $sh=Apache::File->new("$<u></u>filename.subscription")) {<br>
        while (my $subline=<$sh>) { if ($subline =~ /$expr/) { $found=1; } }<br>
        $sh->close();<br>
    }<br>
    return $found;<br>
<br>
<br>
I would check that:<br>
<br>
    my $reqhost = $r->get_remote_host(REMOTE_<u></u>NOLOOKUP);<br>
    my @hostids= &Apache::lonnet::get_hosts_<u></u>from_ip($reqhost);<br>
<br>
return the correct values when your access server requests a file in /raw from the library server.<br>
<br>
I would also check that:<br>
<br>
    my $hostname=&Apache::lonnet::<u></u>hostname($id);<br>
    my (undef,undef,undef,undef,$ip) = gethostbyname($hostname);<br>
<br>
on the library server return the expected hostname and IP address for the lonHostID of the requesting access server.<br>
<br>
I would also check the contents of the $filename.subscription file in /home/httpd/html/res/fsu on the library server for one of the files which fails replication.<br>
<br>
One thing I note about the entries in the cluster tables for the fsu servers is that they are all identified as using http, but web requests to the fsu servers get rewritten to https, and the identity of the Apache SSL certificates installed there can not be verified, (and I need to agree to an exception), when pointing a web browser at any of the fsu LON-CAPA servers.<br>

<br>
<br>
Stuart Raeburn<br>
LON-CAPA Academic Consortium<div><div class="h5"><br>
<br>
<br>
Quoting hkng <<a href="mailto:hkng@fsu.edu" target="_blank">hkng@fsu.edu</a>>:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
Recently, I had to switch servers when one suffered from a hard disk<br>
failure. The new server does not replicate the resources though the meta<br>
files are under the /home/httpd/html/res/ directories. Checking lonnet.log,<br>
there are a number of messages that say<br>
<br>
<font color="blue">WARNING: LWP get: 403 Forbidden:<br>
/home/httpd/html/res/....*.<u></u>problem</font><br>
<br>
403 indicates file permission (?) but I cannot determine while file? Any<br>
pointers?<br>
<br>
Thanks,<br>
-hk<br>
<br>
</blockquote>
<br></div></div>
______________________________<u></u>_________________<br>
LON-CAPA-admin mailing list<br>
<a href="mailto:LON-CAPA-admin@mail.lon-capa.org" target="_blank">LON-CAPA-admin@mail.lon-capa.<u></u>org</a><br>
<a href="http://mail.lon-capa.org/mailman/listinfo/lon-capa-admin" target="_blank">http://mail.lon-capa.org/<u></u>mailman/listinfo/lon-capa-<u></u>admin</a><br>
<br>
<br>
</blockquote></div><br></div>