Apacheの表示がイントラ内だけ妙に遅い(応答性能が低い)症状

なんか不思議な現象が起きた。

Httpsで外部から開く場合はpingが遅くないのに社内だとpingがすごくおそい。

逆だったら普通なんだけど、なんかおかしい。

原因は.htaccessの逆引き処理でした。

order deny,allow
#deny from all
allow from 192.168.11.30
allow from localhost
allow from 127.0.0.1

order deny,allow
#deny from all
allow from 192.168.11.30
allow from 127.0.0.1

にしたら治った。

localhostをDNSで逆引きしちゃうとは・・・

¥の挙動

PHPでファイルパスを指定するとき¥を使うけど、

¥を二回¥¥とやっても¥が一回しかないよー的な動作をしたり2つある的な動作もする。

もしD:\\とか場合だと正規表現できちんと認識させるためには\\\\\\\\としないといけない

$dir=”D:\\test”

if(preg_match(‘{^(?:[a-zA-Z]\:(\\\\\\\\|\/\/\/\/))([^\\\/\:\*\?\<\>\”\|]+(\\\\\\\\|\/\/\/\/){0,1})+$}’, $dir, $m))

はOK

if(preg_match(‘{^(?:[a-zA-Z]\:(\\\\|\/\/))([^\\\/\:\*\?\<\>\”\|]+(\\\\|\/\/){0,1})+$}’, $dir, $m))

はNG

特定フォルダ以降のファイルパスを正規表現で取得

スゴイシンプルそうなのにめっちゃくちゃ時間かかった。

/files*(?!.*files)(.*)/

これで

入力:D:\\files\aaa\files\bbb\dddddddddd

結果:一致しました。
preg_match(‘/files(?!.*files)(.*)/’, ‘D:\\files\files\aaa\dddddddddd’, $m);
の結果は以下の通りです。

$m[0] = files\bbb\dddddddddd
$m[1] = \bbb\dddddddddd

 

となる。