Skip to content

Instantly share code, notes, and snippets.

@riipandi
Last active September 29, 2019 16:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save riipandi/df960109eea07ca0630f9423e4dc38a1 to your computer and use it in GitHub Desktop.
Save riipandi/df960109eea07ca0630f9423e4dc38a1 to your computer and use it in GitHub Desktop.
Basic LEMP Stack snippets and configuration
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="all, noindex, nofollow">
<meta name="googlebot" content="all, noindex, nofollow">
<title>Site Not Found</title>
<link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Karla:400,700'>
<link rel='stylesheet' type='text/css' href='//cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css'>
<link rel="icon" type="image/x-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABR1BMVEUAAADvnyLzniTooi7voCPvoCPwoST0nyDwoCPxnyL/qgDyoSLvnyTzoiP1ox/woSLqqivwoCPwoCPwnyLwnyPwoifxnyTwoCTwoCPwnyPuoiLwoSLwoCTvoCTxoSTzniTyoSjxnyLxnyP0myHmmRrvoCPxoCPjqhzwoCPwoCTwoSPwoCPwoCPvoCTvoCPwnyPwoCTvoSPwoCTxnyPwoCPwnyPxoCLvoSL/qivwoCPxoCPwoCPwoCPyoCPwoCPvoCPyoSLwoCPxnyLwoCPxnyLwoCPtniPwoCPunyLwoCTwoCPwoSTvoCX/nyDwoSPwoCTvoSPwoCPwoCLypibyniPwoCPwoSPyoSTtpCTwoCPwoCPrnSfwoCPwnyLwoCPwoCPwoCPxoCPynyDwoSTwoSPuoiLwoCLwnyTynSHwoCPwoCPwoCMAAACLgF6TAAAAa3RSTlMAcCoLg5N6GO4lAyZAFhlEDGapyGUhXe3sqB53VoFcFRNaWBcK5uUJ+tdXmflOXph5krpI97hZbwa3wv62O/2RTO81+ErZHdYtI/yHPgiaRl/7hhQ64eA5HPPyGjN4zMa7bihkqjxDiCfc25nru3cAAAABYktHRACIBR1IAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4gwTEhI7xlnrsAAAAUdJREFUKM+d0ldbwjAUBuDDLhWlFES0roK7DnCBE7eAAgruiSBDz/+/Nym0pYXc+F2cpnmfNOdJCmCKzQb9Y3fQ6nTS6rD3sMtFq9ttjE3xcF5SeZ6UAc7T+3XfoDYa8vfdXgiIwaAYEizTw6LaSngE1UTCaqujYx3mJW6cNI16JgAmOYnX109Ng4xdiUIsZtpgZrab5+Yt+0cNW1hEXLKwouvyyirimiFxJSHAuqEbm4hbICSUuMrbUjIFO4i7e7riPqSSUrTryBEPQoeaYtqy9xHi8UnotKN4ZmH+nPpFRy95E2ay4MsRv2pr7hqyGR3zhUgR4CanNX9LDr0YKeS1qy6V6ePuvq0Pj/StXLJe+tMz1ZdXxu8G3jcSL0vh/eOzUvlictVPUmVy7ZukxuR6gKTOZFkhkf+7GhrNZoOt0Pr5bZkm/gC4WlyqqnyCMQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxOC0xMi0xOVQxNzoxODo1OSswMTowMN/V1S0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTgtMTItMTlUMTc6MTg6NTkrMDE6MDCuiG2RAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
margin: 0 auto;
margin-top: 58px;
max-width: 616px;
padding: 0 16px;
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 24px;
color: rgba(0,0,0,0.87);
}
h1, h2, h3 {
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-weight: 700;
}
h1 {
margin: 24px 0 16px 0;
padding: 0 0 16px 0;
border-bottom: 1px solid rgba(0,0,0,0.1);
font-size: 32px;
line-height: 36px;
}
h2 {
margin: 24px 0 16px 0;
padding: 0;
font-size: 20px;
line-height: 32px;
color: rgba(0,0,0,0.54);
}
p {determines
margin: 0;
margin-bottom: 16px;
}
ol {
margin: 0;
}
ol li {
margin: 0;
line-height: 24px;
padding-left: 12px;
}
a {
color: #039BE5;
text-decoration: none;
}
a:hover {
color: #1E90FF;
text-decoration: none;
}
code {
display: inline-block;
padding: 3px 4px;
background-color: #ECEFF1;
border-radius: 3px;
font-family: 'Roboto Mono',"Liberation Mono",Courier,monospace;
font-size: 14px;
line-height: 1;
}
.logo {
display: block;
text-align: center;
margin-top: 58px;
margin-bottom: 24px;
}
img {
width: 180px;
}
@media screen and (max-width: 616px) {
body {
margin-top: 24px;
}
.logo {
margin: 0;
}
}
</style>
</head>
<body>
<div class="wrapper animated bounce">
<h1>Site Not Found!</h1>
<h2>Why am I seeing this?</h2>
<p>There are a few reasons:</p>
<ol>
<li>You haven't deployed an app yet.</li>
<li>You have invalid web server configuration.</li>
<li>You may have deployed an empty directory.</li>
<li>You haven't finished setting it up the domain yet.</li>
</ol>
<h2>How can I deploy my first app?</h2>
<p>Refer to our <a href="//ruhaycloud.com/docs/" target="_blank">hosting documentation</a> to get started.</p>
<a class="logo" href="//ruhaycloud.com">
<img src="data:image/png;base64,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aGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiCiAgIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjExKzA3OjAwIgogICB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjE3KzA3OjAwIgogICB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgZGM6Zm9ybWF0PSJpbWFnZS9wbmciCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjNjZmFhYmQtYzNiMy1kYzQ3LThhYjMtM2M3YTJkM2NkN2EwIgogICB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NDM1Y2NkOWItZTM2My1mYjRkLWJlMTktMmM2Mzc1NWY1NWViIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6YThkOTM2MDEtODgxMS0wOTRhLTk0ZDYtNzMwZTA3NmE0NGRkIgogICBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIgogICBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxMSswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjA3ZDBjODkyLWEzNDgtODQ0Yi1iODYyLTY4N2IwODc3MjlmYSIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIgogICAgICBzdEV2dDpjaGFuZ2VkPSIvIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIKICAgICAgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIgogICAgICBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2M2NmYWFiZC1jM2IzLWRjNDctOGFiMy0zYzdhMmQzY2Q3YTAiCiAgICAgIHN0RXZ0OndoZW49IjIwMTktMDgtMDNUMDE6NTg6MTcrMDc6MDAiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgIDx4bXBNTTpEZXJpdmVkRnJvbQogICAgc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowN2QwYzg5Mi1hMzQ4LTg0NGItYjg2Mi02ODdiMDg3NzI5ZmEiCiAgICBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDphOGQ5MzYwMS04ODExLTA5NGEtOTRkNi03MzBlMDc2YTQ0ZGQiLz4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pl7tx7sAAAAJcEhZcwAADsQAAA7EAZUrDhsAACAASURBVHic7Zx3nGVFmfe/z1N1zrmpw+QBhoEhRxUVhTWA4mJCJQio6BoW1oCroq66u++7mF50za6yGBDM6OoK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"/>
</a>
</div>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="all, noindex, nofollow">
<meta name="googlebot" content="all, noindex, nofollow">
<title>Default Web Page</title>
<link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Karla:400,700'>
<link rel='stylesheet' type='text/css' href='//cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css'>
<link rel="icon" type="image/x-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABR1BMVEUAAADvnyLzniTooi7voCPvoCPwoST0nyDwoCPxnyL/qgDyoSLvnyTzoiP1ox/woSLqqivwoCPwoCPwnyLwnyPwoifxnyTwoCTwoCPwnyPuoiLwoSLwoCTvoCTxoSTzniTyoSjxnyLxnyP0myHmmRrvoCPxoCPjqhzwoCPwoCTwoSPwoCPwoCPvoCTvoCPwnyPwoCTvoSPwoCTxnyPwoCPwnyPxoCLvoSL/qivwoCPxoCPwoCPwoCPyoCPwoCPvoCPyoSLwoCPxnyLwoCPxnyLwoCPtniPwoCPunyLwoCTwoCPwoSTvoCX/nyDwoSPwoCTvoSPwoCPwoCLypibyniPwoCPwoSPyoSTtpCTwoCPwoCPrnSfwoCPwnyLwoCPwoCPwoCPxoCPynyDwoSTwoSPuoiLwoCLwnyTynSHwoCPwoCPwoCMAAACLgF6TAAAAa3RSTlMAcCoLg5N6GO4lAyZAFhlEDGapyGUhXe3sqB53VoFcFRNaWBcK5uUJ+tdXmflOXph5krpI97hZbwa3wv62O/2RTO81+ErZHdYtI/yHPgiaRl/7hhQ64eA5HPPyGjN4zMa7bihkqjxDiCfc25nru3cAAAABYktHRACIBR1IAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4gwTEhI7xlnrsAAAAUdJREFUKM+d0ldbwjAUBuDDLhWlFES0roK7DnCBE7eAAgruiSBDz/+/Nym0pYXc+F2cpnmfNOdJCmCKzQb9Y3fQ6nTS6rD3sMtFq9ttjE3xcF5SeZ6UAc7T+3XfoDYa8vfdXgiIwaAYEizTw6LaSngE1UTCaqujYx3mJW6cNI16JgAmOYnX109Ng4xdiUIsZtpgZrab5+Yt+0cNW1hEXLKwouvyyirimiFxJSHAuqEbm4hbICSUuMrbUjIFO4i7e7riPqSSUrTryBEPQoeaYtqy9xHi8UnotKN4ZmH+nPpFRy95E2ay4MsRv2pr7hqyGR3zhUgR4CanNX9LDr0YKeS1qy6V6ePuvq0Pj/StXLJe+tMz1ZdXxu8G3jcSL0vh/eOzUvlictVPUmVy7ZukxuR6gKTOZFkhkf+7GhrNZoOt0Pr5bZkm/gC4WlyqqnyCMQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxOC0xMi0xOVQxNzoxODo1OSswMTowMN/V1S0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTgtMTItMTlUMTc6MTg6NTkrMDE6MDCuiG2RAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
margin: 0 auto;
margin-top: 58px;
max-width: 616px;
padding: 0 16px;
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 24px;
color: rgba(0,0,0,0.87);
}
h1, h2, h3 {
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-weight: 700;
}
h1 {
margin: 24px 0 16px 0;
padding: 0 0 16px 0;
border-bottom: 1px solid rgba(0,0,0,0.1);
font-size: 32px;
line-height: 36px;
}
h2 {
margin: 24px 0 16px 0;
padding: 0;
font-size: 20px;
line-height: 32px;
color: rgba(0,0,0,0.54);
}
p {determines
margin: 0;
margin-bottom: 16px;
}
ol {
margin: 0;
}
ol li {
margin: 0;
line-height: 24px;
padding-left: 12px;
}
a {
color: #039BE5;
text-decoration: none;
}
a:hover {
color: #1E90FF;
text-decoration: none;
}
code {
display: inline-block;
padding: 3px 4px;
background-color: #ECEFF1;
border-radius: 3px;
font-family: 'Roboto Mono',"Liberation Mono",Courier,monospace;
font-size: 14px;
line-height: 1;
}
.logo {
display: block;
text-align: center;
margin-top: 58px;
margin-bottom: 24px;
}
img {
width: 180px;
}
@media screen and (max-width: 616px) {
body {
margin-top: 24px;
}
.logo {
margin: 0;
}
}
</style>
</head>
<body>
<div class="wrapper animated bounce">
<h1>Welcome!</h1>
<h2>Why am I seeing this?</h2>
<p>There are a few reasons:</p>
<ol>
<li>This is the default page for your new site.</li>
<li>This page used to test the web server configuration.</li>
<li>Maybe you haven't uploaded your website yet.</li>
<li>You may have deployed an empty directory.</li>
</ol>
<h2>How can I deploy my first app?</h2>
<p>Refer to our <a href="//ruhaycloud.com/docs/" target="_blank">hosting documentation</a> to get started.</p>
<a class="logo" href="//ruhaycloud.com">
<img src="data:image/png;base64,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aGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiCiAgIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjExKzA3OjAwIgogICB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjE3KzA3OjAwIgogICB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgZGM6Zm9ybWF0PSJpbWFnZS9wbmciCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjNjZmFhYmQtYzNiMy1kYzQ3LThhYjMtM2M3YTJkM2NkN2EwIgogICB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NDM1Y2NkOWItZTM2My1mYjRkLWJlMTktMmM2Mzc1NWY1NWViIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6YThkOTM2MDEtODgxMS0wOTRhLTk0ZDYtNzMwZTA3NmE0NGRkIgogICBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIgogICBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxMSswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjA3ZDBjODkyLWEzNDgtODQ0Yi1iODYyLTY4N2IwODc3MjlmYSIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIgogICAgICBzdEV2dDpjaGFuZ2VkPSIvIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIKICAgICAgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIgogICAgICBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2M2NmYWFiZC1jM2IzLWRjNDctOGFiMy0zYzdhMmQzY2Q3YTAiCiAgICAgIHN0RXZ0OndoZW49IjIwMTktMDgtMDNUMDE6NTg6MTcrMDc6MDAiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgIDx4bXBNTTpEZXJpdmVkRnJvbQogICAgc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowN2QwYzg5Mi1hMzQ4LTg0NGItYjg2Mi02ODdiMDg3NzI5ZmEiCiAgICBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDphOGQ5MzYwMS04ODExLTA5NGEtOTRkNi03MzBlMDc2YTQ0ZGQiLz4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pl7tx7sAAAAJcEhZcwAADsQAAA7EAZUrDhsAACAASURBVHic7Zx3nGVFmfe/z1N1zrmpw+QBhoEhRxUVhTWA4mJCJQio6BoW1oCroq66u++7mF50za6yGBDM6OoK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"/>
</a>
</div>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="all, noindex, nofollow">
<meta name="googlebot" content="all, noindex, nofollow">
<title>Account Suspended!</title>
<link rel='stylesheet' type='text/css' href='//fonts.googleapis.com/css?family=Karla:400,700'>
<link rel='stylesheet' type='text/css' href='//cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css'>
<link rel="icon" type="image/x-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABR1BMVEUAAADvnyLzniTooi7voCPvoCPwoST0nyDwoCPxnyL/qgDyoSLvnyTzoiP1ox/woSLqqivwoCPwoCPwnyLwnyPwoifxnyTwoCTwoCPwnyPuoiLwoSLwoCTvoCTxoSTzniTyoSjxnyLxnyP0myHmmRrvoCPxoCPjqhzwoCPwoCTwoSPwoCPwoCPvoCTvoCPwnyPwoCTvoSPwoCTxnyPwoCPwnyPxoCLvoSL/qivwoCPxoCPwoCPwoCPyoCPwoCPvoCPyoSLwoCPxnyLwoCPxnyLwoCPtniPwoCPunyLwoCTwoCPwoSTvoCX/nyDwoSPwoCTvoSPwoCPwoCLypibyniPwoCPwoSPyoSTtpCTwoCPwoCPrnSfwoCPwnyLwoCPwoCPwoCPxoCPynyDwoSTwoSPuoiLwoCLwnyTynSHwoCPwoCPwoCMAAACLgF6TAAAAa3RSTlMAcCoLg5N6GO4lAyZAFhlEDGapyGUhXe3sqB53VoFcFRNaWBcK5uUJ+tdXmflOXph5krpI97hZbwa3wv62O/2RTO81+ErZHdYtI/yHPgiaRl/7hhQ64eA5HPPyGjN4zMa7bihkqjxDiCfc25nru3cAAAABYktHRACIBR1IAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4gwTEhI7xlnrsAAAAUdJREFUKM+d0ldbwjAUBuDDLhWlFES0roK7DnCBE7eAAgruiSBDz/+/Nym0pYXc+F2cpnmfNOdJCmCKzQb9Y3fQ6nTS6rD3sMtFq9ttjE3xcF5SeZ6UAc7T+3XfoDYa8vfdXgiIwaAYEizTw6LaSngE1UTCaqujYx3mJW6cNI16JgAmOYnX109Ng4xdiUIsZtpgZrab5+Yt+0cNW1hEXLKwouvyyirimiFxJSHAuqEbm4hbICSUuMrbUjIFO4i7e7riPqSSUrTryBEPQoeaYtqy9xHi8UnotKN4ZmH+nPpFRy95E2ay4MsRv2pr7hqyGR3zhUgR4CanNX9LDr0YKeS1qy6V6ePuvq0Pj/StXLJe+tMz1ZdXxu8G3jcSL0vh/eOzUvlictVPUmVy7ZukxuR6gKTOZFkhkf+7GhrNZoOt0Pr5bZkm/gC4WlyqqnyCMQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxOC0xMi0xOVQxNzoxODo1OSswMTowMN/V1S0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTgtMTItMTlUMTc6MTg6NTkrMDE6MDCuiG2RAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
margin: 0 auto;
margin-top: 58px;
max-width: 616px;
padding: 0 16px;
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 24px;
color: rgba(0,0,0,0.87);
}
h1, h2, h3 {
font-family: 'Karla', 'Helvetica Neue', sans-serif;
font-weight: 700;
}
h1 {
margin: 24px 0 16px 0;
padding: 0 0 16px 0;
border-bottom: 1px solid rgba(0,0,0,0.1);
font-size: 32px;
line-height: 36px;
}
h2 {
margin: 24px 0 16px 0;
padding: 0;
font-size: 20px;
line-height: 32px;
color: rgba(0,0,0,0.54);
}
p {determines
margin: 0;
margin-bottom: 16px;
}
ol {
margin: 0;
}
ol li {
margin: 0;
line-height: 24px;
padding-left: 12px;
}
a {
color: #039BE5;
text-decoration: none;
}
a:hover {
color: #1E90FF;
text-decoration: none;
}
code {
display: inline-block;
padding: 3px 4px;
background-color: #ECEFF1;
border-radius: 3px;
font-family: 'Roboto Mono',"Liberation Mono",Courier,monospace;
font-size: 14px;
line-height: 1;
}
.logo {
display: block;
text-align: center;
margin-top: 58px;
margin-bottom: 24px;
}
img {
width: 180px;
}
@media screen and (max-width: 616px) {
body {
margin-top: 24px;
}
.logo {
margin: 0;
}
}
</style>
</head>
<body>
<div class="wrapper animated bounce">
<h1>Website suspended!</h1>
<h2>Why am I seeing this?</h2>
<p>
Maybe you need to fix this following issue(s):
</p>
<ol>
<li>Malware has been detected in website files.</li>
<li>Billing issues: non-payment, overdue invoice, etc.</li>
<li>Copyright violation: Unlawful use of copyrighted materials.</li>
<li>Other terms violation: breaching our terms and conditions.</li>
</ol>
<h2>How can I restore my website?</h2>
<p>Refer to our <a href="//ruhaycloud.com/docs/" target="_blank">documentation</a> to get started.</p>
<a class="logo" href="//ruhaycloud.com">
<img src="data:image/png;base64,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aGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiCiAgIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjExKzA3OjAwIgogICB4bXA6TWV0YWRhdGFEYXRlPSIyMDE5LTA4LTAzVDAxOjU4OjE3KzA3OjAwIgogICB4bXA6TW9kaWZ5RGF0ZT0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgZGM6Zm9ybWF0PSJpbWFnZS9wbmciCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjNjZmFhYmQtYzNiMy1kYzQ3LThhYjMtM2M3YTJkM2NkN2EwIgogICB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6NDM1Y2NkOWItZTM2My1mYjRkLWJlMTktMmM2Mzc1NWY1NWViIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6YThkOTM2MDEtODgxMS0wOTRhLTk0ZDYtNzMwZTA3NmE0NGRkIgogICBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIgogICBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxMSswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249InNhdmVkIgogICAgICBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjA3ZDBjODkyLWEzNDgtODQ0Yi1iODYyLTY4N2IwODc3MjlmYSIKICAgICAgc3RFdnQ6d2hlbj0iMjAxOS0wOC0wM1QwMTo1ODoxNyswNzowMCIKICAgICAgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIgogICAgICBzdEV2dDpjaGFuZ2VkPSIvIi8+CiAgICAgPHJkZjpsaQogICAgICBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIKICAgICAgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIgogICAgICBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZyIvPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2M2NmYWFiZC1jM2IzLWRjNDctOGFiMy0zYzdhMmQzY2Q3YTAiCiAgICAgIHN0RXZ0OndoZW49IjIwMTktMDgtMDNUMDE6NTg6MTcrMDc6MDAiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgIDx4bXBNTTpEZXJpdmVkRnJvbQogICAgc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowN2QwYzg5Mi1hMzQ4LTg0NGItYjg2Mi02ODdiMDg3NzI5ZmEiCiAgICBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmE4ZDkzNjAxLTg4MTEtMDk0YS05NGQ2LTczMGUwNzZhNDRkZCIKICAgIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDphOGQ5MzYwMS04ODExLTA5NGEtOTRkNi03MzBlMDc2YTQ0ZGQiLz4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pl7tx7sAAAAJcEhZcwAADsQAAA7EAZUrDhsAACAASURBVHic7Zx3nGVFmfe/z1N1zrmpw+QBhoEhRxUVhTWA4mJCJQio6BoW1oCroq66u++7mF50za6yGBDM6OoK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"/>
</a>
</div>
</body>
</html>
server {
listen 80; server_name $server_addr;
return 301 $scheme://$hostname$request_uri;
}
server {
listen 80;
listen 443 ssl http2;
server_name DOMAIN;
root /usr/share/nginx/html;
include server_params;
error_page 500 502 503 504 /50x.html;
location = /50x.html { root /usr/share/nginx/html; }
add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
ssl_certificate /etc/letsencrypt/live/DOMAIN/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/DOMAIN/privkey.pem;
# PHP-FPM Handler
# rewrite ^/(.*\.php)(/)(.*)$ /$1?file=/$3 last;
location / { try_files $uri $uri/ /index.php?$query_string; }
location ~ ^/(.+\.php)$ {
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_read_timeout 1200;
include fastcgi_params;
}
}
<?php if ($_SERVER['REQUEST_URI'] == '/phpinfo') { phpinfo(); } else { ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="all, noindex, nofollow">
<meta name="googlebot" content="all, noindex, nofollow">
<title>Default Web Page</title>
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Kanit:200">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" />
<link rel="icon" type="image/x-icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABR1BMVEUAAADvnyLzniTooi7voCPvoCPwoST0nyDwoCPxnyL/qgDyoSLvnyTzoiP1ox/woSLqqivwoCPwoCPwnyLwnyPwoifxnyTwoCTwoCPwnyPuoiLwoSLwoCTvoCTxoSTzniTyoSjxnyLxnyP0myHmmRrvoCPxoCPjqhzwoCPwoCTwoSPwoCPwoCPvoCTvoCPwnyPwoCTvoSPwoCTxnyPwoCPwnyPxoCLvoSL/qivwoCPxoCPwoCPwoCPyoCPwoCPvoCPyoSLwoCPxnyLwoCPxnyLwoCPtniPwoCPunyLwoCTwoCPwoSTvoCX/nyDwoSPwoCTvoSPwoCPwoCLypibyniPwoCPwoSPyoSTtpCTwoCPwoCPrnSfwoCPwnyLwoCPwoCPwoCPxoCPynyDwoSTwoSPuoiLwoCLwnyTynSHwoCPwoCPwoCMAAACLgF6TAAAAa3RSTlMAcCoLg5N6GO4lAyZAFhlEDGapyGUhXe3sqB53VoFcFRNaWBcK5uUJ+tdXmflOXph5krpI97hZbwa3wv62O/2RTO81+ErZHdYtI/yHPgiaRl/7hhQ64eA5HPPyGjN4zMa7bihkqjxDiCfc25nru3cAAAABYktHRACIBR1IAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4gwTEhI7xlnrsAAAAUdJREFUKM+d0ldbwjAUBuDDLhWlFES0roK7DnCBE7eAAgruiSBDz/+/Nym0pYXc+F2cpnmfNOdJCmCKzQb9Y3fQ6nTS6rD3sMtFq9ttjE3xcF5SeZ6UAc7T+3XfoDYa8vfdXgiIwaAYEizTw6LaSngE1UTCaqujYx3mJW6cNI16JgAmOYnX109Ng4xdiUIsZtpgZrab5+Yt+0cNW1hEXLKwouvyyirimiFxJSHAuqEbm4hbICSUuMrbUjIFO4i7e7riPqSSUrTryBEPQoeaYtqy9xHi8UnotKN4ZmH+nPpFRy95E2ay4MsRv2pr7hqyGR3zhUgR4CanNX9LDr0YKeS1qy6V6ePuvq0Pj/StXLJe+tMz1ZdXxu8G3jcSL0vh/eOzUvlictVPUmVy7ZukxuR6gKTOZFkhkf+7GhrNZoOt0Pr5bZkm/gC4WlyqqnyCMQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxOC0xMi0xOVQxNzoxODo1OSswMTowMN/V1S0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTgtMTItMTlUMTc6MTg6NTkrMDE6MDCuiG2RAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==">
<!--[if lt IE 9]>
<script src="//oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="//oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<style>
*{-webkit-box-sizing:border-box;box-sizing:border-box}
body{padding:0;margin:0}
#notfound{position:relative;height:100vh}
#notfound .notfound{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}
.notfound{max-width:767px;width:100%;line-height:1.4;text-align:center;padding:15px}
.notfound .notfound-404{position:relative;height:220px}
.notfound .notfound-404 h1{font-family:'Kanit',sans-serif;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:186px;font-weight:200;margin:0;background:linear-gradient(130deg,#ffa34f,#ff6f68);color:transparent;-webkit-background-clip:text;background-clip:text;text-transform:capitalize}
.notfound h2{font-family:'Kanit',sans-serif;font-size:33px;font-weight:200;text-transform:uppercase;margin-top:0;margin-bottom:25px;letter-spacing:3px}
.notfound p{font-family:'Kanit',sans-serif;font-size:16px;font-weight:200;margin-top:0;margin-bottom:25px;line-height:1.8em}
.notfound a{font-family:'Kanit',sans-serif;color:#ff6f68;font-weight:200;text-decoration:none;border-bottom:1px dashed #ff6f68;border-radius:2px}
.notfound-social>a{display:inline-block;height:40px;line-height:40px;width:40px;font-size:14px;color:#ff6f68;border:1px solid #efefef;border-radius:50%;margin:6px;-webkit-transition:.2s all;transition:.2s all}
.notfound-social>a:hover{color:#fff;background-color:#ff6f68;border-color:#ff6f68}
@media only screen and (max-width: 480px) {
.notfound .notfound-404{position:relative;height:168px}
.notfound .notfound-404 h1{font-size:142px}
.notfound h2{font-size:22px}
}
</style>
</head>
<body>
<div id="notfound">
<div class="notfound">
<div class="notfound-404">
<h1>Hello!</h1>
</div>
<h2>Welcome to our new website.</h2>
<p>
This is the default page for <?=$_SERVER['HTTP_HOST'];?>.
This page used to test the correct operation of the web server
installation and we are using PHP v<?=(float)phpversion();?> as
default interpreter. If you can read this page, it means that the
web server installed and working properly.
</p>
<div class="notfound-social">
<a href="//github.com/riipandi"><i class="fa fa-github"></i></a>
<a href="//twitter.com/riipandi"><i class="fa fa-twitter"></i></a>
<a href="//instagram.com/riipandi"><i class="fa fa-instagram"></i></a>
</div>
</div>
</div>
</body>
</html>
<?php } ?>
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
# Parameter for PHP-FPM
fastcgi_hide_header X-Powered-By;
fastcgi_intercept_errors on;
fastcgi_index index.php;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_split_path_info ^(.+?\.php)(|/.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $path_info;
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
if [ -z "$1" ] ; then
echo -e "\nPlease input the directory name."
echo -e "\nExample: $(basename "$0") /var/www/html\n"
exit 1
fi
if [ ! -d "$1" ]; then echo -e "\nDirectory $1 doesn't exists!\n" ; exit 1 ; fi
echo -e "\nSetting up file and directory permission..."
chmod -R 0770 $1 && chmod 0777 $1
find $1 -type d -exec chmod 0777 {} \;
find $1 -type f -exec chmod 0644 {} \;
chown -R webmaster:webmaster $1
find $1 -type d -name .git -exec chmod 0777 {} \;
find $1 -type f -name .git -exec chmod 0644 {} \;
echo -e "\nPermission for directory $1 has been fixed!\n"
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [ -z "$1" ] ; then
echo -e "\nPlease input the database name."
echo -e "\nExample: $(basename "$0") awesomedb\n"
exit 1
fi
# Check if database already exist
CHECK=`mysql -e "SHOW DATABASES" | grep $1`
if [ "$CHECK" == "$1" ]; then
echo -e "\nDatabase already exists!\n" ; exit 1
else
db_name=$1
fi
# Database password
read -e -p "Database Password : " -i "auto" ask_db_pass
if [ "$ask_db_pass" == "auto" ] ;then
db_pass=`pwgen -1 -A 16`
else
db_pass=$ask_db_pass
fi
read -e -p "Database Address : " -i "127.0.0.1" db_addr
# Create database and user
mysql -e "CREATE DATABASE IF NOT EXISTS $db_name"
mysql -e "CREATE USER IF NOT EXISTS '$db_name'@'$db_addr' IDENTIFIED BY '$db_pass'"
mysql -e "GRANT ALL PRIVILEGES ON $db_name.* TO '$db_name'@'$db_addr'"
mysql -e "FLUSH PRIVILEGES"
echo -e "\nDatabase created with user $db_name and password: $db_pass\n"
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [[ $($MYSQL mysql -e "select Db, User, Host from mysql.db") ]]; then
echo
$MYSQL mysql -e "select Db, User, Host from mysql.db;"
else
echo -e "\nNo databased needs to be deleted.\n"
exit 1
fi
# The wizard
echo
read -e -p "Database Name : " db_name
read -e -p "Database User : " -i "$db_name" db_user
read -e -p "Database Host : " -i "127.0.0.1" db_host
# Drop database and user
mysql -e "DROP DATABASE IF EXISTS $db_name"
mysql -e "DROP USER IF EXISTS '$db_name'@'$db_host'"
mysql -e "FLUSH PRIVILEGES"
echo -e "\nDatabase $db_name @ $db_host has been dropped.\n"
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [[ $(mysql -e "select Db, User, Host from mysql.db") ]]; then
echo ; mysql -e "select Db, User, Host from mysql.db;" ; echo
fi
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
}
user webmaster;
worker_processes 1;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
multi_accept on;
use epoll;
}
http {
##
## Basic Settings
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
autoindex off;
client_body_timeout 12;
client_header_timeout 12;
keepalive_timeout 70;
keepalive_requests 10000;
send_timeout 10;
client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 384m;
large_client_header_buffers 2 1k;
types_hash_max_size 1024;
server_names_hash_bucket_size 64;
output_buffers 1 32k;
postpone_output 1460;
server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
index index.php index.html default.html;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" '
'"$host" sn="$server_name" ' 'rt=$request_time '
'ua="$upstream_addr" us="$upstream_status" '
'ut="$upstream_response_time" ul="$upstream_response_length" '
'cs=$upstream_cache_status';
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log warn;
##
## SSL Settings
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_tickets off;
ssl_session_timeout 10m;
ssl_session_cache shared:SSL:10m;
ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DHE+AES128:!ADH:!AECDH:!MD5:!ECDHE-RSA-AES256-SHA384:!ECDHE-RSA-AES256-SHA:!ECDHE-RSA-AES128-SHA256:!DHE-RSA-AES128-SHA256:!DHE-RSA-AES128-SHA;
ssl_ecdh_curve secp384r1;
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
resolver 1.1.1.1 [2606:4700:4700::1111] valid=300s;
resolver_timeout 5s;
ssl_trusted_certificate /etc/ssl/certs/chain.pem;
ssl_dhparam /etc/ssl/certs/dhparam-4096.pem;
##
## Gzip Settings
gzip on;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 5;
gzip_min_length 256;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml \
application/xml application/xml+rss text/javascript application/xhtml+xml \\
application/rss+xml application/x-javascript application/atom_xml application/x-httpd-php \\\
application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon;
##
## Extra config and VirtualHost
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/vhost.d/*.conf;
##
## Required by Nginx Amplify
## curl -k http://127.0.0.1/nginx_status
server {
listen 127.0.0.1:80;
server_name 127.0.0.1;
location /nginx_status {
stub_status on;
allow 127.0.0.1;
deny all;
}
}
}
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
apt update
apt -y full-upgrade
apt -y autoremove
apt clean
# Global restrticttion
location = /favicon.ico { log_not_found off; access_log off; allow all; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~ \.well-known { log_not_found off; access_log off; allow all; }
location ~ \.(htaccess|htpasswd|db|yml|log|svn|git|twig|cfg|conf|ini|tpl)$ {
return 444;
}
# Enhanced security
# add_header X-Frame-Options SAMEORIGIN;
# add_header X-Content-Type-Options nosniff;
# add_header X-XSS-Protection '1; mode=block';
# add_header Strict-Transport-Security 'max-age=15768000; preload';
# location ~ /\.(?!well-known).* { deny all; }
# Media: css, javascript, images, icons, video, audio, htc
# location ~* \.(?:css|js|jpg|jpeg|gif|png|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
# expires 1y;
# access_log off;
# log_not_found off;
# add_header Cache-Control "public";
# add_header X-Robots-Tag none;
# add_header X-Download-Options noopen;
# add_header X-Permitted-Cross-Domain-Policies none;
# }
# Other documents
# location ~* \.(?:pdf|doc|docx|xls|xlsx|ppt|pptx|rtf|eot|ttf|ttc|otf|woff|woff2)$ {
# expires 7d;
# access_log off;
# log_not_found off;
# add_header Cache-Control "public";
# }
# rss, atom, favicon
# location ~* \.(?:rss|atom|ico)$ {
# add_header Cache-Control "public";
# expires 1h;
# }
server {
listen 80; listen 443 ssl http2;
server_name DOMAIN;
# server_name www.DOMAIN;
root /srv/web/DOMAIN/public;
include server_params;
ssl_certificate /etc/letsencrypt/live/DOMAIN/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/DOMAIN/privkey.pem;
if ($scheme = http) { return 301 https://$server_name$request_uri; }
# add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
access_log /var/log/nginx/DOMAIN-access.log main;
error_log /var/log/nginx/DOMAIN-error.log warn;
# PHP-FPM Handler
# rewrite ^/(.*\.php)(/)(.*)$ /$1?file=/$3 last;
location / { try_files $uri $uri/ /index.php?$query_string; }
location ~ ^/(.+\.php)$ {
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_read_timeout 1200;
include fastcgi_params;
}
}
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [ -z "$1" ] ; then
echo -e "\nPlease input the domain name."
echo -e "\nExample: $(basename "$0") domain.com\n"
exit 1
fi
www=""
read -ep "Generate certificate for www subdomain? yes/no : " answer
if [[ "${answer,,}" =~ ^(yes|y)$ ]] ; then www="-d www.$1" ; fi
systemctl stop nginx
certbot certonly --standalone --rsa-key-size 4096 --agree-tos --register-unsafely-without-email -d $1 $www
systemctl restart nginx
echo -e "SSL certificate for $1 created..."
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
systemctl stop nginx
certbot renew --no-self-upgrade
systemctl restart nginx
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [ -z "$1" ] ; then
echo -e "\nPlease input the domain name."
echo -e "\nExample: $(basename "$0") domain.com\n"
exit 1
fi
if [[ ! -d "/etc/letsencrypt/live/$1" ]]; then
echo -e "SSL certificate for $1 doesn't exist..."
exit 1
fi
read -p "Press enter to continue ..."
certbot revoke --cert-path /etc/letsencrypt/live/$1/fullchain.pem
echo -e "SSL certificate for $1 has been revoked..."
#!/bin/bash
if [[ $EUID -ne 0 ]]; then echo 'This script must be run as root' ; exit 1 ; fi
NO='\033[0;33m' ; OK='\033[0;32m' ; NC='\033[0m'
if [ -z "$1" ] ; then
echo -e "\nPlease input the domain name."
echo -e "\nExample: $(basename "$0") domain.com\n"
exit 1
fi
read -p "Press enter to continue ..."
systemctl stop nginx
# If using Cloudflare
# certbot certonly --agree-tos --rsa-key-size 4096 --register-unsafely-without-email --dns-cloudflare \
# --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini --dns-cloudflare-propagation-seconds 10 \
# --preferred-challenges dns-01 -d $1,*.$1
certbot certonly \
--manual \
--agree-tos \
--no-bootstrap \
--rsa-key-size 4096 \
--manual-public-ip-logging-ok \
--preferred-challenges dns-01 \
--server https://acme-v02.api.letsencrypt.org/directory \
-d $1,*.$1
certbot certificates | grep Domains:
systemctl restart nginx
echo -e "Wildcard SSL certificate for $1 created..."
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment