Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!
-
固定ページ
-
カテゴリー
-
アーカイブ
ブログロール
-
RSSフィード
-
メタ情報
SEO JAPAN 方法ブログWelcome to WordPress.com. This is your first post. Edit or delete it and start blogging!
# vi /etc/httpd/conf.d/phpmyadmin.conf ← phpMyAdmin用Apache設定ファイル作成
以下にアクセスを許可するIPアドレスを指定
order deny,allow
deny from all
allow from 127.0.0.1
allow from 192.168.3. ←ローカルIP全てを許可する
allow from 123.123.123.123 ←許可するグローバルIPアドレスを指定
allow from ::1
# stripcslashes() —- C言語と同様にバックスラッシュでクォートされた文字列を元に戻す
# htmlentities() —- 適用可能な文字を全てHTML エンティティに変換する
# nl2br() —- 改行文字の前にHTMLの改行タグを挿入する
# strip_tags() —- 文字列からHTMLタグ、および PHPタグを取り除く
<input type=”image” src=”画像のURL” onClick=”submit”/>
<strong>white-space</strong>
normal 標準 (初期値)
nowrap 自動的な折り返しを禁止する
http://blog.d-spica.com/entry/070307clearfix.html
htmlのフォーム内のcheckboxなどで、配列を扱いたい場合は、以下のように name 属性に [] をつけます。これで配列として扱えます。
<input type=”checkbox” name=”item[]” value=”">
<input type=”checkbox” name=”item[]” value=”">
<input type=”checkbox” name=”item[]” value=”">
<input type=”checkbox” name=”item[]” value=”">
その後、受け取った $_post['item'] を foreach などで回せば、自由に配列を扱うことが出来ます。
落とし穴ってほとではありませんが、少しハマってしまったので、恥ずかしながらメモ・・・。
あるサイトをつくっていたのですが、トップページを表示するたびにベーシック認証の画面が表示されるので、おかしいなぁと思い、それを解決しようとサーバ内を調べていました。
もともと .htaccess を置く必要がないディレクトリなので、サーバ上には、そんなファイルはありませんでした。
絶対に認証は、かけていない!・・のに、かかってる、さらに、最近サーバをアップグレードした影響かなという思いもあり、複雑に複雑に考えてしまいました。
もっといえば、ベーシック認証をキャンセルすれば、ページが正常に表示される状態でした。
認証がかかってるとすれば、htmllint とかで調べてみたらエラーが出るかなと思っても、htmllint ではエラーにならず、普通に結果が表示されました。
私の手元のブラウザ(firefox)の問題かなと思い、IEやサファリ、GoogleChromeで表示させても、全ブラウザで認証が出て、認証をキャンセルをすると表示される・・・。
結局、何が原因だったのかというと、認証がかかっているディレクトリ内にある javascript のファイルを平然と読み込んでいたことでした(_ _。)・・・シュン
なんとも情けない失敗ですが、こういう初歩的な失敗は時間がたつと忘れてしまう気がしたので、将来も不注意だろうと思われる自分のためにメモ。。。
配列の要素の値から、そのキーを取り出す場合。
<?php
$array = array(0 => ‘blue’, 1 => ‘red’, 2 => ‘green’, 3 => ‘red’);
$key = array_search(‘green’, $array); // $key = 2;
$key = array_search(‘red’, $array); // $key = 1;
?>
NICをNetworkMangerで管理しない場合
NetworkMangerサービスを無効にする。
% sudo service NetworkManager stop
% sudo chkconfig –del NetworkManager
networkサービスを有効にする。
% sudo chkconfig –level 2345 network on
% sudo chkconfig –add network
% sudo service network start
■データベース関連
phpmyadmin データベース
■ユーザドキュメント関連
/home/ 内
■ユーザ関連
/etc/passwd
/etc/shadow
/etc/group
■サーバ設定
/etc/ 内
バーチャルホストやvsftp,httpd関連の設定
メール関連の設定
fedor サーバ にvnc-server のインストール
yum install -y vnc-server
php.iniの short_open_tag = On にすることで <?php の省略形が使えるようになる。
<?php
echo “test”;
?>
↓↓↓↓↓↓↓↓
<?
echo “test”;
?>
fedora 12
こんなことが起こってはいけないのですが、、、、
昨日、サーバでsudo関連のプログラムをfedoraサーバでテストしてたのですが、その際に、誤って、想定してないような値を渡してしまい、サーバ上のディレクトリやファイルのパーミッションがおかしなことになってしまいました。
rootでもログイン出来なくなってしまい、全てがおかしくなったのか、部分的におかしくなったのかも把握できず、とりあえず、初期化するしかないかなと思いつつも、調べて、調べて、試行錯誤してました。
そんな状況で、どうにかこうにか /var/lib/mysql 内のデータをFTP経由で抜き出しました。
それだけでは、DBのバックアップは出来ないだろうなと思いつつも、違うサーバ上の同じ場所(/var/lib/mysql)に置いてみると、普通にphpmyadminでデータが読み込まれました。
ただ、この状態では、データの参照は出来るものの、phpmyadmin上からデータの編集、削除や、phpプログラムからデータを追加することも出来ない状態でした。(read onlyというエラーが出ます)
これではあまり意味がないので、また試行錯誤していました。
新しいサーバ上のphpmyadminから参照しか出来ないread onlyのDBエクスポートし、/var/lib/mysql から、さきほど置いた古いDB(old_db)のディレクトリを削除。
この時点で、新しいphpmyadmin上には、古いDB(old_db)の情報はなくなっています。
その状態で、新しいサーバに古いDBと同じ名前(old_db)のDBを作り、エクスポートしておいた、ものをインポートすると、編集や削除も出来る状態で、新しいphpmyadminに移行することが出来ました。
phpプログラムからのデータの追加や削除なども出来ました。
朝から夜までずっと調べて、試して、丸一日かけて、やっと辿り着きました・・・。
今回は、DBのバックアップなどをしてなかったので、こんな状況になりましたが、普段からDBをしっかりバックアップしておけば、良いだけ、、という普通の教訓を得ました(_ _。)・・・シュン
php.iniを適当なサイズに変更します。
memory_limit 32M
post_max_size 50M
upload_max_filesize 50M
php.iniを変更したら
httpdをリスタートします。
service httpd restart
これで、大きなサイズでもインポート可能になります。
PEARインストール
# yum -y install php-pear
PEARのバージョンを確認
# pear -V
Apacheのチューニングについて。
今のところ、大丈夫かなと思いますが、いずれ試してみようと思います。
http://tech.bayashi.net/svr/doc/apache/tune.html
sarコマンドを利用するために必要なシステムをインストール
# yum install -y sysstat
phpでデータを抜き出す
$pp = popen(‘/usr/bin/sar -r 1 1′, ‘r’);
while(!feof($pp)):
var_dump(fgets($pp));
endwhile;
pclose($pp);
$pp = popen(‘/usr/bin/uptime’, ‘r’);
while(!feof($pp)):
var_dump(fgets($pp));
endwhile;
pclose($pp);
* kbmemfree: 物理メモリの空き容量
* kbmemused: 使用中の物理メモリ量
* %memused: 物理メモリ使用率
* kbbuffers: カーネル内のバッファとして使用されている物理メモリの容量
* kbcached: カーネル内のキャッシュ用メモリとして使用されている物理メモリの容量
* kbswpfree: スワップ領域の空き容量
* kbswpused: 使用中のスワップ領域の容量
* %swpused: スワップ領域の使用率
→ 実質メモリ使用量 = kbmemused – ( kbbuffers + kbcached )
free コマンドの場合、計算しなくても「-/+ buffers/cache:」に実質メモリ使用量を表示してくれる。
$pp = popen(‘/usr/bin/free 1 1′, ‘r’);
while(!feof($pp)):
var_dump(fgets($pp));
endwhile;
pclose($pp);
参照元:http://d.hatena.ne.jp/yohei-a/20090322/1237744536#c
http://nplll.com/mutter/archives/2009/06/sysstat.php
http://d.hatena.ne.jp/naoya/20070518/1179492085
<?php
/**
* ページタイトルを取得する関数
*/
function getPageTitle( $url ) {
$html = file_get_contents($url); //(1)
$html = mb_convert_encoding($html, mb_internal_encoding(), "auto" ); //(2)
if ( preg_match( "/(.*?)/i”, $html, $matches) ) { //(3)
return $matches[1];
} else {
return false;
}
}
?>
参照元:http://creazy.net/2008/05/php_get_page_title_sample.html