PHP Project

development with Vagrant
linux, Nginx, PHP-FPM, Mysql
Vagrant install
portable development environments
$ mkdir beykent_sample
$ cd beykent_sample
$ vagrant init precise32 http...
Mysql install
open-source relational database management system
$ sudo apt-get update
$ sudo apt-get install mysql-server ...
Nginx install
Nginx is an open source reverse proxy server for HTTP, HTTPS,
SMTP, POP3, and IMAP protocols, as well as a l...
PHP-FPM

PHP is the most popular server-side language and it requires
minimal set-up

$ sudo apt-get install php5-fpm
!

$...
php fpm configration



$ sudo vim /etc/php5/fpm/php.ini
Make the following changes
cgi.fix_pathinfo=0
max_execution_time = ...
PHP Popular Bundles install
Db adapters, caching adapters, etc…
$ sudo apt-get install php5-mysql php5-curl php5-gd
php5-i...
Nginx Configuration

$ sudo vim /etc/nginx/sites-available/default
server {
listen 80;
root /usr/share/nginx/www;
index ind...
T
est
sudo nano /usr/share/nginx/www/test.php
<?php echo “hello world”; ?>
Upcoming SlideShare
Loading in …5
×

PHP Project development with Vagrant

8,857 views

Published on

PHP Project development with Vagrant

Published in: Education, Technology

PHP Project development with Vagrant

  1. 1. PHP Project development with Vagrant linux, Nginx, PHP-FPM, Mysql
  2. 2. Vagrant install portable development environments $ mkdir beykent_sample $ cd beykent_sample $ vagrant init precise32 http://files.vagrantup.com/precise32.box ! Open the Vagrantfile and uncomment line 20: # localhost:8080, Quest machine access port 80 # config.vm.network :forwarded_port, guest: 80, host: 8080 ! Start box $ vagrant up ! ssh into the ssh $ vagrant ssh
  3. 3. Mysql install open-source relational database management system $ sudo apt-get update $ sudo apt-get install mysql-server mysql-client 
 set root password
  4. 4. Nginx install Nginx is an open source reverse proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache, and a web server $ sudo apt-get install nginx $ sudo servive nginx start
  5. 5. PHP-FPM PHP is the most popular server-side language and it requires minimal set-up $ sudo apt-get install php5-fpm ! $ sudo vim /etc/php5/fpm/pool.d/www.conf ! Make the following changes listen = /tmp/php5-fpm.sock ! $ sudo service php5-fpm restart
  6. 6. php fpm configration 
 $ sudo vim /etc/php5/fpm/php.ini Make the following changes cgi.fix_pathinfo=0 max_execution_time = 90 display_errors = On post_max_size = 16M upload_max_filesize = 16M default_socket_timeout = 90
  7. 7. PHP Popular Bundles install Db adapters, caching adapters, etc… $ sudo apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5- mcrypt php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5xmlrpc php5-xsl php5-xcache service php5-fpm restart
  8. 8. Nginx Configuration $ sudo vim /etc/nginx/sites-available/default server { listen 80; root /usr/share/nginx/www; index index.php index.html index.html; server_name localhost; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { try_files $uri $uri/ /index.html; } location ~ .php$ { try_files $uri =404; fastcgi_split_path_info ^(.+.php)(/.+)$; fastcgi_pass unix:/tmp/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
  9. 9. T est sudo nano /usr/share/nginx/www/test.php <?php echo “hello world”; ?>

×