「技術メモ」カテゴリーアーカイブ

mysqldumpでのエラー

一番単純に下記のコマンドを叩くとエラーになります。

コマンド:
mysqldump -h ホスト名 -u ユーザー名 -p テーブル名 >ファイル名
エラー:
mysqldump: Error: ‘Access denied; you need (at least one of) the PROCESS privilege(s) for this operation’ when trying to dump tablespaces

テーブルスペース情報をダンプしなくてもよい場合、–no-tablespacesを付けると、エラーがでなくなります。
mysqldump –no-tablespaces -h ホスト名 -u ユーザー名 -p テーブル名 >ファイル名

ちなみに下記のオプションでもエラーがでるようになったので、サーバによっては外した方がいい。
–single-transaction

WordPressで400万ページ投稿するには

会社情報のサイト https://awb.jp/
当初はまじめに記事をガンガンアップでしていた。
数万ページくらいでカップラーメンができるくらい遅いページ表示。
ページ投稿もどんどん重くなり、投稿にもカップラーメンできそうでした。
あきらめて、全部消して、ページ投稿の見直し。

■ページ投稿
いろいろなCSVアップツールでやってみたが、タイムアウト等でほぼ無理。
直接投稿のプログラムをたたきます。
データも最小限にします。

wp_insert_postで投稿ページ登録。
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/wp_insert_post

-プログラム例:実際はもう少し複雑—————————————————-

$post_id = wp_insert_post(array(
'post_type' => 'post',
'post_title' => $item[0],
'post_content' => $item[2],
'post_status' => 'publish',
'post_category' => $item[3],
'tags_input' => $item[4],
'comment_status' => 'closed',
'ping_status' => 'closed',
));

——————————————————
他のデータとリンクしたい部分をカスタムフィールドに入れておきます。
add post meta
https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/add_post_meta
——————————————————

add_post_meta($post_id, 'hogehoge_number', $item[7])

——————————————————
ひたすら、1ページごとにサーバに投げます。

ページは最小限のデータにして、カスタムフィールド(上記の例だとhogehoge_number)にキーをいれておき、
wpの標準のテーブルと付加価値的データのテーブルを作り、カスタムフィールドで連携して、ページを生成します。

■不具合がでる。
プラグインによってはエラーになります。
サイトマップを作るプラグイン等は特に注意です。

WP「GDPR Cookie Consent」 で「設定を更新できません。」の対応方法

WordPressのコンテンツでの「GDPR(General Data Protection Regulation:一般データ保護規則)」用プラグイン
CookieYes | GDPR Cookie Consent & Compliance Notice (CCPA Ready)

このプラグインは設定が簡単ですが、「「設定を更新できません。」と出て、更新されないことがある。
WAF(Web Application Firewall)でブロックされている可能性があるので、
WAFのログを確認してください。
「*****/edit.php?post_type=cookielawinfo&page=cookie-law-info」というエラーログが出ていたら、
設定の時だけ、WAFをオフにしてください。設定が終わったら、オンにしてください。

Flutter2インストールメモ(MAC)第1回

Flutter(フラッター)は、Googleによって開発されたフリーかつオープンソースのUIのSDK。
クロスプラットフォームアプリケーションを開発することができる。

今回はMACでのインストール。

1.Flutterダウンロード
https://docs.flutter.dev/get-started/install/macos

MAC OSにFlutterの開発環境を入れる。
ダウンロードボタン「flutter_macos_2.10.0-stable.zip」からダウンロード

2.格納場所に格納
$ mkdir ~/development
$ cd ~/development
「~/Downloads/にダウンロードされているものが、展開されているので、」
$ mv ~/Downloads/flutter ./flutter
$ export PATH=”$PATH:`pwd`/flutter/bin”

3.環境確認
$ flutter doctor
これで何が足りないかをチェックしてくれる。

[×]が出ているものが足りないものなので、入れていく。

4.足りない環境を追加

4.1.1 Android Studioを入れる

[✗] Android toolchain – develop for Android devices
✗ Unable to locate Android SDK.

の表示がある場合の作業

https://developer.android.com/studio/index.html
Android Studio をダウンロード。

Intel チップか、APPLE チップかを選んでインストール。

4.1.2 Android SDK Command-line Toolsを入れる。

Android Studioを起動して、上のメニューの「Preferences 」を選ぶ

Appearance & Behavior > Android SDK
Android SDK Command-line Tools (latest) を入れる。

4.1.3 android-licenses 処理

$ cflutter doctor –android-licenses

ライセンスを承認のメッセージがくるので、yを入力。

4.2 Xcode

[✗] Xcode – develop for iOS and macOS
✗ Xcode installation is incomplete; a full installation is necessary for iOS development.
Download at: https://developer.apple.com/xcode/download/

の表示がある場合の作業

4.2.1 Xcodeをインストール

https://developer.apple.com/xcode/download/では最新がベータ版になっていることがあるので、
App StoreでXcodeの最新版を入れる。インストールには数時間かかるので注意しましょう。

4.3 CocoaPods インストール

$ sudo gem install cocoapods  

4.4 再度確認

$ flutter doctor で[×]がないことを確認。

5 Android Studio 設定

Pluginsを選ぶ、Flutterを選択し、インストール

 

次回に続き・・・

 

 

 

 

地図のオープンデータ「OpenStreetMap」

地図を使ったサービスを考える場合はGoogle Mapを使用しますが、
「$200 usage every month for no charge. That’s 28,500 maploads per month for no charge. 」
(https://mapsplatform.google.com/pricing/?hl=ja)
とあり、有名サイトになった場合には、有料になります。

そこで地図のオープンデータの使用を考えてみよう・・・・
OpenStreetMap(OSM)は、誰でも自由に地図を使えるよう、みんなでオープンデータの地理情報を作るプロジェクトです。
https://openstreetmap.jp
「OpenStreetMapとその協力者をクレジットすれば、データを自由にコピー、配布、送信、利用することができます。変更したり翻案したりしたデータは同じライセンスに従う場合のみ、提供することができます。」

Googleマップのようにマーカーを付けることが可能。
https://www.openstreetmap.org/?mlat=緯度&mlon=経度

弊社の位置だと、こちら。
https://www.openstreetmap.org/?mlat=35.70010&mlon=139.77402

ZOOMしたい場合は、URLに#map=ズームの数/緯度/経度を追加。
https://www.openstreetmap.org/?mlat=35.70010&mlon=139.77402#map=17/35.70010/139.77402

埋め込みも可能。

大きな地図を表示

公開されているGPSトラッキングが見えるので、精度の悪いGPS端末があるとズレることはあるが参考値としてはよいと思う。

弊社秋葉原駅付近のトラッキングデータ。

“Base map and data from OpenStreetMap and OpenStreetMap Foundation”

DX白書2021|ディスラプターの脅威

IPAの発表した「DX白書2021」

2021年10月11日公開 独立行政法人情報処理推進機構 社会基盤センターより
https://www.ipa.go.jp/ikc/publish/dx_hakusho.html

DXの定義が曖昧ですが、IPAとしては
IPAとしては、「IoTから得られたデータを活用し、次に企業として進む方向を検討することができる仕組みを作って、その仕組みで常に変化し続ける(変革する)ことがDXです。」
(引用:「DXってIoTとどこが違うの?」https://www.ipa.go.jp/ikc/reports/mfg-dx-faq0104.html)
とのこと。

DX白書2021の内容で衝撃的なのは、IT、AIなどの日米を各項目で比較しているのですが、
凄いのはアメリカは30%以上が開発技術で「コンテナ/コンテナ運用自動化」を活用している。
日本は9%です。
AI導入はアメリカ44%、日本20%。
日本はDXが遅れていることをレポートでは強調している。

比較表で気になったのはこちらです。
「外部環境変化への機会としての認識」

(引用:DX白書2021)

日米誤差の範囲なのですが、1項目だけ10%以上の影響意識の差があります。
「ディスラプターの出現」の項目です。影響があると考えいるのはアメリカ68%、日本54%。
ディスラプター(disruptor)とは
創造的破壊者で、ここでいう意味は最新デジタル技術を使い旧サービスや市場を破壊的変えるサービスや企業になります。
「Airbnb」「Uber」「Netflix」などがあります。

日本では、卸売仕組みや規制や地域サービス格差がまだある為、意識が薄いと思いますが、
アメリカでは意識される項目になったことがわかります。
「Netflix」でいうと、日本のレンタルビデオは壊滅的影響がありました。

CSS & JavaScript Toolbox で不具合?

CSS & JavaScript Toolbox とはWordpressで使うプラグインです。HTMLやCSSやJAVAスクリプトなどを組み込む時に
非常に便利な機能があるプラグインです。

CSS & JavaScript Toolbox

JAVAスクリプトで<script>と書いて「SAVE」ボタンを押しても、反応になし。
バグ?echo “<script>”と書いても「SAVE」ボタンを押しても、反応になし。
いろいろ調べてみて、バージョンをダウングレートしても同じ反応。
CSS & JavaScript Toolbox が原因ではないのでは・・・・

そうです、サーバ側の「WAF」(Web Application Firewall)が原因です。
Webアプリケーションからの攻撃からサイトを守るセキュリティ対策です。

WAFのログを見ると
****/wp-admin/admin-ajax.php?action=cjtoolbox_api&controller=blocks-ajax&CJTAjaxAction=save_blocks
xss-tag-1 

「xss-tag-1」でアクセスを排除したログが出ているのがわかります。
WAFを無効にすると、「SAVE」ができるようになります。

.htaccess でこのルールを許可できますが、セキュリティ上問題が発生する可能性があるので
慎重に設置してください。
SiteGuard_User_ExcludeSig xss-tag-1

ロール

ロール
(役、役割、役目、役柄、任務)
ロールは一般的には、「管理者」「承認者」「登録者」「ユーザー」などがあります。
WEBのブログですと、「サイト管理者」「編集者」「投稿者(ライター)」「デザイナ」「コメント管理者」
などになります。
IoTでのファクトリ関連ですと、「運営管理者」「生産計画者」「素材管理者」「ライン管理者」「生産管理者」「生産者」などとなります。

役割、権限を設定することにより、機能制限や表示制限を行います。
役割と作業内容を出し、機能や表示の有り無しを表にするのが、システムの要件定義では必要になります。
役割が重複する使用者が発生する場合があるので、しっかり検討してください。

MantisBT 2.24.1 でインストールで文字化け

バグ管理システムMantisBT 2.24.1で順調インストールでしたと思ったら、「検索」や「マイビュー」で文字化け。
一瞬「Warning: 2702 in *****/core/session_api.php on line 227」のエラーがでて、すぐに文字化けしたり、
そのまま文字化けの画面だったり。
文字化け

対応方法、MantisBTをインストールしたディレクトリに
.htaccess ファイルを配置してください。
下記の内容を追記:

#PHP
php_value output_handler none

これで直ると思います。

https://mantisbt.org/