レンタルサーバの利用する上でほぼ避けられないのが.htaccessの設定です。
自分のメモもかねますが、coliss.comの「サーバーの設定をカスタマイズ、よく利用する『.htaccess』の設定のまとめ」がわかりやすく解説されています。
他の方法でもできることを.htaccessで設定する場合もありますし、.htaccessでしかできないこともあります。サラッと読んでおいて、「そういえば、こんなことが.htaccessでできた気がする!」と思い出すだけでも役に立ちそうです。
レンタルサーバの利用する上でほぼ避けられないのが.htaccessの設定です。
自分のメモもかねますが、coliss.comの「サーバーの設定をカスタマイズ、よく利用する『.htaccess』の設定のまとめ」がわかりやすく解説されています。
他の方法でもできることを.htaccessで設定する場合もありますし、.htaccessでしかできないこともあります。サラッと読んでおいて、「そういえば、こんなことが.htaccessでできた気がする!」と思い出すだけでも役に立ちそうです。
CORESERVER (CORE-A)で運用しているサイトの反応がどうも鈍いので障害メンテナンス情報で確認したところ、他のサーバーよりも負荷が多い状態でした。2日ほどの間いろいろな時間帯に見てみましたが、ほとんど赤い「混雑」状態でした。
共用サーバなので、仕方の無いことですが、改善を考えるとサーバーの移転が望ましいところです。幸い、CORESERVERは無料お試し期間を利用することで、比較的簡単にサーバー間の移動ができます。
参考にしたサイトは「CORESERVERのサーバー移動(作業手順メモ) | 普通のサラリーマンのiPhone日記」です。
ほとんどは上記のサイトに従って行いました。ひとつ注意ですが、サーバー間でコピーを行った場合、PhpMyAdminもコピーされます。従って、Logフォルダのパスワードの設定も引き継がれますので、管理画面、データベースの「ページ入室の際はログ閲覧画面の認証パスワード」も旧サーバの設定がコピーされます。新しいサーバーの管理画面にあるパスワードは使えません。この設定は/public_html/log/.htpasswdに記述されていますので、気になる場合はこれを変更します。.htpasswdの生成には管理メニューのツールの使用が便利です。
データベースのコピーは一括でできませんので、一つ一つ設定する必要がありますが、30分ほどで移転が完了しました。
同じプランのサーバー間の移転はもちろん、サーバーのアップグレードや統合などにも使えます。
以前紹介したBackWPupは様々な設定で稼働中のWordpressを自動バックアップできます。
秀逸なのは、クラウドに対応していることで、DropboxやSyugarsync、Amazon S3、Google Storage等にも対応しています。
BackWPupはわかりやすく便利なのですが、画像などの多いサイトをSugarsyncにバックアップする際に、タイムアウトによりエラーが出てしまいます。ログにはタイムアウトとは表示されず、リトライと記録されています。バックアップファイルの大きさは、数十MB程度では問題になることはありませんが、数百MBだとうまくいかない場合があります。
PHP 5.2で動いていたページが5.3にバージョンアップしたところ、以下のようなエラーを出すようになりました。
Warning: mbregex compile err: premature end of regular expression ...
正規表現に使用する文字コードをしていないことが原因です。
mb_regex_encoding("UTF-8");
このような一文を入れたところ解決しました。
日本語を扱う場合は、最初の方にmb_internal_encodingとmb_regex_encodingをお約束のように記述することが良さそうです。
Webサイトの作成でやっかいなのがS-JIS(シフトJIS)の取り扱いです。以前はPCの文字コードがS-JISだったり、ケータイサイトはS-JISしか使えなかったりしていましたが、現在ではUTF-8等を使うことが多いと思います。
PHPで文字コードの変換にはmb_convert_encodingを使いますが、このとき、以下のようにすると一部の文字で文字化けが生じます。
mb_convert_encoding($str, 'utf8', 'sjis');
どうやら、拡張文字の扱いで文字化けが生じるようです。以下のようにすると、解決します。
mb_convert_encoding($str 'utf8', 'sjis-win');
具体的に影響のある文字として、「髙」「黑」「①」「Ⅰ」などがあります。
WordPress が3.4にバージョンアップしました。
変更点はいくつかありますが、カスタムヘッダー周りの変更が大きなところでしょうか。テーマを作っている場合は対応が必要になるかもしれません。
firegobyさんのブログでわかりやすい記事がありましたので、おしらせします。
Codeigniterの話題(メモ書き)が続きます。
http://www.example/codeigniter/
とアクセスしたときに使用されるコントローラはconfigディレクトリ、routes.phpで設定します。つまり、URIセグメントに何も指定されていないときに表示されるページの設定です。
$route['default_controller'] = "welcome";
上記の場合、welcome.phpのindex()がデフォルトコントローラとして指定されます。
config.phpの中を探してしまいましたが、routes.phpにあるんですね。と、気がついたあとに、ユーザガイドをみたらコントローラの項目にばっちり書いてありました。
CodeIgniterの’index.php’を省略するの記事の追加です。その記事では.htaccessの設定を書きました。これだけでは、コードないでリダイレクトした場合にはindex.phpが挿入されてしまうので、Codeigniterをインストールしたディレクトリの\apllcation\configにある、config.phpの
$config['index_page'] = 'index.php';
をコメントアウトします。
軽量軽快動作が売りのPHPフレームワーク Codeigniterの関連を続けます。
Codeigniter の現在の最新バージョンは2.1.0です。フレームワークに標準で用意されている様々なメッセージは、インストールディレクトリ下のapplication、languageに納めますが、それぞれの言語ごとに別アーカイブをダウンロード、展開する必要があります。日本語バージョンは完成度97%ということですが、こちらからダウンロードできます。
これがないと、フォームに入力を求めた際などに、form_validation_lang.phpがありませんといったエラーが出てしまいます。
Codeigniter 1系の最終版である1.7.3では、本体のアーカイブに各言語が含まれています。