|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| ac-aux/ | H | 30-Jun-2018 | - | 16,576 | 12,377 |
| applications/ | H | 30-Jun-2018 | - | 18,299 | 14,678 |
| c_src/ | H | 03-May-2022 | - | 2,359 | 1,759 |
| contrib/ | H | 30-Jun-2018 | - | 1,534 | 865 |
| doc/ | H | 03-May-2022 | - | 4,988 | 3,974 |
| ebin/ | H | 03-May-2022 | - | 595 | 513 |
| examples/ | H | 30-Jun-2018 | - | 2,298 | 1,836 |
| include/ | H | 03-May-2022 | - | 1,320 | 1,061 |
| m4/ | H | 30-Jun-2018 | - | 9,315 | 8,422 |
| man/ | H | 03-May-2022 | - | 3,654 | 2,972 |
| munin/ | H | 30-Jun-2018 | - | 137 | 81 |
| priv/ | H | 03-May-2022 | - | 3,186 | 2,851 |
| rel/ | H | 30-Jun-2018 | - | 844 | 632 |
| scripts/ | H | 03-May-2022 | - | 2,488 | 1,924 |
| src/ | H | 03-May-2022 | - | 33,180 | 25,690 |
| ssl/ | H | 30-Jun-2018 | - | 546 | 430 |
| testsuite/ | H | 03-May-2022 | - | 12,889 | 10,416 |
| win32/ | H | 03-May-2022 | - | 1,401 | 1,132 |
| www/ | H | 03-May-2022 | - | 10,287 | 8,262 |
| ChangeLog | H A D | 30-Jun-2018 | 140.5 KiB | 5,446 | 3,354 |
| LICENSE | H A D | 30-Jun-2018 | 1.5 KiB | 28 | 23 |
| Makefile.am | H A D | 03-May-2022 | 6.6 KiB | 202 | 154 |
| Makefile.in | H A D | 03-May-2022 | 37.7 KiB | 1,141 | 1,009 |
| README.md | H A D | 30-Jun-2018 | 4.4 KiB | 168 | 111 |
| README.osx | H A D | 30-Jun-2018 | 403 | 15 | 9 |
| README.pkg-config | H A D | 30-Jun-2018 | 295 | 16 | 11 |
| aclocal.m4 | H A D | 30-Jun-2018 | 43.3 KiB | 1,221 | 1,111 |
| configure | H A D | 30-Jun-2018 | 575.3 KiB | 19,231 | 16,207 |
| configure.ac | H A D | 30-Jun-2018 | 18.4 KiB | 534 | 444 |
| erlang_deps.mk | H A D | 30-Jun-2018 | 321 | 10 | 4 |
| include.mk | H A D | 03-May-2022 | 510 | 18 | 11 |
| known_dialyzer_warnings | H A D | 30-Jun-2018 | 1 KiB | 18 | 16 |
| rebar.config | H A D | 30-Jun-2018 | 904 | 24 | 18 |
| rebar.config.script | H A D | 30-Jun-2018 | 2.9 KiB | 78 | 67 |
| two-mode-mode.el | H A D | 30-Jun-2018 | 4.7 KiB | 135 | 79 |
| vsn.mk | H A D | 30-Jun-2018 | 15 | 2 | 1 |
| yaws.pc.in | H A D | 30-Jun-2018 | 300 | 16 | 13 |
README.md
1This is Yaws, a webserver for dynamic content written in Erlang.
2
3[![Travis build Status](https://travis-ci.org/klacke/yaws.svg?branch=master)](https://travis-ci.org/klacke/yaws)
4
5Prepare build
6-------------
7
8Get and install an Erlang system (http://www.erlang.org).
9
10**To compile Yaws, Erlang/OTP R16B01 or higher is required.**
11
12If you've cloned the source from github and you want to build using autotools,
13note there is no ./configure script in the source, so create one:
14
15 $> autoreconf -fi
16
17Install build dependencies. Required packages to compile Yaws are (based on
18debian packages):
19
20* build-essential
21* autoconf/automake/libtool
22* erlang - Required apps:
23 * erlang-{kernel/stdlib/sasl/erts}
24 * erlang-compiler
25 * erlang-crypto
26 * erlang-xmerl
27* libpam0g-dev
28
29To build the documentation (optional), you also need to install:
30
31* texlive-latex-base
32* texlive-latex-recommended
33* texlive-fonts-recommended
34* texlive-font-utils
35* texlive-extra-utils
36* ghostscript
37
38On Ubuntu/debian this is pretty much equal to:
39
40 $> apt-get build-dep yaws
41
42Finally, to run the testsuites, yaws need to install:
43
44* git
45* wget
46* curl
47* erlang-eunit
48* erlang-inets
49* erlang-mnesia
50* erlang-ssl
51* cadaver
52
53
54Build
55-----
56
57You can build using rebar:
58
59 $> rebar get-deps compile
60
61or via autotools:
62
63 $> ./configure --prefix=/usr/local
64
65If using rebar, you'll get a "local installation" with Yaws script in ./bin
66and the Yaws configuration file in ./etc/yaws.
67
68If using autotools, the build will be configured by default for installation
69under /usr/local. For more information about installation directories and
70other supported options, see the configure help. Useful options are:
71
72 --with-defaultcharset=CHARSET specify default charset, i.e UTF-8
73 --with-extrainclude=DIR dir to include if e.g. pam is installed in some odd place
74 --with-erlang=PREFIX prefix where Erlang is installed (optional)
75
76Note to packagers (rpm, deb ...) All install targets support the DESTDIR
77variable. Thus, if we do
78
79 $> ./configure --prefix=/usr; make
80
81we can subsequently do:
82
83 $> make install DESTDIR=/foo/bar
84
85All Yaws files will be installed under DESTDIR, but all code will assume Yaws
86should be installed under /usr.
87
88Main make targets:
89
90* all : compile Yaws
91* debug : compile Yaws with debug flags
92* clean : remove files produced by all or debug target
93* install : do a proper install of Yaws
94* doc or docs : build the documentation
95* check or test : launch tests
96* cleantest : remove files produced by check target
97* dialyzer : run dialyzer on Yaws
98* mkinstaller : build an installer for windows
99* cleaninstaller: remove files produced by mkinstaller target
100* apps : compile Yaws applications (chat,mail,wiki,yapp)
101* cleanapps : remove files produced by apps target
102* installapps : install Yaws applications
103* fullinstall : install + installapps
104* fullclean : clean + cleantest + cleanapps + cleaninstaller
105
106
107Test your build
108---------------
109
110With autotools, to test the build, you should install it somewhere:
111
112 $> ./configure --prefix=$PWD/_inst && make install
113 $> $PWD/_inst/bin/yaws -i
114
115If you used rebar to compile Yaws, you can alternatively start Yaws with
116
117 $> ./bin/yaws -i
118
119Either approach will start a webserver at http://0.0.0.0:8000
120Terminate through ^C, or ^G followed by q, or
121
122 > init:stop()
123
124NOTE: If you've used rebar to build the system, none of the following
125directions apply. With rebar only "local installations" are supported.
126
127
128Install and run
129---------------
130
131NOTE: following commands may require root privileges, depending of the
132installation prefix.
133
134Just run:
135
136 $> make install
137
138Then, to run Yaws, you should use its script:
139
140 $> ${bindir}/yaws -i
141
142This starts an interactive system.
143
144With the default yaws.conf file, this will create a webserver at
145http://${host} and one at https://${host}.
146
147You can adapt Yaws configuration by editing '${sysconfig}/yaws/yaws.conf'.
148
149
150Daemonize Yaws
151--------------
152
153Start it using '--daemon' and '--heart' options:
154
155 $> ${bindir}/yaws --daemon --heart
156
157This will start a daemon (--daemon) which will be autorestarted when/if it
158crashes or hangs (--heart).
159Also, for most unices, we create proper start scripts in ${sysconfdir}/init.d
160
161Example: Here is how I compile/start the yaws system that runs at
162http://yaws.hyber.org (Ubuntu server system)
163
164 $> autoreconf -fi
165 $> ./configure --sysconfdir=/etc
166 $> make && make install
167 $> /etc/init.d/yaws start
168
README.osx
1# Homebrew on OSX
2
3If you develop on OS X (Mavericks, Mountain Lion, Lion, Snow Leopard), the
4Yaws formula works correctly for users of Erlang/OTP R16B01 and above. To
5install please run:
6
7 brew install yaws
8
9To install the HEAD using Homebrew run:
10
11 brew install --HEAD yaws
12
13This capability was made to work correctly with [this pull request
14merge](https://github.com/mxcl/homebrew/pull/23076).
15
README.pkg-config