php7出了有一段時間了,最近家裏的機器及本身的虛擬機都升級到了php7。準備之後新的東西所有都用php7來寫了。最近想把阿里雲的也升級到php7,而後就開始升級了,如下是一些升級過程。固然也遇到了一些問題,本尊辣麼聰明確定都解決了呀Y(^_^)Y。php
使用yum源安裝比較好管理,就是樣。html
進入/etc/yum.repos.d/
目錄建立一個nginx.repo
文件mysql
cd /etc/yum.repos.d/ vim nginx.repo
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1
yum update
yum install nginx -y
安裝好以後看看版本linux
[root@localhost] # nginx -v nginx version: nginx/1.10.1
打開nginx自啓動nginx
chkconfig nginx on
mysql5.7 據說很強大,你們都說它是一個里程碑... 具體我也不懂...web
wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
rpm -Uvh mysql57-community-release-el6-7.noarch.rpm
打開 mysql-community.repo
看關於mysql的內空,肯定mysql57的enable是打開的redis
vim /etc/yum.repos.d/mysql-community.repo
yum install mysql-community-server
注意版本號!sql
service mysqld start
grep "password" /var/log/mysqld.log
第一行root@localhost
: u6erhYQNju&P 這個就是數據庫的root密碼了數據庫
執行命令:json
mysql_secure_installation
mysql的配製文件默認在 /etc/my.cnf
更多文檔請請問官方網站: Installing MySQL on Linux Using the MySQL Yum Repository
打開mysql自啓動
chkconfig mysqld on
若是以前已經安裝過php的話
yum remove php* php-common
與上面安裝nginx、mysql的方式同樣,先更新yum源而後再安裝yum源
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
vi /etc/yum.repos.d/remi.repo
將[remi]
段中的enabled=0
改成enabled=1
。
vim /etc/yum.repos.d/remi-php70.repo
與remi.repo相似,將[remi-php70]段中的enabled=0改成enabled=1。
掃行命令查看版本若是顯示的是7.x
的話 那就沒問題,固然也能夠直接使用yum install php70
進行安裝
[root@localhost tmp]# yum list php
執行命令如下命令安裝php及一些至關的擴展:
yum install php php-fpm php-cli php-pdo php-mysql php-gd php-bcmath php-xml php-mbstring php-mcrypt php-redis
安裝好以後php -v
, php -m
查看版本及安裝的擴展
php的php.ini配製通常在/etc/php.ini
簡單的修改一些配製:
vim /etc/php.ini date.timezone = Asia/Shanghai upload_max_filesize = 20M post_max_size = 20M display_errors = Off // 生產環境半掉就行了 # 使HTTP Header中不顯示PHP信息把 expose_php = On 修改成 expose_php = Off
重啓php: service php-fpm restart
打開php自啓動
chkconfig php-fpm on
安裝好nginx以後,nginx默認的網站根目錄應該是在/usr/share/nginx/html/
虛擬主機的配製在 /etc/nginx/conf.d
若是要配製新的域名在這裏就能夠了。
默認有一個default.conf
的配製,若是不須要的話能夠刪除。
好比我建立一個 photo.lattecake.com
的網站;
在/etc/nginx/conf.d/
建立文件photo.lattecake.com.conf
內容以下
server { listen 80; server_name photo.lattecake.com; client_max_body_size 10m; root /home/dudulu/website/com-lattecake-photo/web; access_log /var/log/nginx/photo.lattecake.com.access.log main; error_log /var/log/nginx/photo.lattecake.com.error.log; location / { try_files $uri /app.php$is_args$args; index index.html index.htm index.php app.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ ^/(app_dev|config)\.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_index app.php; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; include fastcgi_params; } location ~ ^/app\.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_index app.php; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; include fastcgi_params; internal; } }
由於我通常使用symfony框架寫東西,因此我就按symfony的標準配製了。若是不是請參考其餘資料。
建立日誌文件及分組
touch /var/log/nginx/photo.lattecake.com.ccess.log chown -R nginx.nginx /var/log/nginx/photo.lattecake.com.ccess.log
官網下載composer包就行了
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php --install-dir=/usr/bin --filename=composer php -r "unlink('composer-setup.php');"
執行composer -v
看看,若是有顯示它的相關選項那就表示安裝成功了!
有兩種方式啓用本鏡像服務:
系統全局配置: 即將配置信息添加到 Composer 的全局配置文件 config.json 中
單個項目配置: 將配置信息添加到某個項目的 composer.json 文件中
控制檯(Linux、Mac 用戶)並執行以下命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
進入你的項目,找到composer.json
文件並打開,添加如下信息:
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } }
OK,一切搞定!試一下 composer install 來體驗飛通常的速度吧!