mac でテキストエディタ

色々あるんだと思うけど、windowsでも使いやすい
visual studio code が良いかな。

Apple Store ではインストールできない?ので
以下からダウンロード
https://code.visualstudio.com/download

ダウンロードファイルを実行(ダブルクリック)することでインストール完了と
思ったが、mac を再起動するとランチャーから消えていた。

アプリはダウンロードフォルダーに置かれたままだったので
アプリケーションフォルダーに移動させる。

logrotate で virtual host をまとめて設定

以下のようにフォルダーに * を入れたらよかった

/var/www/vhost/*/log/*log {
missingok
rotate 5
notifempty
sharedscripts
delaycompress
postrotate
/sbin/service httpd reload > /dev/null 2>/dev/null || true
endscript
}

動作確認方法は
logrotate -dv /etc/logrotate.d/httpd

-d を付けると実行せず確認できる

ERROR: Plugin ‘File’ not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.

実行しようとすると以下のようなエラーが発生
ERROR: Plugin ‘File’ not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
ERROR: Plugin ‘NetworkStatus’ not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.

config.xml
に追加の必要がありそうだが、何を書いて良いのか分からない

コマンドラインで cordova のプロジェクトを作成し、そこに
$cordova plugin add cordova-plugin-file
として、追加し、 config.xml を確認してみる

の行が追加されていたので、同じく追加してみるとエラーがなくなった
面倒。

参考:

無料のSSL Certbot を入れてみた。

思った以上に親切で簡単

おそらく入っていると思うが、 git をインストール
#yum install -y git

Certbot をダウンロード
#git clone https://github.com/certbot/certbot

もし、fatal: HTTP request failed のエラーが出たら
yum update -y nss curl libcurl で直るかもしれない

Certbot を実行
#cd ~/certbot
#./certbot-auto

※色々パッケージがインストールされる

メールアドレスを聞いてくるので、
If you really want to skip this, you can run the client with
–register-unsafely-without-email but make sure you then backup your account key
from /etc/letsencrypt/accounts

(Enter ‘c’ to cancel): info@kaki.work
のような感じで設定

良くわからないが、許可
——————————————————————————-
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v01.api.letsencrypt.org/directory
——————————————————————————-
(A)gree/(C)ancel: A

Apache に設定されているドメイン一覧が表示される
Which names would you like to activate HTTPS for?
——————————————————————————-
1: aaaa.kaki.work
2: bbbb.kaki.work
3: cccc.kaki.work
4: dddd.kaki.work
5: eeee.kaki.work
——————————————————————————-
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter ‘c’ to cancel):
数字を入れる Enter なら全てが対象

その後
https://aaaa.kaki.work のような感じでアクセスできた。

あと、3ヶ月くらいで切れてしまうので
cron で 以下を毎日実行させてみる


crontab -e
0 0 * * * /root/certbot/certbot-auto renew --post-hook "sudo service httpd restart"

cordova で上部のステータスバーを表示させないためには

cordova-plugin-statusbar
を追加する必要がある

追加後、config.xml ファイルに以下の行を追加

JavaScript プロパティ―がインスタンス毎に独立していない

CTest: {
var me = this;

CTest = function () {
me.val = ”;
}
var p = CTest.prototype;
p.setVal = function(pVal) {
me.val = pVal;
}
p.dispVal = function () {
console.log(‘dispVal ‘ + me.val);
}
}

var a = new CTest();
a.setVal(‘aa’);

var b = new CTest();
b.setVal(‘bb’);

a.dispVal();
b.dispVal();

実行結果は以下、同じ値になってしまう。
“dispVal bb”
“dispVal bb”

以下の感じで書けば大丈夫。

var CTest = function() {
// 非同期で呼ばれたメソッド内で this.xxxxx でアクセスできないので、 me を利用
var me = this;

me.val = ”;

me.setVal = function(pVal) {
me.val = pVal;
}
me.dispVal = function () {
console.log(‘dispVal ‘ + me.val);
}
}

var a = new CTest();
a.setVal(‘aa’);

var b = new CTest();
b.setVal(‘bb’);

実行結果は以下
“dispVal aa”
“dispVal bb”

アプリ内で物販はクレジットカードを使う

https://qiita.com/takecian/items/11f3c02e74ad997001bf

In-App Purchaseを使用して、実物の商品やサービス、あるいは不適切なコンテンツを販売することは
できません。
● 実物の商品やサービス。In-App Purchaseを使用する場合は、デジタルの商品またはサービスをア
プリケーション内に配信する必要があります。アプリケーション内でユーザに実物の商品やサー
ビスを購入してもらうには、クレジットカードや支払いサービスなどの別の支払いメカニズムを
使用してください。
● 不適切なコンテンツ。In-App Purchaseを使用してApp Review Guidelineで許可されないコンテンツ
を販売しないでください。たとえばポルノグラフィやヘイトスピーチ、または誹謗中傷などで
す。

参考:https://developer.apple.com/jp/documentation/StoreKitGuide.pdf