新規記事の投稿を行うことで、非表示にすることが可能です。
2015年05月29日
今どき文字化け?
私はレンタルサーバーを借りている。
そのサーバーでWordPressを使ってブログを書いているが、
最近編集後、保存をするとループに入る。
その後はドメイン内のページ全てが接続エラーになる。
接続とはブラウザを使ってhttpで接続すると言うことである。
そのサーバーにはツールとして「ファイルマネージャー」がついているので、そのツールでドメイン内を見てみるとファイルが見えそのファイルにアクセスも出来る。
どうもサーバーの障害ではないようだ。
この現象は前日も起こっていたので、httpサーバーに何か不具合が発生しているのかと、レンタル業者に問い合わせてみる。
その時の問い合わせメールは下記の通り。
「wordpress( http://orange-cat.info/shots/ )を編集していると全てのorange-cat.info配下に接続できなくなる。FTPでの接続はOKです。HTTPが固まる?
以上、よろしくお願いします。」
少し文書が雑過ぎたかもしれないが夜中だったのでこのまま投げた。
翌日回答が来た。
「まことに恐れ入りますが、ご記載の内容から状況が分かりかねる
次第でございます。
お手数ではございますが、詳細をお書き添えの上、再度ご連絡
くださいますようお願い申しあげます。 」
うん?
何も調べてないじゃないか。
専門家だったら多少は推測できるんじゃないの?
誠意がないな。(専門家ではないのかもしれない)
そこで私は次のメールで返信した。
「ログは見たのでしょうか?
ログに何も落ちてなかったのですか?
下記のメールには調べた形跡が全く見当たりません。
予想はしていたものの、甚だ残念です。 」
また、前回の問い合わせメールを詳しく追記した。
「ワードプレスでブログ( http://orange-cat.info/shots/ ) を編集し保存をしたら、
ドメインに接続できなくなった。
http://orange-cat.info/shots/ を実行すると接続エラー。
http://orange-cat.info/ でも接続エラー。(orange-cat.info/index.html)
他もorange-cat.info 内は全て接続エラーが発生する。
ファイルマネージャー で ドメインorange-cat.info の中を参照することは出来た。
と言うことはサーバーに問題はなく、
http接続(アパッチ?)のみ不具合が発生したものと思われる。
クライアント側に問題なし、他のWebは全て参照可。
と言うことで、オウム返しでなくログだけは見て欲しかった。
以上 」
多分このメールは無視されるんだろうなと思っていたが、
帰宅後メールをチェックするとこんなメールが反ってきてた。
「まことに恐れ入りますが、お客様からいただきました
お問い合わせ内容が文字化けをしており、内容の確認が
出来かねる状況でございます。
つきましては、大変お手数でございますが、下記お問い合わせ
フォームより再度お問い合せくださいますようお願い申しあげます。」
えっ!
文字化け?
今時文字化けってあるんだ。
私の使っているメーラーは「サンダーバード Version 31.7.0」である。
自分に転送してみたら文字化けなどしていない。
業者はどんなメーラーを使っているのだろうか。
化石化したブラックジョークか。
昔、通販でこんなメールを繰り返した記憶がある。
プロでしょ?
【このカテゴリーの最新記事】
2015年05月23日
VBS 「ファイル名の変更」
ブログを書いていて一つ面倒な作業がある。
画像が大きいのでサイズダウンしてアップしている訳だが、
サイズダウンしたファイルの名前を変更しておかなければならい。
変更しておかないと後でどれがオリジナルなのか解らなくなる。
そこでひとつひとつ名前を変更するわけだが、
ファイル数が多いと大変だ。
そこでファイル名の変更をVBSで作ってみた。
VBSとは、Visual Basic Script 。
ビジュアルベーシックふうのスクリプトで、簡易に処理が出来る。
昔、DOSコマンドで原始的な作業をバッチ処理していたが、
その作業をスクリプトで行えるのだ。
"FileSystemObject"と言うオブジェクトをよく使うので、
覚えるといいだろう。
下記が処理ソースだ。
コメントにも入れてあるが、出来上がったスクリプトを処理したい
フォルダに配置し実行すればファイル名を変更する。
単一フォルダ内のみの処理なので、下位レベルまで処理したければ
改造が必要となる。
ダイアログを出してフォルダの指定をしても良いのだが、
使用頻度から考えるとそこまでは必要ないと判断した。
コンスタントパラメータ"cFiExt"に処理したいファイルの
拡張子を入れておけば、該当するファイルだけリネームする。
被検査対象を小文字に変換してから判断しているので、
コンスタントは小文字で設定する。
結果をMsgBoxで表示しているが、MsgBoxにも表示制限があって、
文字数は1バイト文字で最大約1024文字までしか表示出来ない。
メインルーチンでスクリプトの入っているフォルダを判断し、
関数でファイル名の変更ルーチンを呼び出している。
関数を変えれば他にもいろいろ使うことが出来る。
例えば、ファイルのコピーとか移動とか削除とか。
'=======================================
'フォルダ単位の名前の変更を行う
'対象フォルダにこのスクリプトを配置し、スクリプトを実行する
'処理対象拡張子をcFiExtに入力しておく
'=======================================
'
'フォルダ名にスペース等が入っているとエラーになる
'MsgBoxは1バイト文字で最大約1024文字までしか表示出来ない
'
Const cFiExt = "jpggif" 'jpg と gif を処理対象にする
dim FS
dim xMyPath
set FS=CreateObject("Scripting.FileSystemObject")
'スクリプトのフォルダ名を取得
xMyPath=Replace(WScript.ScriptFullName, WScript.ScriptName, vbNullString)
if right(xMyPath,1)="\" then '右端が"\"の場合この"\"を削除
   xLen=Len(xMyPath)
   xMyPath=left(xMyPath,(xLen-1))
end if
FileRenameProc(xMyPath)
set FSN = Nothing
'--------------------------------------------------
' ファイル名の変更
'--------------------------------------------------
Function FileRenameProc(pSourceFolder)
dim objFolder,objFiles,objFi,Fi
dim Arr,xx,tmp,NewName
dim xLen,Ix
Set objFolder = FS.GetFolder(pSourceFolder)
Set objFiles = objFolder.Files
tmp = ""
For Each Fi in objFiles
   Arr =Split(Fi.Name,".")
   xx = LCase(Arr(1))
   If InStr(cFiExt,xx) > 0 Then
      set objFi = FS.GetFile(Fi)
      NewName=Arr(0) & "b" & "." & Arr(1)
      tmp = tmp & Fi.name & "->" & NewName & vbCrLf
      objFi.Name = NewName
   End If
Next
MsgBox tmp '表示文字数制限あり
set objFi = Nothing
Set objFiles = Nothing
Set objFolder = Nothing
End Function
画像が大きいのでサイズダウンしてアップしている訳だが、
サイズダウンしたファイルの名前を変更しておかなければならい。
変更しておかないと後でどれがオリジナルなのか解らなくなる。
そこでひとつひとつ名前を変更するわけだが、
ファイル数が多いと大変だ。
そこでファイル名の変更をVBSで作ってみた。
VBSとは、Visual Basic Script 。
ビジュアルベーシックふうのスクリプトで、簡易に処理が出来る。
昔、DOSコマンドで原始的な作業をバッチ処理していたが、
その作業をスクリプトで行えるのだ。
"FileSystemObject"と言うオブジェクトをよく使うので、
覚えるといいだろう。
下記が処理ソースだ。
コメントにも入れてあるが、出来上がったスクリプトを処理したい
フォルダに配置し実行すればファイル名を変更する。
単一フォルダ内のみの処理なので、下位レベルまで処理したければ
改造が必要となる。
ダイアログを出してフォルダの指定をしても良いのだが、
使用頻度から考えるとそこまでは必要ないと判断した。
コンスタントパラメータ"cFiExt"に処理したいファイルの
拡張子を入れておけば、該当するファイルだけリネームする。
被検査対象を小文字に変換してから判断しているので、
コンスタントは小文字で設定する。
結果をMsgBoxで表示しているが、MsgBoxにも表示制限があって、
文字数は1バイト文字で最大約1024文字までしか表示出来ない。
メインルーチンでスクリプトの入っているフォルダを判断し、
関数でファイル名の変更ルーチンを呼び出している。
関数を変えれば他にもいろいろ使うことが出来る。
例えば、ファイルのコピーとか移動とか削除とか。
'=======================================
'フォルダ単位の名前の変更を行う
'対象フォルダにこのスクリプトを配置し、スクリプトを実行する
'処理対象拡張子をcFiExtに入力しておく
'=======================================
'
'フォルダ名にスペース等が入っているとエラーになる
'MsgBoxは1バイト文字で最大約1024文字までしか表示出来ない
'
Const cFiExt = "jpggif" 'jpg と gif を処理対象にする
dim FS
dim xMyPath
set FS=CreateObject("Scripting.FileSystemObject")
'スクリプトのフォルダ名を取得
xMyPath=Replace(WScript.ScriptFullName, WScript.ScriptName, vbNullString)
if right(xMyPath,1)="\" then '右端が"\"の場合この"\"を削除
   xLen=Len(xMyPath)
   xMyPath=left(xMyPath,(xLen-1))
end if
FileRenameProc(xMyPath)
set FSN = Nothing
'--------------------------------------------------
' ファイル名の変更
'--------------------------------------------------
Function FileRenameProc(pSourceFolder)
dim objFolder,objFiles,objFi,Fi
dim Arr,xx,tmp,NewName
dim xLen,Ix
Set objFolder = FS.GetFolder(pSourceFolder)
Set objFiles = objFolder.Files
tmp = ""
For Each Fi in objFiles
   Arr =Split(Fi.Name,".")
   xx = LCase(Arr(1))
   If InStr(cFiExt,xx) > 0 Then
      set objFi = FS.GetFile(Fi)
      NewName=Arr(0) & "b" & "." & Arr(1)
      tmp = tmp & Fi.name & "->" & NewName & vbCrLf
      objFi.Name = NewName
   End If
Next
MsgBox tmp '表示文字数制限あり
set objFi = Nothing
Set objFiles = Nothing
Set objFolder = Nothing
End Function