A basic installation of Node.js, Express, and Socket.io served over https:// using a Letsencrypt SSL certificate.
- Spin up DO droplet
- Set up DNS
- Access the server via SSH
A basic installation of Node.js, Express, and Socket.io served over https:// using a Letsencrypt SSL certificate.
| // MIT License | |
| // | |
| // Copyright (c) 2019 Simon Lightfoot | |
| // | |
| // Permission is hereby granted, free of charge, to any person obtaining a copy | |
| // of this software and associated documentation files (the "Software"), to deal | |
| // in the Software without restriction, including without limitation the rights | |
| // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| // copies of the Software, and to permit persons to whom the Software is | |
| // furnished to do so, subject to the following conditions: |
| # Optimized MySQL configuration for cPanel servers by Kani Baspinar - Updated June 2016 | |
| # | |
| # The settings provided below are a starting point for a 24GB RAM server with 8 CPU cores. | |
| # If you have less or more resources available you MUST adjust accordingly to save CPU, RAM and disk I/O usage. | |
| # To fine tune these settings for your system, use MySQL DB diagnostics tools like: | |
| # Test your configuration ; https://launchpad.net/mysql-tuning-primer | |
| # or | |
| # http://blog.mysqltuner.com/download/ | |
| # Note that if there is NO comment beside a setting, then you don't need to adjust it. | |
| # |
| #!/bin/sh | |
| # vim: ts=8 | |
| ######################################################################### | |
| # # | |
| # MySQL performance tuning primer script # | |
| # Writen by: Matthew Montgomery # | |
| # Report bugs to: https://bugs.launchpad.net/mysql-tuning-primer # | |
| # Inspired by: MySQLARd (http://gert.sos.be/demo/mysqlar/) # | |
| # Version: 1.6-r1 Released: 2011-08-06 # |
| class Point { | |
| final int x,y; | |
| Point(this.x, this.y); | |
| @override | |
| String toString() { | |
| return "(${this.x}, ${this.y})"; | |
| } | |
| } |
| <?php | |
| Collection::macro('recursive', function () { | |
| return $this->map(function ($value) { | |
| if (is_array($value) || is_object($value)) { | |
| return collect($value)->recursive(); | |
| } | |
| return $value; | |
| }); |
| <?php | |
| error_reporting(E_ALL); | |
| ini_set('display_errors', '1'); | |
| /* Attempt MySQL server connection. Assuming you are running MySQL | |
| server with default setting (user 'root' with no password) */ | |
| $link = mysqli_connect("192.168.1.7", "said", "saidsaid", "unirow"); | |
| // Check connection |
| import 'dart:ui'; | |
| import 'package:flutter/material.dart'; | |
| void main() { | |
| runApp(const MyApp()); | |
| } | |
| List<Offset> getBresenhamCirclePoints( | |
| Offset center, |
| INSERT INTO `templates` (`id`, `nama_template`, `subject_email`, `template_email`, `template_wa`, `list_variabel`, `created_at`, `updated_at`) VALUES (NULL, 'otp_reschedule_order', 'Otp Cancel Order', '<p><br></p>', '<p><span style=\"color: rgb(75, 86, 117);\">Gunakan kode OTP {{$OTP}} untuk reschedule order {{$NO_ORDER}}.</span></p><p><br></p><p><br></p><p><span style=\"color: rgb(75, 86, 117);\"><span class=\"ql-cursor\"></span>Testing template notifikasi ya.</span></p>', '[\"{{OTP}}\",\"{{NO_ORDER}}\",\"{{PELANGGAN}}\",\"{{TOTAL_ORDER}}\",\"{{REKENING_PEMBAYARAN}}\",\"{{BATAS_PEMBAYARAN}}\",\"{{DETAIL_ORDER}}\",\"{{STATUS_PELANGGAN}}\",\"{{JENIS_PELANGGAN}}\",\"{{LEVEL_PELANGGAN}}\",\"{{JUDUL_KUPON}}\",\"{{JUMLAH_POTONGAN}}\",\"{{RENTAL_REWARD_POIN}}\",\"{{RENTAL_REWARD_EXPIRED}}\"]', NULL, '2024-06-28 14:29:18'); |
| import 'package:flutter/material.dart'; | |
| class GoogleMapsClonePage extends StatelessWidget { | |
| @override | |
| Widget build(BuildContext context) { | |
| return Scaffold( | |
| body: Stack( | |
| children: <Widget>[ | |
| CustomGoogleMap(), | |
| CustomHeader(), |