Integromatというのは,IFTTTとかzapierみたいなwebサービスの連携サービス.
かなり細やかに設定できるというか,もはやプログラミングするような感じで構成しないと動かない.
Gmailをslackに投稿する時のハマりポイント
- 日本語の文字化け
- 長いとslackに拒否られる
対策
文字列変換してちょんぎる.
Now, http2 is available if your browser accept it.
Integromatというのは,IFTTTとかzapierみたいなwebサービスの連携サービス.
かなり細やかに設定できるというか,もはやプログラミングするような感じで構成しないと動かない.
文字列変換してちょんぎる.
再々追記
wordpress 4.0 から, run_wptexturize フィルターが追加され,簡単に止められるようになった.
もはやプラグイン公開の価値があるかは知らないけど,いちおうアップデートしておいた.
また,機能に合わせて,プラグインの名前を変えた → Disable wptexturize
再追記
リンクのパスを間違えていた…すみません。以下、復旧済です。
追記
とりあえず作ったよ。
下記を解決するプラグインは、機能を殺す部分だけなら簡単に実装できたが、plugin の体裁にするのに手がかかった。公式にアップするのもまだちょっとかかりそう。
とりあえずすぐ解決したい人は、どうぞ → [Disable Auto Replacement]
解凍してできるディレクトリを、wp-content/plugins へ配置すれば OK。
これを使うと、クォーテーションもハイフネーションもアスキー文字のまま出力されるが、三連ピリオドを三点リーダーへ置換する機能も死ぬので、注意すること。
私は、プログラムのコードを本文中に書くことが多い。
しかし wordpress を使うと勝手に全角に置き換えられるのが不満で、回避策として " などを使うようにしていた。これは面倒くさい。
まだ文字実体参照の用意されている文字コードなどなら良いが、ハイフンみたく用意されてないと (正確には、ndash と mdash はあるが、これはハイフンではない)、不便で仕方がない。
(wordpress は二連ハイフンを mdash か何かに置き換えてくれる)
さっきも NOOK の記事を書こうとしていい加減に腹が立ってきたので、そういうのを抑制する plugin でもないか検索したら、原因が見付かった。
wordpressで”ダブルクォーテーションが全角になっちゃう” | IT勉強するコタツネコ
この人、置換行をコメントアウトしているので他の問題が出そうだなー、と思いつつそれはさておき、この記事にある
$curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
というのが問題の行で、dynamic_replacements の中身を見れば簡単に分かるはず…
小足見てから昇龍余裕でした。
例えば、シングルクォートは ’
に置き換えちゃ、だめだろ JK
’
は 引用符 - Wikipedia が詳しい。
どうダメかというと、'
と比較するとこんな感じくらいダメ。
ダメさが伝わりやすいように、MS Pゴシックにフォントを変えてみる。
apos版 → He's a student.
8217版 → He’s a student.
もー! 半角文字を全角文字に置き換えるコーディングするやつは、コーディングやめちまえ!
といいたい。
でも本体に手を入れるとアップデートや鯖移行の度に面倒くさいので、plugin で何とかしたい。
この程度、どっかに転がってないかな。
PS Disable autoformatting ではダメだった。
これいじって、作るか…
以下、作っている間のテスト用文字列…
---He's a student.
最近のChromeはSHA1署名の証明書に厳しいので,SHA2署名の証明書を発行しようとしたが,StartSSLでうまく認識できなくて困っていた.
この記事の通りにやってみたら,うまくSHA2の証明書として認識された.→ StartSSLで取得した証明書がsha1で認証されてしまう - Qiita
なんか,公式が証明書出してたので修正しました→StartCom • View topic - can I use a SHA256 Intermediate certificate
なんか,crtのダウンロード形式が変わったので修正しました
以下,nginxでsslを使う場合.
apacheで使う場合は,中間証明書をリンク先のものと差し替えるだけなんだけど,apache2.4以降の設定をほとんど真面目にやったことないので,詳しくは分かんない.
$ openssl genrsa -aes256 2048 > server.key $ openssl req -new -sha256 -key server.key -out server.csr
StartSSLで証明書を発行したあと…
fqdn.zip 的なアーカイブをダウンロードできるようになるので,落として,解凍すると有名なhttpdサーバ毎に必要ファイルをまとめたzipが入っているので,必要なやつを更に解凍する.
なければ,OtherServer.crtにルート・中間認証局の証明書と,fqdn用に発行された証明書があるので,それを使う.
dovecotとかならパスフレーズを指定できるらしいけど,nginxはできんかった気がするので
$ openssl rsa -in server.key.org > server.key
不明なところは,SyntaxHighlighterを参考にすれば良い.
--- ../syntaxhighlighter_3.0.83/styles/shCoreDefault.css 2010-07-02 12:59:00.000000000 +0900 +++ shCoreDefault.css 2015-10-21 18:56:36.000000000 +0900 @@ -58,6 +58,7 @@ position: relative !important; overflow: auto !important; font-size: 1em !important; + border: 1px solid #ddd !important; /* added */ } .syntaxhighlighter.source { overflow: hidden !important; @@ -229,7 +230,7 @@ background-color: white !important; } .syntaxhighlighter .line.alt1 { - background-color: white !important; + background-color: #e0e0e0 !important; /* added */ } .syntaxhighlighter .line.alt2 { background-color: white !important; @@ -242,6 +243,7 @@ } .syntaxhighlighter table caption { color: black !important; + background-color: #e0e0e0 !important; /* added */ } .syntaxhighlighter .gutter { color: #afafaf !important;
追記:
最近はrbenv+ruby-buildが流行りらしい.apt-getで入るけど,それで入れたら入れられるrubyは古いものしかなかった.
前提:サーバで動作している rubygems, ruby 系は全部消した上で,autoremove した状態.
それまで動いていた,redmine の環境はいじってない.
root# curl -L https://get.rvm.io | bash -s stable
でいいんだけど,最初はうまくいかないので,インストール用のシェルスクリプトを落としてきて何度も実行することになる.
$ wget -L https://get.rvm.io $ cat index.html | bash -s stable
そうしたら色々と足りないものを入れろと言われる.
RedmineをDebianに導入する - Qiita を見て入れたものは,これら.
make環境が入ってたので,少なめ.
root# apt-get install git root# apt-get install libssl-dev root# apt-get install libreadline-gplv2-dev root# apt-get install libyaml-dev root# apt-get install curl
んで,もういっかい,
$ cat index.html | bash -s stable
そしたら環境を読み込んでrubyを入れる.
$ source $HOME/.rvm/scripts/rvm $ rvm install x.x.x # <- 入れたいバージョン
この辺りで,rootになってないことに気付いたけど,$HOME/.rvm 以下にインストールされてたので,いいやと思うことにする.
$ rvm list
として,インストールされたrubyが出てきたらOK.
$ sudo apt-get install libmysqlclient-dev $ gem install mysql2
$ gem install bundler --no-rdoc --no-ri
これでローカルに入るはず.
$ cd /path/to/redmine $ bundle install --without development test postgresql sqlite3 rmagick
なぜか,sqlite3 はインストールされてしまう…
#!/bin/bash source /home/username/.rvm/scripts/rvm cd /path/to/redmine bundle exec unicorn_rails -D -E production -c config/unicorn.rb
nginx で pukiwiki を起動する時、web 上のレシピによっては fastcgi_param の設定が適切にできず、アンカーの張るパスがファイルシステム上のフルパスになってしまう場合がある。
正:
fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
誤:
fastcgi_param SCRIPT_NAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
要は、phpinfo() の環境変数などが正しくセットされればいいわけで、正常な例とにらめっこしながら設定してみると良いのでは。
設定は、fastcgi_param で正しくやっておけば、nginx.conf だったり各サイトの server ディレクティブ内でだったりで設定しなくていいはず。
基本的にはGoogle Remove Junk Liteを入れれば良いが、私の環境では以下の2点の手を加えないと使えなかった。
http://*.google.*/search*
とhttps://*.google.*/search*
を加える.else if(a.href.match(/\/url\?.*&url=/)){ var url = this.qs('url',a.href); a.href = decodeURIComponent(url.replace(/\+/g, '%20')); }
を条件判定の最後に追加するなど.
前使っていたドメインから現在のドメインへリダイレクトをしていたが、どうにもアクセスが完全には途絶えていないらしい。
んで、リダイレクトしているホストやリファラから、古いドメインへリンクしているサイトを特定するために、また移転したよメッセージを表示するために、ワンクッションはさむことにした。←ほぼ検索エンジンか更新されていない掲示板等であることが判明したので,rewriteはやめた
なんとなくのイメージだけで作業開始したものの、実際に作業してみるとハマりポイントがいくつかあったため、メモに残す。
やったこと
ハマりポイント
RewriteEngine On RewriteCond %{HTTP_HOST} ^(old\.domain\.com)(:80)? RewriteCond %{HTTPS} off RewriteRule ^(.*)$ http://redirect.domain.com/?$1 [QSA,R=301,L]
といった感じ。
QSA は QUERY_STRING を最後に付与する指示。
header("HTTP",true,404); header("Content-type: text/html; charset=iso-8859-1"); include('./404.php');
404.php は、httpd の 404 ドキュメントを模したファイルで、上の .htaccess を用いた場合は QUERY_STRING に アクセスパスがついてくるので、展開して使えば、それっぽく表示できる。
apache2 の場合、404 や 403 はブラウザの設定に依らず charset が iso-8859-1 で返っていたので、ヘッダに入れた。
$mysqli = new mysqli("DBHOST", "DBUSER", "DBPASS", "DBNAME"); $mysqli->query($query);
mysqli では、特段の理由がない限りはセッションの close をしないらしい。
$query は使いたい SQL をそのまま書いたもの。
いざ文書にしてみると、迫力のない tips だな。
他にも元アクセスのパターンによって何度か print デバッグしないといけないと思うけど、頑張れ!
wordpress が、ハッキング集団によりクラックされているようなので、対策をちょこっとだけしてみる。
もともと、管理者ユーザの slug を変更することはしていたが、ユーザ名がデフォルトの「admin」だったので、変えた。
ユーザを新しく作る方法だとユーザIDが変更されてしまうため、sql で DB を直接編集することにした。
> update PREFIX_users set user_login = 'NEWUSERNAME' where ID = IDnumber;
ついでにパスワードも記号の混じったものに変更した。
wordpress でパスワードに使える記号の一覧が得られなかったので、これまた DB を直接編集して書き込むことにした。
私が使っている記号群は、認証は通った。
> update PREFIX_users set user_pass = MD5('NEWPASSWORD') where ID = IDnumber;
ID は簡単に bruteforce attack で割り出されてしまうので、凝ったことはしていない。
あとは、admin でログイン仕掛けて来た PC に zip 爆弾でも返したいところ。
まだやってないけど。
/etc/rsyslog.d/20-ufw.conf で、 #&~ と書かれている行のコメントアウト「#」を消す。
rsyslog を再起動。
デフォルトのままで、/var/log/ufw.log にログは出ているので、そっちを見れば問題なし。