The popular open-source contract for web professionals by Stuff & Nonsense
- Originally published: 23rd December 2008
- Revised date: March 15th 2016
- Original post
<?php | |
require('includes/application_top.php'); | |
// Output headers so that the file is downloaded rather than displayed | |
header('Content-Type: text/csv; charset=utf-8'); | |
header('Content-Disposition: attachment; filename=data.csv'); | |
// Create a file pointer connected to the output stream | |
$output = fopen('php://output', 'w'); |
Hosting | |
We provide hosting for our own built websites on our preferred hosting provider <hosting provider name>. | |
Based on their SLA we endeavor to have 99.9% uptime on our servers measured annually. | |
There may of course be times when the server will not be available, this can be scheduled or unscheduled. | |
Scheduled downtime is when we know it is going to happen and tell you about it in advance. Scheduled downtime will wherever possible, almost certainly be outside of normal office hours. We’ll do our stuff in the evening or at weekend to minimize impact on your business. | |
There may be very rare occasions when we need to restart the server during normal office hours and it is not possible to inform you before hand. We don’t make these decisions lightly and if this does happen we apologise. |
#!/bin/bash | |
## Script to install a Debian Jessie 8 template on Xenserver 6.5 | |
## https://gist.github.com/jniltinho/0455fb5f01cfd8bbdbff | |
# Check if we are running on XenServer 6.5 | |
CHECK65=`cat /etc/redhat-release | grep "XenServer release 6.5"` | |
if [ "x${CHECK65}" == "x" ]; then echo "This script is intended to be run on XenServer 6.5"; exit 1; fi | |
# The redirector aims to solve the problem of choosing a Debian mirror. | |
# Read more at http://httpredir.debian.org/ |
#!/bin/bash -e | |
### Copyright 1999-2015. Parallels IP Holdings GmbH. All Rights Reserved. | |
### Secure plesk clean installation with hostname certificate by Let's Encrypt | |
export PYTHONWARNINGS="ignore:Non-standard path" | |
LE_HOME=${LE_HOME:-"/usr/local/psa/var/modules/letsencrypt"} | |
HOSTNAME=$(hostname) | |
# Use staging server for testing | |
# --server https://acme-staging.api.letsencrypt.org/directory |
(function () { | |
// Simply add a data-save-tabs to your tablist e.g. <ul role="tablist" data-save-tabs="your-custom-slug"> | |
$('[data-save-tabs] a[data-toggle="tab"]').on('shown.bs.tab', function (e) { | |
var savedTabs = JSON.parse(localStorage.getItem('savedTabs')); | |
if (typeof savedTabs !== 'object' || !savedTabs){ | |
savedTabs = {}; | |
} | |
savedTabs[$(this).closest('[data-save-tabs]').data('save-tabs')] = $(this).attr('href'); | |
localStorage.setItem('savedTabs', JSON.stringify(savedTabs)); |
#!/bin/sh | |
# Released under CC0 licence cf. http://creativecommons.org/publicdomain/zero/1.0/ | |
# In case of | |
# depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3 | |
# verify error:num=20:unable to get local issuer certificate | |
# download https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem to /etc/ssl/certs | |
# In case of Proftpd and 21 (unable to verify the first certificate) with letsencrypt the TLSCACertificateFile and TLSRSACertificateFile have to specified separately like in the article below | |
# https://medium.com/@dchesterton/using-let-s-encrypt-with-proftpd-on-ubuntu-53611157a344 | |
# For the HTTP SNI test this article was used |