Suche senden
Hochladen
apachehereというPHPのBuiltin Serverっぽいやつをつくった
•
0 gefällt mir
•
5,059 views
Junichi Ishida
Folgen
PHPBLT #2でLTしました
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 35
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
PHP7実環境ベンチ2016春
PHP7実環境ベンチ2016春
Ryo Tomidokoro
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
k-motoyan
PHPという概念が存在しない退屈な世界
PHPという概念が存在しない退屈な世界
Yoshihiro Ohsuka
恋に落ちるデプロイツール
恋に落ちるデプロイツール
totty jp
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
Varnish
Varnish
Ayako Hatori
Empfohlen
PHP7実環境ベンチ2016春
PHP7実環境ベンチ2016春
Ryo Tomidokoro
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
k-motoyan
PHPという概念が存在しない退屈な世界
PHPという概念が存在しない退屈な世界
Yoshihiro Ohsuka
恋に落ちるデプロイツール
恋に落ちるデプロイツール
totty jp
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
Varnish
Varnish
Ayako Hatori
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
itamaeで一撃サーバーProvisioning
itamaeで一撃サーバーProvisioning
Yuto Ogi
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
Aya Komuro
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
Kiyokazu Kaba
Nginx
Nginx
kantohibi
本番環境で使いたいPHP
本番環境で使いたいPHP
Takuya Sato
Ansibleハンズオン勉強会
Ansibleハンズオン勉強会
Takahisa Iwamoto
IPv6 Hackathon in 新潟
IPv6 Hackathon in 新潟
hayajo Imai
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Hidenori Goto
Web 01
Web 01
XMLProJ2014
Apacheチューニング
Apacheチューニング
ii012014
PSGIへの誘い
PSGIへの誘い
azuma satoshi
誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築
Hiroshi Yamato
Clojureの発表など
Clojureの発表など
Kikuta Go
Xamppでお手軽cms開発環境を手に入れる
Xamppでお手軽cms開発環境を手に入れる
Takashi Uemura
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
Rui Hirokawa
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
masayoshi shiraishi
サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)
ひとし あまの
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapy
Masashi Shibata
Security Advisories Checker on Travis/Circle CI
Security Advisories Checker on Travis/Circle CI
Ryo Shibayama
BigQueryのちょっとした話 #phpblt
BigQueryのちょっとした話 #phpblt
kunit
Weitere ähnliche Inhalte
Was ist angesagt?
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
itamaeで一撃サーバーProvisioning
itamaeで一撃サーバーProvisioning
Yuto Ogi
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
Aya Komuro
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
Kiyokazu Kaba
Nginx
Nginx
kantohibi
本番環境で使いたいPHP
本番環境で使いたいPHP
Takuya Sato
Ansibleハンズオン勉強会
Ansibleハンズオン勉強会
Takahisa Iwamoto
IPv6 Hackathon in 新潟
IPv6 Hackathon in 新潟
hayajo Imai
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Hidenori Goto
Web 01
Web 01
XMLProJ2014
Apacheチューニング
Apacheチューニング
ii012014
PSGIへの誘い
PSGIへの誘い
azuma satoshi
誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築
Hiroshi Yamato
Clojureの発表など
Clojureの発表など
Kikuta Go
Xamppでお手軽cms開発環境を手に入れる
Xamppでお手軽cms開発環境を手に入れる
Takashi Uemura
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
Rui Hirokawa
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
masayoshi shiraishi
サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)
ひとし あまの
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapy
Masashi Shibata
Was ist angesagt?
(20)
PHPデプロイツールの世界
PHPデプロイツールの世界
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
itamaeで一撃サーバーProvisioning
itamaeで一撃サーバーProvisioning
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
Nginx
Nginx
本番環境で使いたいPHP
本番環境で使いたいPHP
Ansibleハンズオン勉強会
Ansibleハンズオン勉強会
IPv6 Hackathon in 新潟
IPv6 Hackathon in 新潟
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Abコマンドを使ったウェブアプリケーションのパフォーマンス計測
Web 01
Web 01
Apacheチューニング
Apacheチューニング
PSGIへの誘い
PSGIへの誘い
誰でも出来るosxでのローカルなウェブ開発環境構築
誰でも出来るosxでのローカルなウェブ開発環境構築
Clojureの発表など
Clojureの発表など
Xamppでお手軽cms開発環境を手に入れる
Xamppでお手軽cms開発環境を手に入れる
PHP 5.5ネーティブキャッシュの話
PHP 5.5ネーティブキャッシュの話
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
サーバーを作ろう (毎週のハンズオン勉強会の資料)
サーバーを作ろう (毎週のハンズオン勉強会の資料)
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapy
Andere mochten auch
Security Advisories Checker on Travis/Circle CI
Security Advisories Checker on Travis/Circle CI
Ryo Shibayama
BigQueryのちょっとした話 #phpblt
BigQueryのちょっとした話 #phpblt
kunit
PSR-1 と PSR-2 を5分でざっくり理解する
PSR-1 と PSR-2 を5分でざっくり理解する
Wataru Terada
Php blt-vol2
Php blt-vol2
Masanori Hayashi
What's new in Symfony3
What's new in Symfony3
Yuki MAEJIMA
install PHP7 on CentOS7 by Ansible
install PHP7 on CentOS7 by Ansible
DQNEO
Composer並列化プラグイン #phpblt
Composer並列化プラグイン #phpblt
Hiraku Nakano
Ember コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
20121130 LT
20121130 LT
saten_kanae
コーヒーのススメ
コーヒーのススメ
IKD00
2012-11-30 LT
2012-11-30 LT
Shinya Takamaeda-Y
WebSocket For Web Rubyists
WebSocket For Web Rubyists
Mu-Fan Teng
PECL を数えてみた
PECL を数えてみた
y-uti
mruby で mackerel のプラグインを作るはなし
mruby で mackerel のプラグインを作るはなし
Hiroshi SHIBATA
テスト事始め phpblt #3
テスト事始め phpblt #3
rittyan
Reading php terminal-gameboy-emulator
Reading php terminal-gameboy-emulator
Tomoki Hasegawa
私が上智に通って唯一誇れること
私が上智に通って唯一誇れること
Ryohei Kobayashi
Rubyで実はwritev(2) が使われているはなし
Rubyで実はwritev(2) が使われているはなし
Masaki Matsushita
SQL 脳から見た Ruby
SQL 脳から見た Ruby
yancya
超絶技巧プログラミングと Ruby 3.0 (大江戸 Ruby 会議 05 コミッタ LT)
超絶技巧プログラミングと Ruby 3.0 (大江戸 Ruby 会議 05 コミッタ LT)
mametter
Andere mochten auch
(20)
Security Advisories Checker on Travis/Circle CI
Security Advisories Checker on Travis/Circle CI
BigQueryのちょっとした話 #phpblt
BigQueryのちょっとした話 #phpblt
PSR-1 と PSR-2 を5分でざっくり理解する
PSR-1 と PSR-2 を5分でざっくり理解する
Php blt-vol2
Php blt-vol2
What's new in Symfony3
What's new in Symfony3
install PHP7 on CentOS7 by Ansible
install PHP7 on CentOS7 by Ansible
Composer並列化プラグイン #phpblt
Composer並列化プラグイン #phpblt
Ember コミュニティとわたし
Ember コミュニティとわたし
20121130 LT
20121130 LT
コーヒーのススメ
コーヒーのススメ
2012-11-30 LT
2012-11-30 LT
WebSocket For Web Rubyists
WebSocket For Web Rubyists
PECL を数えてみた
PECL を数えてみた
mruby で mackerel のプラグインを作るはなし
mruby で mackerel のプラグインを作るはなし
テスト事始め phpblt #3
テスト事始め phpblt #3
Reading php terminal-gameboy-emulator
Reading php terminal-gameboy-emulator
私が上智に通って唯一誇れること
私が上智に通って唯一誇れること
Rubyで実はwritev(2) が使われているはなし
Rubyで実はwritev(2) が使われているはなし
SQL 脳から見た Ruby
SQL 脳から見た Ruby
超絶技巧プログラミングと Ruby 3.0 (大江戸 Ruby 会議 05 コミッタ LT)
超絶技巧プログラミングと Ruby 3.0 (大江戸 Ruby 会議 05 コミッタ LT)
Ähnlich wie apachehereというPHPのBuiltin Serverっぽいやつをつくった
AWS Opsworksを使ってPHPとLaravelが動くサーバーを構築してみよう!at phpstudy#97
AWS Opsworksを使ってPHPとLaravelが動くサーバーを構築してみよう!at phpstudy#97
Shinichiro Yoshida
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
async/await不要論
async/await不要論
bleis tift
As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!
Kazumi IWANAGA
Quercus on gae公開版
Quercus on gae公開版
Yusuke Kawabata
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
Ähnlich wie apachehereというPHPのBuiltin Serverっぽいやつをつくった
(6)
AWS Opsworksを使ってPHPとLaravelが動くサーバーを構築してみよう!at phpstudy#97
AWS Opsworksを使ってPHPとLaravelが動くサーバーを構築してみよう!at phpstudy#97
Hashicorpツールズ
Hashicorpツールズ
async/await不要論
async/await不要論
As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!
Quercus on gae公開版
Quercus on gae公開版
Couch DB in 15minutes
Couch DB in 15minutes
Mehr von Junichi Ishida
Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.
Junichi Ishida
H2O and php
H2O and php
Junichi Ishida
PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料
Junichi Ishida
Fukuokapm20140920 uzulla talk
Fukuokapm20140920 uzulla talk
Junichi Ishida
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
Pager Anti Pattern(Joke)
Pager Anti Pattern(Joke)
Junichi Ishida
Perlcasual #5 発表資料
Perlcasual #5 発表資料
Junichi Ishida
Mehr von Junichi Ishida
(7)
Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.
H2O and php
H2O and php
PHPカンファレンス2014の懇親会飛び込みLT資料
PHPカンファレンス2014の懇親会飛び込みLT資料
Fukuokapm20140920 uzulla talk
Fukuokapm20140920 uzulla talk
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Pager Anti Pattern(Joke)
Pager Anti Pattern(Joke)
Perlcasual #5 発表資料
Perlcasual #5 発表資料
apachehereというPHPのBuiltin Serverっぽいやつをつくった
1.
PHPのBuiltin Serverっぽい Apache PHPBLT #2 http://phpblt.connpass.com/event/23974/ LT用スライド @uzulla
2.
"who are you
?" UZULLA PHPer 「Perl方面からきました」
3.
PHPといえば LAMP(古)
4.
皆さん Apacheで 開発してますか?
5.
あるメールフォーマーの話 » 色々な案件が同時に沢山走っている » 「A案件修正」「はい」「B案件仕変」「はい」「C 案件ロールバック」「はい」 »
案件毎に環境もまちまち » 「AWSって専用サーバーにして」「エッ」 » 「PaaSなら保守費用ゼロって読んだ」「エッ」 » 「予算500円しかない」「エッ…フティーピー」
6.
» 環境を沢山維持して、パッパッと切り替えするのは大 変… » そんな時、我らがPHPのBuilt-in
Serverなら…?
7.
シュッ
8.
シュッと切り替えできる » ので、私はできるだけBuilt-in Server(以後BS)で も動くように心がけています »
みなさんはBuilt-in Serverつかってます? » とはいえ、前の開発者が逃げたりした 引き継ぎ案件 や、なぜか事前にWPベースで作ると決まった CMS 案件等ではそうは行かない事も多い、なぜなら
9.
Apache前提の案件 » 例:「WordPressはCMS」「はい」 » BSと相性悪い(秘伝のrouter.php…) »
.htaccessが要件として必須な事も多い » 「 の既存問い合わせフォーム」と相乗 » 「ここにBasic認証」「はい」 » こうなると、やはりApache(等)が必要 » 「普通VMつかうよね」「せやな」
10.
VM開発 のPros/Cons » ✅
楽に本番に寄せられる » ❌ ホストとfs等がセパレートされている » # IDE等のツールの取り回しが面倒 » ❓「それ、○○年後に開けるの?」 » % イメージの中のコードは検索面倒 » & 資源の無駄、エコでない
11.
なので 私は ネイティブ派
12.
DISCLAIMER » OSX(あるいはLinux)の話が続きます。 » Windowsの人も似たような事はできる…とおもいま すがどうだろう。
13.
よくあるネイティブ環境 » (よく見る順(私調べ)) » HomeBrew
➤ バージョン指定が困難 » XAMPP(等のFatpack) ➤ 切り替えが面倒 » System Apache + System PHP ➤ Ver固定 » 大正義 php-build ➤ ビルドたのしい!!✌('ω')✌ ガンガンビルド!最新バージョンでたら速攻でビル ド!
14.
ビルド つらい
15.
» 「ビルドします、失敗したら修正してビルドします」 » (特にエルキャピは)ハイパー面倒 »
SystemのOpenSSL、BrewのOpenSSL、 LibreSSL、libxml2… » ApacheのOpenSSLとPHPのOpenSSLがミスマッチ でFail » mod_php生成が軽く知恵の輪 » 「大変では?」「趣味です、いや…人生…」 » (今日はビルドの話はしません)
16.
ということで » OSX上でApache+PHP環境をつくることを諦めてい る人も多いのではないでしょうか?
17.
本題 » Apache +
PHPを » PHPのBuilt-in Serverみたいに » 気軽に使いたい
18.
Apacheの面倒さ(BS比) » 「シュッって起動してシュッと終了してほしい」 » 終了を忘れていてイラッっとする(短気) »
エラーログ(ファイル)確認のtailが面倒 » confを差し替えrestart面倒 » php ver、Port、DocRoot等の切り替え… » 開発用の秘伝の.htaccessをいれて.gitignore…
19.
ということで » apachehereというのをでっちあげました!!! » $
apachehere ってするとApacheがBSっぽく起動する! » github.com/uzulla/apachehere » El capitanならSystemのApacheをつかえます (が、私は野良ビルド派)
20.
例
21.
22.
BSっぽい!!
23.
PHPerなので勿論PHP対応 ! » DocRootにかかっているphpenvのglobal、localで 指定されたversionのphp-cgiが利用され(るはず| ます)!便利!!!! »
-mでphpenv以下のmod_phpもつかえます » with-apxs2付でビルドし、libphpX.soを確保 » 作り方は「phpenv libphp7.so ビルド」で検索 » (ただしつらいので、php-cgiでいいのでは…
24.
その他オプション Usage: apachehere [-t
document_root] [-b bind_ip] : default 127.0.0.1 [-p port_num] : default 8080 [-m] : use mod_php [-c /path/to/php.ini] [-s /path/to/php/conf.d] » コピーできてないし、とりあえずつくった感が良く解 る » シェルスクリプト力不足(あるいは手抜き)を感じる » 「PHPerなのにbash scriptなの?」
25.
以上!
26.
まとめと展望 » こういう事やると使い道のない知識が増えます » 冷静な皆さんはVMかXAMPP使いましょう »
System Apache+PHPのConfくらい書きたい » 意地でrbenvっぽくしたかったけど、むずい… » ちなみにWordPressの案件失注しましたので モチベーションは直近無い ! » 「あれ?…LAMPのMがたりないよ?」
27.
M is Mysql »
そうだよね、Mysqlもないとね! » github.com/uzulla/mysql_data_setup.php » (BSほど気楽ではないが)案件毎にシュッっと MysqlのData dirをつくります » 「なぜPHPで作ったし」「PHPerだからしかたない よね」 » demoは省略
28.
ありがとうございました » github.com/uzulla/apachehere » github.com/uzulla/mysql_data_setup.php »
時間があまれば、以下余談
29.
Apacheの話
30.
フォアグラウンドで動かせる $ httpd -DFOREGROUND »
-DFOREGROUND » 起動中が一目瞭然、^Cで終了、便利! » そのままではログは依然としてログファイルにでて不 便
31.
ログはSTDOUTに出せる ErrorLog /dev/stdout CustomLog /dev/stdout
combined » Builtin Serverっぽくなる » FYI: combinedに拘らないほうが見やすい LogFormat "%t %h [%>s]: %U%q" php_bs_style CustomLog /dev/stdout php_bs_style
32.
IfDefineで条件分岐できる » argの-DHOGEで、<IfDefine HOGE>で条件分岐できる »
!で否定もできる <IfDefine USE_PHP> <IfDefine USE_MOD_PHP> ∼ </IfDefine> <IfDefine !USE_MOD_PHP> ∼ </IFDefine> </IfDefine>
33.
httpd.confをもっと動的に » httpd.conf は環境変数が使える ServerName
${BIND_IP}:${LISTEN_PORT} ∼ DocumentRoot ${DOC_ROOT} <Directory ${DOC_ROOT} > ∼ </Directory> » cwdをDocRootに指定すれば、BSっぽくなる
34.
System Apacheのつらさ » Apacheはconfigure次第でデフォルトが色々変わる »
「/usr,/etc,/varにバラバラで入るの誰得??」 » logs/がどこなのやら » pidがどこに出るのやら » mutexが∼ » moduleの場所が∼ » なので、prefixだけつけた野良ビルドが楽!!
35.
mod_phpとphp(-cgi) » 本番環境ではmod_phpが普通だがビルドがめんどう (Apacheがな…) » php-cgiはphp-buildで普通にビルドされる (mod_actionと組み合わせ) »
この二つ、mod_rewrite設定次第で挙動が… » [QSA]とか… » (この他に実行ファイルとしてPHPをかいて、cgiと して実行する方法もあるが、Shebangがキモい)
Jetzt herunterladen