2012/06/20
twitterアプリ作成時のメモ アプリ認証登録編
◎ツイッターアプリを デベロッパーサイトに登録
https://dev.twitter.com/
→ Create an app
https://dev.twitter.com/apps/new
・必要事項入力
Name: アプリ名
Description: アプリ概要
Website: ウェブサイト(架空でOK)
Callback URL: ※コレが大事 ツイッターのアプリ連携認証が完了して 戻る先のURL
規約を読んで同意して送信
◎My applications-登録されたapplication確認
右上のアカウントのプルダウンメニューからも確認できる
◎アプリで使う keyとかの確認
Access level ←デフォはread onlyになっているので twitter投稿とかしたい場合は
About the application permission model(https://dev.twitter.com/docs/application-permission-model)
パーミッション設定画面で「Read and write」を設定しておく
Consumer key ←アプリに設定
Consumer secret ←アプリに設定
2012/06/15
[CakePHP2.0] 複数アプリが混在するサービスで生じた問題メモ
複数appが必要なとき、1.3の時には 何もきにせず
app_1/
app_2/
:
って作っていたので
2.0でも 同じ構成で作っていたら
app_1とapp_2の appController.phpに同じメソッド名があると、
app_1のappControllerを呼び出したら
app_2でappControllerをよんでも app_1のappControllerを見に行ってしまうとか
1と2に 同じ名前のControllerを置くと うまく動かないとか
いう声を聞いたので ちょっと調べたけど、未だ具体策はつかめず
いちおう メモがわりに 貼っとく
CakePHPで複数アプリケーション管理|マリンロード
http://www.marineroad.com/staff-blog/3159.html
CakePHP2.0で現状の問題点などまとめました。 | Fusic Developers' Weblog
http://blog.fusic.co.jp/archives/2207
eat cake, 複数のapp 同居
http://miztools.so.land.to/php5_list/eat_cake/ac_off/cake2.php/edit/multi_app
app_1/
app_2/
:
って作っていたので
2.0でも 同じ構成で作っていたら
app_1とapp_2の appController.phpに同じメソッド名があると、
app_1のappControllerを呼び出したら
app_2でappControllerをよんでも app_1のappControllerを見に行ってしまうとか
1と2に 同じ名前のControllerを置くと うまく動かないとか
いう声を聞いたので ちょっと調べたけど、未だ具体策はつかめず
いちおう メモがわりに 貼っとく
CakePHPで複数アプリケーション管理|マリンロード
http://www.marineroad.com/staff-blog/3159.html
CakePHP2.0で現状の問題点などまとめました。 | Fusic Developers' Weblog
http://blog.fusic.co.jp/archives/2207
eat cake, 複数のapp 同居
http://miztools.so.land.to/php5_list/eat_cake/ac_off/cake2.php/edit/multi_app
2012/06/05
同じネットワーク内でのvhosts設定
※まんま みーとくんからの転載 めもさせていただいた。
バーチャルホストの設定 - 肉になるメモ
http://d.hatena.ne.jp/kazumeat/20120130/1327918879
バーチャルホストの設定 - 肉になるメモ
http://d.hatena.ne.jp/kazumeat/20120130/1327918879
・/etc/httpd/con.d 以下にアプリ用のconfを作成
NameVirtualHost 192.168.1.111:80
#
# app1
#
<VirtualHost 192.168.1.111:80>
DocumentRoot /var/www/app1
ServerName app1.com
ErrorLog logs/app1_error_log
CustomLog logs/app1_access_log common
<Directory "/var/www/app1">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
#
# app2
#
<VirtualHost 192.168.1.111:80>
DocumentRoot /var/www/app2
ServerName app2.com
ErrorLog logs/app2_error_log
CustomLog logs/app2_access_log common
<Directory "/var/www/app2">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
・ローカルのhostsファイル設定
C:\Windows\System32\drivers\etc\hosts
192.168.1.111 app1.com 192.168.1.111 app2.com
2012/05/30
file_get_contentsで外部ファイルを読み取る
file_get_contentsで、外部のXMLや画像、webページなどを取得できる
◎普通に取得する場合
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
◎ファイルの一部の読み込み
// 21 文字目から 14 文字ぶん読み込みます
$section = file_get_contents('./people.txt', NULL, NULL, 20, 14);
var_dump($section);
◎Basic認証
file_get_contents("http://user:password@www.example.com/");
◎ストリームコンテキストの使用
・ストリームコンテキストでのBasic認証
// ストリームを作成します
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Authorization: Basic " .base64_encode("user:password"). "\r\n"
)
// 上で設定した HTTP ヘッダを使用してファイルをオープンします
$file = file_get_contents('http://www.example.com/', false, stream_context_create($opts));
・特定のヘッダで送信
// ストリームを作成します
$header = Array(
"Content-Type: application/x-www-form-urlencoded",
"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",
"Accept-language: en",
"Cookie: foo=bar"
);
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>join("\r\n", $header),
)
);
$context = stream_context_create($opts);
// 上で設定した HTTP ヘッダを使用してファイルをオープンします
$file = file_get_contents('http://www.example.com/', false, $context);
◎POSTで送信
$data = array(
'param1' => 'hoge',
'param2' => 'hogehoge',
);
$opt = array('http' => array(
'method' => 'POST',
'content' => http_build_query($data),
));
$contents = file_get_contents('http://www.example.com/', false, stream_context_create($opt));
クエリーキャッシュ関係を調べる
◎クエリーキャッシュが有効になっているか確認する
◎キャッシュのサイズを確認する
「have_query_cache」が「YES」になってても、この↑キャッシュサイズが0だったら キャッシュはされない。
◎キャッシュサイズを設定する
my.cnfで設定
設定後にMySQL再起動 : service mysqld restart
◎クエリーキャッシュされたかを確認する
キャッシュされると「Qcache_hits」とか「Qcache_queries_in_cache」とかの値が増える
SHOW VARIABLES LIKE 'have_query_cache'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | have_query_cache | YES | +------------------+-------+ 1 row in set (0.00 sec)
◎キャッシュのサイズを確認する
show variables like 'query_cache_size'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | query_cache_size | 0 | +------------------+-------+
「have_query_cache」が「YES」になってても、この↑キャッシュサイズが0だったら キャッシュはされない。
◎キャッシュサイズを設定する
SET GLOBAL query_cache_size = 41984;
my.cnfで設定
query_cache_size = 32M
設定後にMySQL再起動 : service mysqld restart
SHOW STATUS LIKE 'Qcache%'; +-------------------------+-------+ | Variable_name | Value | +-------------------------+-------+ | Qcache_free_blocks | 0 | | Qcache_free_memory | 0 | | Qcache_hits | 0 | | Qcache_inserts | 0 | | Qcache_lowmem_prunes | 0 | | Qcache_not_cached | 0 | | Qcache_queries_in_cache | 0 | | Qcache_total_blocks | 0 | +-------------------------+-------+ 8 rows in set (0.00 sec)
キャッシュされると「Qcache_hits」とか「Qcache_queries_in_cache」とかの値が増える
登録:
投稿 (Atom)