end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

php (PDO)による DB接続~SQL実行

以下の通りです。 先日の 問合せフォーム用 ajax web api server side php code - end0tknr's kipple - 新web写経開発 に続く、手習い 'mysql:dbname=xing;host=localhost;charset=utf8', 'user' =>'root', 'pw' =>'ないしょ', 'option'=>array(PDO::ATTR_AU…

mysql 8.0.17 で テンプレート となる db table から、テーブルを複製 - CREATE TABLE ~ LIKE ~;

mysql> CREATE TABLE new_table_name LIKE contact_form_template;

mysql 8.0.17 で varchar() の合計文字数が 65535超の場合、「ERROR 1118 (42000): Row size too large.」

以下の通り、エラーとなりました。varhcar -> text とすることで解消するようです mysql> CREATE TABLE contact_form_template ( -> id integer primary key AUTO_INCREMENT, -> uid varchar(1024), -> form varchar(1024), -> ext1 varchar(4096), -> ext2 …

OpenAMコンソーシアムのOpenAM14? 15? を srcから build

次のurlを参考/そのままに OpenAM14? 15? (※)を srcから buildします。 (※ OpenAM14を git clone https://github.com/openam-jp/openam したつもりが OpenAM15のようでした...) https://github.com/openam-jp/openam https://booth.pm/ja/items/2094773 http…

vue.js における Invalid Host header を回避

vue.js 場合 vue.js の install $ /usr/bin/node --version v10.19.0 $ /usr/bin/npm --version 6.13.4 $ npm install @vue/cli + @vue/cli@4.4.6 $ npm install @vue/cli-service-global + @vue/cli-service-global@4.4.6 vue.js 用 テスト アプリ作成と起…

問合せフォーム用 ajax web api server side php code

手習い。

python で apache access_log (gzip形式)をparse

apache access_log にあるuser agentからブラウザを判定 - end0tknr's kipple - 新web写経開発 apacheのログ(access_log)解析は、Apache::ParseLog 等のcpan moduleより正規表現 - end0tknr's kipple - 新web写経開発 perlで書いた上記エントリを、pythonで…

Webシステム/Webアプリケーションセキュリティ要件書 by OWASP

以下にて公開されている 「Webシステム/Webアプリケーションセキュリティ要件書 3.0」 は、分かりやすく、このまま利用できそう。 さすが、OWASP といった印象。 GitHub - ueno1000/secreq: Webシステム/Webアプリケーションセキュリティ要件書 政府系とし…

HTTP の REST APIで用いられる PUT や DELETE の METHOD を POST に変換

昔?のWEBアプリは、GET や POST のHTTP METHOD のみで動作できるものが多いと思います。 また、OPTIONS や TRACE の METHODは、セキュリティ的に非推奨であることから WAFやApacheにて、許可するHTTP METHOD を HEAD GET POST のみに 制限しているケースもあ…

setting postfix ver.3.5.2 on centos 8

install postfix ver.3.5.2 from source to centos 8 - end0tknr's kipple - 新web写経開発 先日のエントリの続きです。 今回、postfixの設定や自動起動まで実施していますが、 テスト送信を行ったところ、「status=deferred」により送信完了していません。 …

install postfix ver.3.5.2 from source to centos 8

だいぶ久しぶりに postfix の install. (postfixの設定は気が向いたら後日) 参考url The Postfix Home Page GitHub - vdukhovni/postfix: Postfix MTA by Wietse Venema ソースからPostfixをインストールする - noknow CentOS 7にPostfix 3.5をソースから躓…

ldap3 for python による ldap 検索

次のようになると思います #!/usr/local/bin/python # -*- coding: utf-8 -*- import sys from ldap3 import * #from ldap3 import Server, Connection, ALL, NTLM, ALL_ATTRIBUTES, # ALL_OPERATIONAL_ATTRIBUTES, AUTO_BIND_NO_TLS, SUBTREE def main(): s…

ImageMagick の compare コマンドによる画像比較

DOS> compare.exe input_img_1.png input_img_2.png diff_img.png 基本的な実行は上記の通りで、diff_img.png に差分が出力されます。 例えば、pythonから連続的に compareを実行する場合、次のようになると思います。 #!/usr/local/bin/python # -*- coding…

selenium for python + firefoxdriver で、page全体の画面キャプチャを連続取得

selenium for python + chromedriver で、page全体の画面キャプチャを連続取得 - end0tknr's kipple - 新web写経開発 先程のエントリの別バージョン。 chrome driverを動作させてみると、画面キャプチャ10枚程度で動作が止まってしまう... 原因不明ですが、f…

selenium for python + chromedriver で、page全体の画面キャプチャを連続取得

【Python】Seleniumでページ全体のスクリーンショット撮るならマルチプロセスで! - Qiita 上記に倣い、以下のように書くと、よさそう。 ポイントは、 一旦、対象のurlへアクセス後、window sizeを取得 その後、別processの webdriverをwindow size指定で起…

wget for linux でサイトをクローリング(スクレイピング?)する際の自分流オプション

おおよそ、次のようなオプションでdownloadすることで、 localにサイトのクローンを作成できてきます。 最近の世の中には、サイトクロールを行う高機能?なツールも存在すると思いますが、 wgetも十分すぎる程、高機能で、以下の他にも大量のoptionがあります…

情報銀行 - 情報信託機能の認定スキームの在り方に関する検討会

「情報銀行」って、その単語自体は分かりやすいのですが、何よりユースケースが思い浮かばない。 総務省の文書を読み返してみましたが、やっぱり理解できない。 ブロックチェーン同様、流行り言葉に向かう気がします。 総務省|情報信託機能の認定スキームの…

urllib.request for python における proxy 経由での http get

import urllib.request as req proxy = req.ProxyHandler({'http': r'$user_id:$user_pw@proxy_host:80'}) auth = req.HTTPBasicAuthHandler() opener = req.build_opener(proxy, auth, req.HTTPHandler) req.install_opener(opener) conn = req.urlopen('ht…

python で smb 接続し、dir以下を再帰探索

以下のように書くと、よさそう #!/usr/local/bin/python # -*- coding: utf-8 -*- import datetime import os import sys import platform from smb.SMBConnection import SMBConnection import time conf = {"user_id":"ないしょ", "user_pw":"ないしょ", "…

install modsecurity ver.2.9.3 (FOSS WAF) from source to apache 2.4 + centos8

ファイアウォール系の仕組みは、実運用に向けたルール選定や設定が非常に難しい。 特にWAFは単純導入だけでは、検知できないケースがあるだけでなく、過検知によりサービス不能に陥る。 2010年のIPAによる「オープンソースWAF「ModSecurity」導入事例 ~ IPA…

install clamav-0.102.3 from src to centos 8

過去、数回installしていますが、これまでのメモが不十分でしたので、再度、お試し 参考url https://www.clamav.net/ https://clamav-jp.osdn.jp/jdoc/clamav.html https://end0tknr.hateblo.jp/entry/20180408/1523163676 https://metacpan.org/pod/File::S…

IISへのSSL証明書登録には、linuxで使用する公開鍵(PEM)形式でなくPKCS#12(pfx)形式で

openssl による PKCS#12(pfx)形式への変換 秘密鍵も用意した上で、以下のopensslコマンドで変換できます。 $ openssl pkcs12 -export -inkey private.key -in ssl.crt -out ssl.pfx Enter Export Password: Verifying - Enter Export Password: IISサーバへ…

Google Maps Platform Directions API + python による道路距離計測

以下を参考に、python による http request の練習 cloud.google.com qiita.com で、以下の通り #!/usr/local/bin/python # -*- coding: utf-8 -*- import json import urllib import urllib.request import urllib.parse import sys conf = \ {"req_url" : …

国交省 - 新型コロナウイルス感染症対策のため、暫定的な措置として、建築士法に基づく重要事項説明について、対面ではない、ITを活用した実施が可能となりました

「暫定」といっても、もとの「対面説明」に戻すのは難しいと思います www.mlit.go.jp

social-app-django for pytho による google oauth ログイン (social login/auth)

https://nmomos.com/tips/2019/07/05/django-social-auth/ google の oauth を使用したログインを実現する為、 上記urlの google 関連部分を写経。 TODO 今回は、social-app-django を使用しましたが、 django-allauth の方が、多くの oauth provider に対応…

re: 動かして学ぶ!Python Django開発入門

軽量ScriptやWeb Application Framework の基礎があれば、 写経を迷わず進めることができる。 www.shoeisha.co.jp 良書というか、エラーの少なさがスゴい

django for python で、table "django_admin_log" violates foreign key エラー

IntegrityError at /admin/diary/diary/add/ insert or update on table "django_admin_log" violates foreign key constraint "django_admin_log_user_id_c564eba6_fk_auth_user_id" DETAIL: Key (user_id)=(2) is not present in table "auth_user". のよ…

perl で twitter api へ oauth 後、ユーザ情報を取得

https://blog.thingslabo.com/archives/000063.html OAUTHの練習として、上記urlの写経。 ただし、上記urlは2011年の内容で、その後のtwitterの仕様変更により 動作しない部分がありましたので、修正しています。 以下を callback.pl というfile名で保存し、…

PhpMetrics による php source の 循環複雑度計測( Cyclomatic complexity code metrics)

以下に、installや実行方法を記載しています。 https://github.com/phpmetrics/PhpMetrics php の code metrics は、sonar qube でも可能ですが、 sonar qube の実行には、mysql等の準備もある為、PhpMetrics の方がお手軽な印象。 Step1 install Composer h…

re: Google日本語入力APIを利用したメンテナンスフリーな住所補完機能 ( zip2addr )

確かに、郵便番号→住所変換であれば、Google日本語入力API は有効ですね。 http://kotarok.moo.jp/zip2addr/sample.html https://github.com/kotarok/jQuery.zip2addr https://www.google.co.jp/ime/cgiapi.html ただ、これ以外の Google日本語入力API 活用…