CentOS 是 RHEL (Red Hat Enterprise Linux) 的免費版,因爲紅帽的大力推廣,在國內外非常流行。由於衆多企業和開發者使用,首先要求的是保證穩定,因此 CentOS 下的軟件從不追求最新版本。php
而不少時候咱們不得不用到最新的版本進行一些操做,本文就介紹在 CentOS / RHEL 7.x 下使用 EPEL 以及官網倉庫安裝最新版本的 LEMPhtml
本文全部操做均在 root
用戶下進行,請自行切換至 root
用戶mysql
首先,在開始以前,須要關閉 SELinux,編輯 /etc/sysconfig/selinux
文件,設置參數 SELINUX=disabled
而後 reboot
重啓機器linux
EPEL 指的是 Extra Packages for Enterprise Linux,由 Fedora 社區維護,專門給 RHEL 系的操做系統使用,而且相對於 CentOS 默認的倉庫,更新比較快。nginx
Remi 是基於 EPEL 的針對 PHP 打包的倉庫,更新也很及時。sql
若是系統沒有精簡,自帶 Extras 倉庫,那麼只要運行這個命令便可:數據庫
yum install epel-release
不少 VPS 商家的系統都是精簡的,因此咱們能夠直接安裝:ubuntu
yum install http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
而後安裝 Remi 的倉庫vim
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
接着更新一下系統而且安裝一些必要的軟件centos
yum update yum install curl vim wget sudo unzip yum-utils
安裝 Nginx 有兩種方式, EPEL 已自帶社區打包好的 Nginx ,截至目前版本是 1.10.2 更新不算快,可是夠用,安裝很簡單,直接運行如下命令:
yum install nginx
還有一種方式是用 Nginx 官方的倉庫,首先導入 Nginx 的 key
rpm --import http://nginx.org/keys/nginx_signing.key
而後新建 /etc/yum.repos.d/nginx.repo
cat >> /etc/yum.repos.d/nginx.repo << EOF [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/\$basearch/ gpgcheck=1 enabled=1 EOF
若是是 RHEL ,把文件裏的的 centos
改爲 rhel
便可,接着就是安裝 Nginx:
yum install nginx
Remi 一直在維護 PHP 的大多數流行版本,從 PHP 5.4 到最新的 PHP 7.1,咱們可使用官網的這個小工具來挑選本身須要的版本,下面以 PHP 7.0.x 爲例
指定 PHP 包的版本
yum-config-manager --enable remi-php70
更新系統
yum update
安裝一些基本的能支持 WordPress 的 PHP 包:
yum install php-fpm php-mysql php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc php-zip
修改一下 /etc/php.ini
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php.ini
Nginx 參考配置文件 /etc/nginx/conf.d/example.com.conf
server { listen 80; listen [::]:80; # 指定網站目錄,可根據本身狀況更換,建議放在 /var/www 目錄下 root /var/www/example.com; index index.php index.html index.htm; # 默認第一個域名,替換 example.com 爲您的域名 server_name example.com; location / { try_files $uri $uri/ =404; } # 開啓 PHP7.0-fpm 模式 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
而後重啓 PHP 和 Nginx
systemctl restart php-fpm systemctl restart nginx
再次安利你們用 Percona Server 代替 MySQL 或 Mariadb
按照官網的教程,直接增長官網的倉庫
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
而後安裝
yum install Percona-Server-server-57
根據他們本身的說法,爲了安全考慮,安裝過程當中是不須要你輸入 MySQL root 密碼的,咱們直接啓動 MySQL:
systemctl start mysql
而後 root 密碼就會放在日誌裏了
[root@centos ~]# cat /var/log/mysqld.log | grep "temporary password" 2017-05-06T07:10:33.891810Z 1 [Note] A temporary password is generated for root@localhost: #Q?raSTwT1qu
這裏 #Q?raSTwT1qu
就是他隨機給你生成的 MySQL root 密碼,接下來就能夠經過 MySQL 語法的命令進行一系列數據庫操做了,這裏再也不重複,詳細能夠參考《Debian 8.x 「jessie」 使用 Dotdeb 安裝最新版本 LEMP / LNMP》和《Ubuntu Server 16.04.x (Xenial Xerus) 安裝 LEMP / LNMP 教程》