WEB開発や保守のノートと役に立つツール等の紹介

Flexion DevNote

カテゴリー: PHP

【PHP】IPアドレス範囲の判定はこうだった

GoogleやBingのBotに対してログを残さないようにしていますが、PHPでIP範囲を特定し無効化する必要があったため、functionをつくってみました

//IP範囲チェック
function chkIpRange($accept){

  $remoteIp   = $_SERVER['REMOTE_ADDR'];

  list($acceptIp, $mask) = explode('/', $accept);
  $acceptLong = ip2long($acceptIp) >> (32 - $mask);
  $remoteLong = ip2long($remoteIp) >> (32 - $mask);
  if ($acceptLong == $remoteLong) {
    return 1;
  } else {
    return 0;
  }
}


$rec	= 0;

//Botチェック(以下はGoogleなどのIP群)
if( chkIpRange('66.249.64.0/19') ) $rec	= 1;
if( chkIpRange('66.249.92.0/24') ) $rec	= 1;
if( chkIpRange('72.14.192.0/18') ) $rec	= 1;
if( chkIpRange('74.125.0.0/16') ) $rec	= 1;

//処理飛ばす
if($rec == 1) return;

アクセスしてきたIPアドレスが、サブネットマスクを含んだ指定のIPアドレスに該当するものかどうか、これで判断して処理を分けることができまいした。

【php】simplexml_load_file が突然動かなくなった?(自己署名証明書を許容する必要があった)

ブログサイトから/?feed=rss2で取り込み後、自社DBにセットするバッチが急に動かくなりました。
file_get_contentsやcurlで、いろいろ試行錯誤もしましたが、成功に至らず。。。

結論、以下のように、自己署名証明書を許容する必要がありました。

$url     = 'https://xxx.com/?feed=rss2';
$context = stream_context_create(array('ssl'=>array(
    'allow_self_signed'=> true,
    'verify_peer'      => false,
)));
libxml_set_streams_context($context);
$xml = simplexml_load_file($url);

//print_r($xml)
//うまく動けました

ちなみに、 file_get_contents もSSL処理に似ている感じでした

$postUrl    = 'https://xxx.com/xxx/index.php';
$postPost   = array('xxx' => yyy);
$postData   = http_build_query($postPost, "", "&");
$postHeader = array(
  "Content-Type: application/x-www-form-urlencoded",
  "Content-Length: ".strlen($postData)
);
					
$postOptions = array(
  'http' =>array(		
    'method'  => 'POST',
    'header'  => implode("\r\n", $postHeader),
    'content' => $postData
  ),
  //SSL処理
  'ssl' =>array(
    'verify_peer'       => false,
    'verify_peer_name'  => false
  )
);

$postJson  = file_get_contents($postUrl, false, stream_context_create($postOptions));
$postArr   = json_decode($postJson, true);

//print_r($postArr)

さくらレンタルサーバ:CRONでPHP実行してみました

共有レンタルサーバタイプですが、昔は独自で管理したがって、いっぱい自社サーバへ移管しましたが、、特にメール管理や様々のセキュリティ特にWAF機能が充実されて、あとは独自無料SSL機能も。自社に移管したドメインをどーんとレンタルサーバへ移管しました😀

使い勝手もありますが、さくらレンタルサーバは、やはり便利!そして安い、そして機能が充実(余計な使わない機能が搭載していない)

さて、かつては専用サーバでコマンドでやることが、レンタルサーバでも一発実行しました。

cd /home/****/www/bash/; /usr/local/bin/php index.php 1> /dev/null

##「****」はご契約されたID名となります。

ということで、超簡単でした✌

さくらサーバーでPHP最大アップロードファイルサイズを変更する方法発見

自作の画像変換PHPが動かくなったー
ふっと思ったら、 新型iPhoneに機種変更後、画像サイズがぐーんと重くなった可能性がありました、案外的中!

p.iniでファイルアップロード上限値を変更する!

これで解決!

Roundcubeの本文と添付ファイルの文字化け解決方法はこれだ!

お客様からRoundcubeでどうにも文字化けされるとの連絡がありました、毎回ではありませんがまれに発生するそうでした。Roundcube古いバージョン1.0.9使っていたので、即座に1.3.4にアップグレードしましたー

数日たつと、やはり改善されていないということで、困りました。

https://qiita.com/neilli-sable/items/0444e6cd11f51a977a3f

roundcube/program/lib/Roundcube/rcube_charset.php

roundcube/config/defaults.inc.php

早速上記の対策を実施したところ、そこからは再発できなかったようで、安心しました(感謝)

Roundcubeの文字化け対策


【簡単無料】ネットで写真データ1MB以下圧縮/スマホiPhone/Android対応/JPG,PNG,GIF,ダウンロード(iphoneで写真のサイズを小さくする) 写真1MB以下縮小サービス
【簡単時差計算】世界の主要都市の時差を計算できる無料WEBアプリ 世界主要都市 簡単時差計算
【超簡単】誰でも使える無料カラフルQRコード作成サービス (QR Builder) QRコード作成無料サービス
【超簡単】無料URL短縮サービス(QRコード自動生成)日本語URLスマホ対応 URL短縮無料日本語サービス
【超簡単】DNSレコード確認ツール[A,MX,CNAME,NS,TXTレコード]:ドメイン名のDNSレコードを確認 DNSレコード確認ツール
【簡単定番】自分のipアドレス確認サイト:スマホ(iPhone/Android/iPad)対応 自分のIPアドレス確認ツール
【簡単定番Whois検索ツール】- 無料ドメイン名やIPアドレスのWhois情報を検索することができます。 IPドメインWhois検索ツール
【超簡単】IPドメイン ポートスキャンWebツール(Portチェックテスト)(外部サーバからの対象IPやホスト名のPort開放情報を確認する) IPドメインPortスキャンツール
【超簡単ドラッグ&ドロップWEBP画像軽量化】WEBP変換ツール:JPEG,PNG,SVGをWEBPに変換する無料ウェブサービス画像WEBP変換ツール
【超簡単ドラッグ&ドロップ】画像Base64エンコーダー変換ツール:画像(複数対応)をbase64文字列にエンコード 画像Base64エンコードツール
【無料】ファビコン favicon.ico 作成サービス(ブラウザ上でブックマークアイコン、半透過マルチアイコンが作れます) faviconファビコン作成無料
【超簡単】.htaccess作成支援ツール:BASIC認証,リダイレクト,アクセス制限,URL正規化,エラーページ等設定ができるツール .htaccess作成支援ツール
【超簡単コピペ】JavaScript/CSS圧縮ツール:Minify処理(軽量化)するJavaScript/CSSコードを大幅に軽量化する JavaScript/CSS圧縮ツール
【超簡単コピペ】JSON値デコード ツール:JSON文字列を配列に変換しデータ構造内を確認する JSONをデコードするツール
【簡単】無料で使えるSEOツール:検索順位やサイト調査と情報チェックするツール 無料で使えるSEOツール
【インターネット・Wifiスピード測定】インターネット回線速度(通信速度)を10秒以内測定ツール Wifiスピード測定/インターネット速度
DevNote Flexion DevNote
【ローン利息計算ツール】借入ローン返済シミュレーション - 金利や利息計算ツール ローン利息計算ツール
【簡単定番】Pingチェックテスト/外部からのping確認 Pingチェックテストツール
【簡単無料1括5枚】ネットで写真データ1MB以下圧縮/スマホiPhone/Android対応/JPG,PNG,GIF,ダウンロード(画像リサイズ変換無料サービス) 1括写真5枚1MB以下縮小
スケジュール管理無料!【テレワーク・中小企業最適】スケジュール共有やタスク管理、グループチャット、ファイル共有はこれTeamOnで! スケジュール管理/無料共有-TeamOn


Powered by WordPress & Editor by Flexion Counsulting Inc.