Upload files to ''
This commit is contained in:
parent
7ea5757237
commit
30b2e43574
|
@ -0,0 +1,6 @@
|
|||
__ _ __ __ _ __ _ __ __
|
||||
/ /_(_) /___/ /__ (_)___ _____/ /_(_) /___ __/ /____
|
||||
/ __/ / / __ / _ \ / / __ \/ ___/ __/ / __/ / / / __/ _ \
|
||||
/ /_/ / / /_/ / __/ / / / / (__ ) /_/ / /_/ /_/ / /_/ __/
|
||||
\__/_/_/\__,_/\___/ /_/_/ /_/____/\__/_/\__/\__,_/\__/\___/
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Tilde Institute for OpenBSD Education</title>
|
||||
<link rel="stylesheet" href="tilde.css" type="text/css"/>
|
||||
<link rel="icon" type="image/png" href="icon.png"/>
|
||||
</head>
|
||||
<body>
|
||||
<div id="container">
|
||||
<div id="logo">
|
||||
<img src="logo.png" alt="" /><br />
|
||||
<div id="logobyline">
|
||||
of OpenBSD Education
|
||||
</div>
|
||||
</div>
|
||||
<div id="navigation">
|
||||
<a href="http://tilde.institute">News</a> :: <a href="signup.php">Sign Up</a> :: <a href="start.html">Quick-Start Guide</a> :: <a href="coc.html">Code of Conduct</a> :: <a href="https://tilde.zone/@tildeinstitute">Mastodon</a>
|
||||
</div>
|
||||
<div id="content">
|
||||
<p>This will be a quick-and-dirty guide to getting started with the BCHS stack. It will pertain to using C specifically, however, if you develop in another language, the general information regarding static compilation will apply as well. More C-specific information can be found at:</p>
|
||||
<ul>
|
||||
<li><a href="https://learnbchs.org">Learn BCHS</a></li>
|
||||
<li><a href="http://man.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man2/pledge.2">pledge(2)</a></li>
|
||||
<li><a href="http://man.openbsd.org/unveil.2">unveil(2)</a></li>
|
||||
<li><a href="https://kristaps.bsd.lv/kcgi/">kcgi</a></li>
|
||||
<li><a href="https://kristaps.bsd.lv/ksql/">ksql</a></li>
|
||||
<li><a href="https://kristaps.bsd.lv/kwebapp">kwebapp</a></li>
|
||||
</ul>
|
||||
<p>tilde.institute is set up to process all files with the .cgi extension via slowcgi(8). This allows for a multitude of possibilities - any compiled language can be used to develop web applications on an OpenBSD server. It's advised to use C because of the pledge(2) and unveil(2) system calls available, which allow for restricting privileges and restricted filesystem access, respectively. However, C is not always an easy language to develop in, and other languages such as Rust include robust memory safety by design.</p>
|
||||
<p>Keep in mind that if you don't use the previously listed kcgi/ksql/kwebapp libraries, you will need to work with HTTP's eccentricities manually. For an example, here's <a href="helloworld.c.txt">the Hello World code</a> from the LearnBCHS site. And <a href="helloworld.cgi">here it is running</a> as compiled CGI here at the Tilde Institute.</p>
|
||||
<p>Once you've written your software to be served via CGI, be sure to statically link the executables. Sure, there's a larger file size, but the benefits outweigh that in this case - there's no relying on what I may or may not have installed on the Tilde Institute's server. For example:</p>
|
||||
<p>$ cc -static -g -W -Wall -o app.cgi app.c</p>
|
||||
<p>When you've completed compilation, make sure to set permissions properly (755) and move it to the public_html folder in your home directory. httpd(8) is set to use index.html as the index file, however this can be changed to index.cgi or what-have-you by contacting ahriman via the <a href="https://tilde.town">tilde.town</a> or <a href="https://tilde.team">tilde.team</a> IRC networks.</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,71 @@
|
|||
body {
|
||||
background-color: #000000;
|
||||
font-family: monospace;
|
||||
font: Noto Mono;
|
||||
color: green;
|
||||
padding-right: 0px;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
margin-right: 0px;
|
||||
margin-left: 10px;
|
||||
width: 850px;
|
||||
}
|
||||
.date {
|
||||
font-weight: bold;
|
||||
}
|
||||
#logo {
|
||||
margin-left: 40px;
|
||||
margin-bottom: 10px;
|
||||
font-size: 30px;
|
||||
}
|
||||
#logobyline {
|
||||
margin-left: 80px;
|
||||
margin-top: -20px;
|
||||
}
|
||||
#navigation {
|
||||
margin-left: auto;
|
||||
margin-right: 40px;
|
||||
width: 850px;
|
||||
text-align: center;
|
||||
}
|
||||
#content {
|
||||
width: 650px;
|
||||
margin-left: 100px;
|
||||
}
|
||||
#container {
|
||||
width: 850px;
|
||||
}
|
||||
#news {
|
||||
width: 550px;
|
||||
margin-left: 50px;
|
||||
}
|
||||
a:link {
|
||||
text-decoration: none;
|
||||
color:#cccccc;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color:#999999;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color:#ffffff;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
p {
|
||||
text-indent: 15px;
|
||||
}
|
||||
code {
|
||||
text-indent: 30px;
|
||||
}
|
||||
em {
|
||||
font-style: bold;
|
||||
}
|
||||
h1 {
|
||||
font-size: 20px;
|
||||
text-align: center;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
Loading…
Reference in New Issue