Андрей Степанов “development server for lamp environment”
DESCRIPTION
TRANSCRIPT
Development Server for LAMP Environment
How to set up dedicated development server for team of PHP developers
Using developer’s station
Pros• Always available
Cons• Big time efforts for new team member to set up environment• Environment not consistent• Too complex to use additional software under Windows or Mac
operation systems• Not possible to share results
Using virtual machine
Pros• More-less consistent environment
Cons• Hard to maintain for junior and regular developers• Hard to synchronize environment changes between team• Use resources of developer’s station• Not possible to share results
Using Vagrant
Pros• Consistent environment
Cons• Not of all software can be configured• Additional complexity for developers to support vagrant configuration• Use resources of developer’s machine• Not possible to share results
Using development server
Pros• Consistent environment for everyone• New team member doesn’t required to set up environment• Results can be shared to everyone using company’s DNS (or hosts file)• Ability to work remotely without hard dependency of environment• High available editors VIM, Emacs, Cloud9 IDE
Cons• Single point of failure
FTP based development server
Pros• Simple to set up
Cons• No sandbox• No isolations
Apache2 virtual hosts based development serverPros• Separated by virtual host
Cons • Hard to set up new virtual hosts
Linux users based development serverPros• Sandbox for every user• No restrictions with virtual hosts
Cons• Relatively hard to set up
Mass virtual hosting
URL: http://httpd.apache.org/docs/2.2/vhosts/mass.html
Project URLs: http://<project>.<developer>.dev.example.comMapped path: /home/<developer>/vhosts/<project>
Multiple php5 evnironment
Multiple php5 environment
1. Main apache2 listen 80 port2. Proxy php5x.<project>.<developer>.dev.example.com to
apache2:8x instance
User environment
mod_macro: http://people.apache.org/~fabien/mod_macro
error_logXdebug configurationMysql default user
Links
• http://httpd.apache.org/docs/current/mod/mod_rewrite.html• http://httpd.apache.org/docs/2.2/vhosts/mass.html• http://people.apache.org/~fabien/mod_macro/• http://www.tin.org/bin/man.cgi?section=8&topic=update-rc.d
• mailto:[email protected]