Skip to content

Instantly share code, notes, and snippets.

@wokamoto
wokamoto / gist:03fe3fc7534b78d25c30
Last active December 9, 2020 09:39
[Nginx][S3] Nginx で S3 をリバースプロキシするための設定
location ~* ^/(get_s3)/(.*) {
set $s3_bucket 'your_s3_bucket_name.s3.amazonaws.com';
set $url_full "/$1/$2";
proxy_http_version 1.1;
proxy_set_header Host $s3_bucket;
proxy_set_header Authorization '';
proxy_hide_header x-amz-id-2;
proxy_hide_header x-amz-request-id;
proxy_hide_header Set-Cookie;
@wokamoto
wokamoto / cloudfront-preview-fix.php
Last active December 9, 2019 06:59
[WordPress] [CDN] CloudFront を前面に置いた時にプレビューが更新されないことってあるよね
<?php
/*
Plugin Name: CloudFront Preview Fix
Plugin URI:
Description: WPログイン時にパーマリンクに記事変更日付を含み、プレビューが最新になるようにする
Version: 0.5
Author:
Author URI:
*/
add_action( 'init', function(){
@wokamoto
wokamoto / cloudwatch-events-iam-role.tf
Last active November 21, 2019 09:01
[AWS][Terraform] Terraform で Amazon Inspector を導入する ref: https://qiita.com/wokamoto/items/3a331a7d30a26d6ce9f1
esource "aws_iam_role" "run_inspector_role" {
name = "cloudwatch-events-run-inspector-role"
assume_role_policy = <<POLICY
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "events.amazonaws.com"
@wokamoto
wokamoto / docomo_dialogue_api.php
Created April 3, 2015 00:54
docomo 雑談対話 API をさくっと php で使う
<?php
/*****
* https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_docs_id=5
*****/
function webnist($text) {
$context_file = dirname(__FILE__).'/.docomoapi.context';
$api_key = 'your API key here';
$api_url = sprintf('https://api.apigw.smt.docomo.ne.jp/dialogue/v1/dialogue?APIKEY=%s', $api_key);
$req_body = array('utt' => $text);
if ( file_exists($context_file) ) {
@wokamoto
wokamoto / file0.txt
Last active April 8, 2019 08:11
[WordPress] 負荷がかかっている処理を見つけるのに wp profile がとても便利だった ref: https://qiita.com/wokamoto/items/3902278e658ba856f1a9
$ wp package install git@github.com:wp-cli/profile-command.git
Installing package wp-cli/profile-command (dev-master)
Updating /home/ec2-user/.wp-cli/packages/composer.json to require the package...
Registering git@github.com:wp-cli/profile-command.git as a VCS repository...
Using Composer to install the package...
---
Loading composer repositories with package information
Updating dependencies
Resolving dependencies through SAT
Dependency resolution completed in 0.212 seconds
@wokamoto
wokamoto / aws-s3-object-exists.php
Created February 18, 2013 14:47
[PHP][AWS] S3 オブジェクトの存在確認
<?php
require_once("aws.phar");
use Aws\Common\Aws;
use Aws\Common\Enum\Region;
use Aws\S3\Enum\CannedAcl;
use Aws\S3\Exception\S3Exception;
$s3 = Aws::factory(array(
'key' => $access_key,
@wokamoto
wokamoto / remote-site-parts.php
Last active September 7, 2018 01:55
[WordPress][Plugin] 外部サイトをクロールして、特定の要素を XPath で切り出して表示するウィジェット
<?php
/**
* Adds Remote_Site_Parts widget.
*/
add_action( 'widgets_init', function(){
register_widget( 'Remote_Site_Parts' );
});
class Remote_Site_Parts extends WP_Widget {
private $options = [
'title' => 'Title:',
@wokamoto
wokamoto / wp-custom-search.php
Last active August 30, 2018 03:26
WordPress でユーザー名とか、タグ名・カテゴリ名も検索対象に
<?php
function custom_search($search, $wp_query) {
global $wpdb;
//サーチページ以外だったら終了
if (!$wp_query->is_search)
return $search;
if (!isset($wp_query->query_vars))
return $search;
@wokamoto
wokamoto / doing-wp-cron.sh
Created August 22, 2018 05:34
WordPress の cron event を wp-cli で実行するやつ
#!/bin/bash
wp_root=${1:-/var/www/html}
wp="/usr/local/bin/wp --path=${wp_root}"
if [ ! -e ${wp_root} ]; then
echo "Not exists ${wp_root}"
exit 1
fi
lock_file="/var/tmp/doing_wp-cron.$(basename $wp_root)"
@wokamoto
wokamoto / after_install.sh
Created August 16, 2018 08:52
amimoto での CodeDeply サンプル
#!/bin/bash
service nginx reload
service monit start
if [ -d /var/cache/myapp ]; then
rm -rf /var/cache/myapp
fi