Skip to content

Instantly share code, notes, and snippets.

@jdeathe
jdeathe / php-cachetool-usage.md
Last active January 11, 2023 23:46
How to Clear PHP Opcache without Restarting PHP-FPM.

PHP CacheTool - Manage cache in the CLI

Use CacheTool to view stats for and manage PHP's APC or Zend Opcache opcode cache.

Using CacheTool you can clear the PHP opcache without reloading PHP-FPM.

In this example, CacheTool is to be installed alongside a demonstration PHP-FPM Docker container.

Prerequisites

@fearblackcat
fearblackcat / proxy_for_terminal.md
Last active April 29, 2025 02:52
Set proxy for terminal on mac

Shadowsocks Proxy

apt-get install python-pip
pip install shadowsocks

sudo ssserver -p 443 -k password -m aes-256-cfb --user nobody -d start
@stroebs
stroebs / make-chr.sh
Last active January 19, 2025 10:59
Install Mikrotik CHR on a Digital Ocean droplet (Ubuntu 20.04 tested working 29/03/2022)
#!/bin/bash
#
# Digital Ocean Ubuntu 18.04 x64 Droplet with "Regular Intel" CPU.
# Running:
# git clone https://gist.github.com/54fc09734a3911e91eeeb43434f117df.git
# cd 54fc09734a3911e91eeeb43434f117df/
# chmod +x make-chr.sh
# ./make-chr.sh
#
# Once the reboot is done, login with root/CHANGEME and change the password!
@danjargold
danjargold / whatFilesHaveIShared.gs
Created August 11, 2018 09:31
Google script to list (on a Google Sheet) all files shared in your google drive, including all viewers, editors, and sharing permissions. Credit goes to @woodwardtw (https://gist.github.com/woodwardtw/22a199ecca73ff15a0eb) as this is an improvement on his code which only assesses a single folder and one level of sub-folders down.
function listFolders(folder) {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(["Name", "Sharing Access", "Sharing Permission", "Get Editors", "Get Viewers", "Date", "Size", "URL", "Download", "Description", "Type"]); //writes the headers
//var folder = DriveApp.getFolderById("INSERT_YOUR_FILE_ID");//that long chunk of random numbers/letters in the URL when you navigate to the folder
//getLooseFiles(folder, sheet);
//getSubFolders(folder, sheet);
//instead of getting folder by ID rather get all folders and cycle through each. Note this will miss loose files in parent directory.
var folder = DriveApp.getFolders()
@mohanpedala
mohanpedala / bash_strict_mode.md
Last active May 4, 2025 11:53
set -e, -u, -o, -x pipefail explanation
@tkrotoff
tkrotoff / FrontendFrameworksPopularity.md
Last active May 3, 2025 06:52
Front-end frameworks popularity (React, Vue, Angular and Svelte)
@viritt
viritt / cloudflare_update.script
Last active January 29, 2025 08:23 — forked from kiler129/cloudflare_update.script
Automatic script for Mikrotik RouterOS updating record on CloudFlare.
#########################################################################
# ================================================== #
# $ Mikrotik RouterOS update script for CloudFlare $ #
# ================================================== #
# #
# - You need a CloudFlare account & api key (look under settings), #
# a zone and A record in it #
# - All variables in first section are obvious, except CFid, #
# To obtain CFzoneid use following command in any unix shell: #
# curl -X GET "https://api.cloudflare.com/client/v4/accounts" -H "X-Auth-Email: YOUR_EMAIL" -H "X-Auth-Key: YOUR_API_KEY" -H "Content-Type: application/json" | python -mjson.tool
@siralam
siralam / ATR_RSI_MACD.pine
Last active May 22, 2024 03:34
TradingView: ATR + RSI + MACD
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © szewa1992
//@version=4
study("MACD + ATR + RSI", resolution="", overlay=false)
displayATR = input(title="Display ATR?", type=input.bool, defval=true)
displayRSI = input(title="Display RSI?", type=input.bool, defval=false)
displayMACD = input(title="Display MACD?", type=input.bool, defval=true)
@lancethomps
lancethomps / close_notifications_applescript.js
Last active April 27, 2025 01:40
AppleScript to close all notifications on macOS Big Sur, Monterey, Ventura, Sonoma, and Sequoia
function run(input, parameters) {
const appNames = [];
const skipAppNames = [];
const verbose = true;
const scriptName = 'close_notifications_applescript';
const CLEAR_ALL_ACTION = 'Clear All';
const CLEAR_ALL_ACTION_TOP = 'Clear';
const CLOSE_ACTION = 'Close';

NodeJS + Plesk + nginx + HTTPS (wss://)

Connecting to a WebSocket server via WebSocket Secure connection (wss://) on a Plesk based host.

Create a subfolder or subdomain

As I'm going to have only one NodeJS, I prefer a subdomain: sockets.example.com If you will have several NodeJS Apps you may want something like example.com/socket1, example.com/socket2, ...

Optional: disable PHP

As I will only use NodeJS on that subdomain, and I will redirect all traffic to NodeJS, it is safe to disable PHP