blob: 421f93ae22ac84ccd10e2154bb14b953b8049755 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# weeb

weeb is a web microframework for GNU Guile built on
[FastCGI](https://en.wikipedia.org/wiki/FastCGI). It aims to provide a
comprehensive library for building dynamic websites in Scheme, while
being leaner, faster, and more stable than Guile's `(web server)` module,
and integrating well with common web servers like
[Apache](https://en.wikipedia.org/wiki/Apache_HTTP_Server) and
[nginx](https://en.wikipedia.org/wiki/Nginx).
API is subject to change.
weeb is free software: you can redistribute it and/or modify it under the
terms of the GNU Affero General Public License as published by the Free
Software Foundation, either version 3 of the License, or (at your option)
any later version.
## Requirements
- GNU Guile 3.0 or later with `--enable-regex`
- `libfcgi-2.4.1`
- A web server with FCGI proxy support
## Building
There is one small wrapper library for `libfcgi` that needs to be built.
Just run `make`.
## Using
```sh
$ spawn-fcgi -s /tmp/guile-fcgi.sock -- ...
```
Where `...` is however you would invoke Guile to run your program.
### Apache Vhost
```xml
<VirtualHost *:80>
ServerName mysite.local
ProxyPassMatch ^/ unix:/tmp/guile-fcgi.sock|fcgi://localhost/
</VirtualHost>
```
|
© 2015 - 2026 Jakob L. Kreuze