安裝Vagrant和Virtualbox. 這個很少說, 安裝完成兩個軟件後, 在一個空閒的硬盤分區中php
mkdir ubuntu_lnmp vagrant init ubuntu/trusty64
打開vagrantfile打開這兩個配置html
config.vm.network "private_network", ip: 「192.168.10.10" config.vm.provider "virtualbox" do |vb| # Display the VirtualBox GUI when booting the machine # vb.gui = true # Customize the amount of memory on the VM: vb.memory = "1024" end
vagrant up等待安裝 vagrant ssh的鏈接用戶名和密碼都是vagrantmysql
vagrant環境搞定nginx
sudo apt-get update
安裝nginxgit
sudo apt-get install nginx
安裝Mysql請設置密碼, 在遠程鏈接時候, 能夠使用SSH方式鏈接, ssh的用戶名和密碼都是vagrantsql
sudo apt-get install mysql-server mysql-client libmysqlclient-dev
安裝Git版本控制json
sudo apt-get install git
安裝PHP以及相關模塊ubuntu
sudo apt-get install php5-fpm php5-mysql php5-cli php5-gd php5-memcache php5-memcached php5-json php5-mcrypt php5-curl php-pear build-essential php5-dev -y sudo pecl install xdebug -y sudo php5enmod json sudo php5enmod mcrypt
刪除/usr/share/nginx/htmlssh
sudo ln -s /vagrant /usr/share/nginx/html
注意: 這裏的 /vagrant 目錄其實就是你以前建立的 ubuntu_lnmp 目錄, 你在本地修改 ubuntu_lnmp 虛擬機中 /vagrant 目錄也會同步curl
修改/etc/php5/fpm/php.ini
cgi.fix_pathinfo = 0 display_errors = On date.timezone = PRC
/etc/nginx/sites-available/default 修改
server { ... //找到index index index.php index.html index.htm ... location ~ \.php { # fastcgi_split_path_info ^(.+\.php)(/.+)$; # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # # # With php5-cgi alone: fastcgi_pass 127.0.0.1:9000; # # With php5-fpm: # fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; set $pathinfo ""; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; } }
這樣是爲了支持PHP的PHPINFO. 其實不是很難理解, fastcgi_param 配置項名稱會出如今$_SERVER[配置項名稱]中
修改nginx的用戶名稱
sudo vi /etc/nginx/nginx.conf
找到user www-data; 改成 user vagrant;
修改配置php-fpm配置
sudo vi /etc/php5/fpm/pool.d/www.conf
找到如下配置項目修改
user = vagrant group = vagrant ;listen = /var/run/php5-fpm.sock 註釋掉 改成 listen = 127.0.0.1:9000 listen.owner = vagrant listen.group = vagrant
個人pm.相關配置
pm.max_children = 1000 pm.start_servers = 25 pm.min_spare_servers = 25 pm.max_spare_servers = 50 pm.max_requests = 1000
爲了防止cli和fpm的php.ini不相同, 能夠講cli的php.ini文件刪除, 而後ln過去一個
sudo rm -rf /etc/php5/cli/php.ini ln -s /etc/php5/fpm/php.ini /etc/php5/cli/php.ini
這樣修改一個配置文件, 就能夠達到兩邊同步了.