Putting the repository name into it


the browser tries to download the file. So it seems the issue is with the location{} statement. Will respond with the complete nginx.conf file later (got some pay-the-bills work to do at this moment). The config is the default configuration from a clean install of debian, nginx, and certbot installation of letsencrypt.. Except for the ssl stuff added by certbot, it is all default. There are two include files that are linked from with the file. The three server statements are in the include files. I put the location {} in the first server declaration.

Scott Doctor

On 3/7/2018 09:08, John Found wrote:
On Tue, 6 Mar 2018 16:30:58 -0800
Scott Doctor <sc...@scottdoctor.com> wrote:

Well I did everything in the list. Triple checked eveything.
Keep getting a 403 error (forbidden) when I try to access
through the browser.


I created a new repository in that folder, opened it and did an
empty commit. Must be missing some setting somewhere. I have the
fossil executable in /usr/bin with permissions at 755. I can
execute fossil from the command line (via putty). I think a
problem may be where I put the location {...}.

Any suggestions what to check?

Very hard to say... Can you download the created .fossil files, by specifying 
them in the URL? If so, then the
location {} settings are wrong and this directory is served as an usual web 
site directory.

Think about publishing the nginx.conf files. I don't think it is a big security 

Scott Doctor

On 3/3/2018 15:17, John Found wrote:
On Sat, 24 Feb 2018 10:57:58 -0800
Scott Doctor <sc...@scottdoctor.com> wrote:

I am trying to setup an internet server for one of my projects
that I am going to make open source using fossil. I have a new
Linode server account with a clean install (and fully updated)
of debian and nginx with letsencrypt https working properly. I
am having trouble getting fossil to work.

Is there a step-by-step how to get fossil to work from an
internet page?
My website I am trying to do this on is:

If you have working nginx with https, the remaining is straightforward:

1. Make fossil to work like a scgi server. I have done it through systemd 

1.1 create file "/etc/systemd/system/fossil.service" with the following text:

Description=Fossil scm SCGI script.
After=network.target network-online.target nss-lookup.target nginx.service

ExecStart=/usr/bin/fossil server /DOCUMENT_ROOT/fossil/ --scgi --localhost 
--port 9000 --repolist


1.2 Execute:

$sudo systemctl enable fossil
$sudo systemctl start fossil

2. Configure nginx.

Include in the server{} section of your config file:

location /fossil/ {
    include scgi_params;
    scgi_param SCRIPT_NAME "/fossil";
    client_max_body_size 20M;

3. Now every .fossil repo, located in the /fossil/ directory will be accessible 


Hope will be helpful.

fossil-users mailing list

fossil-users mailing list

Reply via email to