やったこと

webサービスを作るときに考えたことを垂れ流します

このブログについて

absgといいます。webサービスのこととかいろいろ書いてます。■最近作ったサイト ・VTuberスパチャ一覧表 ・全国で発生した事件のデータベース「地域の事件簿」 ・みんなでなかよく政治の話!「なかよし討議!」 ・女子のつぶやきまとめ「Twiggy×Twiggy!」 ■…

IBM Cloudのヘンテコ動作、Bacic認証が失敗するぞ・・。

先日からIBM Cloudで開発をする羽目になり、かなり困ってる。 今日はBasic認証のページがうまく動作しなくて一日調べてた。結論から言うと、「/.bp-config/httpd/extra/httpd-default.conf」なるファイルに、 以下の設定を追記しないとダメということだった…

IBM Cloudのヘンテコ動作、デプロイするとデイレクトリが勝手に外に移動するゾ。

先日から「IBM Cloud」を使って開発してる。お客さんがコードをそこへコミットしてくれというから、あまり深追いしたくないんだけど、仕方なくいろいろと調べながら開発してる。無料会員登録をして借りた領域に、試しにPHPのテストコードをプッシュしてみる…

【Wordpress】Smart Custom Fieldsで他人の関連投稿を表示させない!

「Smart Custom Fields」というワードプレスのプラグインで、「関連投稿」というカスタムフィールドを作ることができる。 この「関連投稿」で、他人が作った投稿は表示させないで、自分が作った投稿だけを扱えるようにしたかった。 でもどうしてもそういう設…

ツイアカがシャドウバンされてつらい。。

新しいサービスを作ったので、ツイッターのアカウントを作っていろいろ広報をしてる。サイトの記事が更新されたタイミングでAPIを使って自分のツイアカから自動投稿、みんなに情報を周知しようとしてるんだけど、なぜかツイアカがすぐに運営側からシャドーバ…

【PHP】simple_html_domで国情報をセットする

PHPの「simple_html_dom」でスクレイピングをするときに、国の情報をセットする。 こうすると相手のサイトから日本語ベースのhtmlが返ってくる可能性ある。以下のような感じで「Accept-language」に日本語をセットしてアクセスをするとよい。 (「user_agent…

【PHP】円マークを置換するのに一苦労。

テキストファイルの中にある円マーク「¥」をpreg_replaceで消そうとしたんだけども、どうも正規表現がマッチしなくてうまく消せない。よくある話かもしれないけど、環境によって円マークはいろんな文字コードで表現される。 ↓ 円マークについて | Fusic Dev…

【AWS】スクレイピング中にグーグルのreCAPTCHAが出てきて困った。

AWSサーバーを使ってグーグル関連のページをいろいろスクレイピングをする実験をしてるんだけど、ときどきreCAPTCHAの認証画面が出てくることがある。 「私はロボットではありません」みたいな画面が出てきて、クリックしないと先に進めなくなるアレ。体感的…

【PHP】execでpythonのスクリプトを実行するのに手こずった!

PHPのexecのコマンドを使ってpythonのスクリプトを実行しようとしたら、かなり手こずった・・。pythonの環境は、下記の記事みたいに共用のディレクトリ「/usr/local/pyenv」の下にpythonをインストールしている。サーバーはAWS。 【pyenv】当該サーバ内の全…

【Python】requests_htmlを実行するとエラーになるぞ!

最近下記の記事みたく、Youtubeのチャット欄をスクレイピング取得しようとして遊んでるんだけど、 Pythonのコード実行すると「requests_html」というモジュールがエラーを吐いてしまい困った。pythonでyoutubeのライブチャットを取得してテキストファイルに…

【PHP】添付ファイル付きのメールを送信したら中身が見れない !

以下の記事みたいな感じで、PHPで添付ファイル付き(pdf)のメールを送信する処理を作った。 qiita.comしかし、受信メールをメーラーで確認すると、ファイルが0KBになってしまって中身が見られない・・。 GmailのようなWeb上のメーラーだと見られるんだけど…

【MySQL】hostsファイルにアドレス追加したのにSQLで接続できないぞ!

SQLサーバーに外部からアクセスしようとしたけど、以下のようなエラーが出てはじかれてしまった・・。 「Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MariaDB server」SQLサーバー側の「/etc/hosts」ファイルにはちゃんと接続元の情報を追加…

AWSサーバーでディープフェイク動画を作ろうとしたら一苦労。

AWSサーバーに高級なGPUを積んであるプランがたくさんあるみたいなので、これを使って今流行りのディープフェイクの顔合成動画を遊んでみようと思った。「g2.2xlarge」という一番安いEC2サーバーを借りて、もろもろのディープフェイク関連のライブラリをイン…

【Wordpress】記事のコメント一覧に2chみたいに番号を振るよ!

ワードプレスの記事に付けられたコメント一覧に、2ch掲示板っぽく番号を付けるよ!イメージとしてはこんな感じ・・。1.名無しさん 記念カキコ 2.名無しさん 記念パピコ 3.名無しさん 記念マキコfunctions.phpに以下のような関数を定義すると、そのコメントの…

【Wordpress】wp_usersで次に付与されるインクリメントIDを取得する!

wp_usersにユーザーを追加するときに、次に付与されるID(= last_insert_id + 1)を取得するコードだよ!以下のようにすると次回のIDを取得できるからね! global $wpdb; $table_name = $wpdb->prefix.'users'; $query = "SHOW TABLE STATUS LIKE '$table_na…

【PHP】指定した日時の週の月曜日を求める!

指定した日時の週を計算して、その週の月曜日の日時を返却するよ! コードは下記みたいな感じ! //例えば2020年03月10日をセット $ymd = "20200310"; $ymd_time = strtotime($ymd); $week_num = date("w",$ymd_time); if ($week_num == 0){ //日曜日だった場…

アマゾンRDSに踏み台からリモート接続できなくなってしまった!

WorkbenchというDB管理ソフトを使って、いつもssh踏み台経由でRDSサーバーに接続してるんだけども、先日アクセスを試したら急に接続不能になってしまっていた。エラー文には「SSL connection error: protocol version mismatch」と表示されているけども、な…

【MySQL】Like検索の失敗は日付型が原因だった

とあるサイトでユーザーを検索する処理を作っていたんだけど、 MySQLで「Illegal mix of collations for operation ‘like’」とエラーが出て処理が失敗してしまった・・。「ユーザー名」とか「地域」とか「生年月日」とかでLike検索をしていたんだけど、原因…

【JQuery】WordpressでAjaxの送受信がどうしても失敗してしまう・・。

とてもくだらない話なんですが、下記の記事を真似してWordpressサイトにAjaxでpost送信をしようとしました。でも「Bad Requesut」というエラーになってどうしても失敗してしまう・・。Ajaxでpost送信 - Qiita原因は「dataType:」という箇所。ここは「datatyp…

【Wordpress】特定URLにマッチするときにベーシック認証をするよ!

ワードプレスで特定のURLが含まれているページにだけベーシック認証をかけるよ!ワードプレスの「.htacccess」に以下のような文言を追加! # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENA</ifmodule>…

goofysでマウントしたS3ディレクトリでSQliteが使えない件。

goofysでEC2サーバーにS3バケットをマウントして、ディレクトリ下にSQliteのファイルを設置、そこにデータをいろいろ書き込もうと思ったんだけど「disk I/O error」というPDOのエラーが出て失敗してしまう・・。「SELECT」とかでデータを見ることはできるん…

Laravelのバージョンはどのファイルに書いてあるの

Laravelのバージョン情報が書いてあるファイルはこれ!./vendor/laravel/framework/src/Illuminate/Foundation/Application.phpこんな風にバージョン情報が書いてあるよ! /** * The Laravel framework version. * * @var string */ const VERSION = '5.5.40…

grep結果を対話形式で削除してくれるシェルスクリプト!

grepでヒットしたファイルを対話形式(y/n)で削除するシェルスクリプトだよ!以下を実行すると「grep -rl "hogege"」でヒットしたファイルを「本当に削除する?」と一個ずつ問い合わせて、順に削除してくれるよ!grepを実行したいディレクトリで、shコマン…

【Wordpress】管理画面のタクソノミー一覧で子要素が表示されない!

ワードプレスでタクソノミーの名前を変更したら、管理画面で子要素が表示されなくなってしまった・・。本当は親要素の下のところに「-」が付いた形で、子要素が階層的に表示されるはずなんだけどね。これは「wp_options」のテーブルの中の、子要素を管理する…

【Wordpress】カスタム投稿のタイトルを文字列検索してタームを設定!

ワードプレスのカスタム投稿をタイトルで検索して、まとめてタームを追加するよ!下記のようなコードを実行すると、タイトルに「横浜」を含むカスタム投稿を抽出して、それらに「東京」というタームをセットするよ! 10000, //とりあえず1万件抽出 'post_ty…

レスポンシブのグーグル広告の高さが設定できない!

グーグルアドセンスの「レスポンシブ」の広告を張り付けるときに、レイアウトの調整ができなくて困った…。広告領域の高さを最大300pxまでに制限したかったんだけど、この広告を張りつけた親要素には強制的に「height: auto !important;」が付与される様子。 …

【LINUX】sedでファイルの末尾に変数の文字列を追記する!

LINUXのシェルスクリプトを使ってファイルの末尾に文字列を追加するよ! 下記のシェルでは「text.txt」というファイルの最後にowari! owari! owari!と三行の文章を追記しています! #!/bin/sh file='test.txt' #フッタ部分を追加 foot='owari!\n' foot=$foot…

mixhostのサーバーでドメイン追加しようとしたらエラー発生!

ミックスホストで借りたサーバーで、新しく「アドオンドメイン」の画面からドメインを追加しようとしたんだけども、「A DNS entry for “xxxx.com” already exists. You must remove this DNS entry from this server or all servers in the DNS cluster to p…

【PHP】curlをyumアップデートしたらエラーするようになった件

とても古いシステムを「yum install curl-devel」と打って、新しいcurlにアップデートした。そうしたらPHPでcurlを使うと、「エラー番号:77 CURLE_SSL_CACERT_BADFILE」で接続失敗してしまうようになった。証明書関係のエラーなんだろうけど、どうしたらい…

PayPal.Meは客もアカウント作らないと決済できないから不便

Webサイトでデータを販売したくて、クレジットカードだけで決済できる簡単なサービスがないものかと、いろいろ調べてた。「PayPal.Me」というのが、すぐに導入できそうな感がしてよかったんだけど、でもやっぱりこれは不便・・。PayPal.Meで決済するためには…