一.nginx安裝
1.下載對應(yīng)當(dāng)前系統(tǒng)版本的nginx包(package)
??wget?http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2.建立nginx的yum倉庫(默認(rèn)yum是沒有nginx的)
??rpm -ivh?nginx-release-centos-7-0.el7.ngx.noarch.rpm
3.下載并安裝nginx
??yum install nginx
4.nginx啟動(nginx安裝目錄下-/usr/sbin/)
?systemctl start nginx.service
ps:一些其它nginx相關(guān)命令:
nginx相關(guān)配置文件:
??默認(rèn)的配置文件在 /etc/nginx 路徑下,使用該配置已經(jīng)可以正確地運行nginx;
??如需要自定義,修改其下的?nginx.conf 等文件即可;
在瀏覽器地址欄中輸入部署nginx環(huán)境的機器的IP,如果一切正常,應(yīng)該能看到如下字樣的內(nèi)容。
Welcome to nginx!
If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.
For online documentation and support please refer tonginx.org.Commercial support is available atnginx.com.
Thank you for using nginx.
第二步:MYSQL安裝
1.先下載mysql的repo源;相關(guān)命令:
?wget?http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2.安裝mysql-community-release-el7-5.noarch.rpm包
(安裝這個包后,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo)
??rpm -ivh mysql-community-release-el7-5.noarch.rpm
3.安裝MYSQL
??sudo yum install mysql-server
4.重置密碼
??更改用戶權(quán)限:
sudo chown -R root:root /var/lib/mysql
(很多時候mysql無法用啟動,是因為mysql的擁有者是root,而mysql是用mysql用戶身份執(zhí)行當(dāng)然寫不進去了,是系統(tǒng)權(quán)限的問題
嘗試使用chown -R mysql:mysql /var/lib/mysql/??)
??重啟服務(wù):
systemctl restart mysql.service
??登錄,并修改密碼:
mysql -u root
? mysql > use mysql;
? mysql > updateusersetpassword=password(‘123456‘) whereuser=‘root‘;
? mysql > exit;
第三步:安裝php
1.查看當(dāng)前安裝的php版本( yum?list?installed?|?grep?php)
??如果存在php安裝包先刪除之前版本 ?用yum?remove 移除 php相關(guān)的包
2.rpm 安裝 Php7 相應(yīng)的 yum源
? rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
? rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
其他 高版本
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm?
3.安裝php7.0
yum install php70w
4.安裝php擴展
?php70w-mysql.x8664? ?mysql擴展(作為依賴同時安裝 php70w-pdo.x8664)(若無此擴展 使用 yum?list?|?grep?mysql ?查詢可用擴展的版本)
?php70w-gd.x86_64? GD庫,是php處理圖形的擴展庫,GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。
?php70w-ldap.x86_64? "輕量級目錄訪問協(xié)議",是一個用于訪問"目錄服務(wù)器"(Directory Servers)的協(xié)議;
php70w-mbstring.x86_64? ? mbstring擴展庫用于處理多字節(jié)字符串,PHP內(nèi)置的字符串長度函數(shù)strlen無法正確處理中文字符串,它得到的只是字符串所占的字節(jié)數(shù)。對于GB2312的中文編碼,strlen得到的值是漢字個數(shù)的2倍,而對于UTF-8編碼的中文,就是1~3倍的差異了。采用mb_strlen函數(shù)可以較好地解決這個問題。
php70w-mcrypt.x86_64? ? Mcrypt擴展庫可以實現(xiàn)加密解密功能,就是既能將明文加密,也可以密文還原。
5.安裝PHP FPM
??yum install php70w-fpm
關(guān)于 php-fpm
??PHP-FPM其實是PHP源代碼的一個補丁,旨在將FastCGI進程管理整合進PHP包中。必須將它patch到你的PHP源代碼中,在編譯安裝PHP后才可以使用。
??現(xiàn)在我們可以在最新的PHP 5.3.2的源碼樹里下載得到直接整合了PHP-FPM的分支,據(jù)說下個版本會融合進PHP的主分支去。相對Spawn-FCGI,PHP-FPM在CPU和內(nèi)存方面的控制都更勝一籌,而且前者很容易崩潰,必須用crontab進行監(jiān)控,而PHP-FPM則沒有這種煩惱。
??PHP5.3.3已經(jīng)集成php-fpm了,不再是第三方的包了。PHP-FPM提供了更好的PHP進程管理方式,可以有效控制內(nèi)存和進程、可以平滑重載PHP配置,比spawn-fcgi具有更多優(yōu)點,所以被PHP官方收錄了。在./configure的時候帶 –enable-fpm參數(shù)即可開啟PHP-FPM。
使用PHP-FPM來控制PHP-CGI的FastCGI進程
第四步:配置nginx
修改配置文件之前記得備份
1.nginx配置文件位置:(/etc/nginx/conf.d/default.conf)
??修改web root目錄(如果沒有需求也可以不用修改,使用默認(rèn)即可):
root /wwwdata/html;
??配置php解析
? 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;
? }
2.php-fpm配置文件位置:(/etc/php-fpm.d/www.conf)
??修改
user =nginx
??group=nginx
3.啟動nginx服務(wù):
systemctl start nginx.service
??如需設(shè)置開機自啟使用以下命令:
sudo systemctl enable nginx.service
??查看啟動狀態(tài):
systemctl status nginx?
看到以下字眼說明啟動成功!
?Active: active (running) since 六 2016-11-19 13:40:04 CST; 50min ago
4.啟動PHP-FPM:
systemctl start php-fpm.service
?
?如需設(shè)置開機自啟試用以下命令:
sudo systemctl enable php-fpm.service
??查看啟動狀態(tài):
systemctl status php-fpm.service
看到以下字眼說明啟動成功!
?Active: active (running) since 六 2016-11-19 14:14:33 CST; 18min ago
至此,php+mysql+nginx 環(huán)境搭建完成!
配置防火墻 端口?
1:先安裝iptables-services服務(wù)? 通過servvice方式操作防火墻
yum install iptables-services
此命令會在 /etc/sysconfig/下生成一個iptables文件??
2:在文件上添加對應(yīng)的端口既可
關(guān)于Selinux?
更換root目錄的時候出現(xiàn)個問題? Nginx配置沒問題但更換過后就是訪問不了,error.log報權(quán)限錯誤,? 給了777權(quán)限還是不行
需要把Selinux 關(guān)掉? , /usr/sbin/sestatus? 查看它的運行狀態(tài)? ,?vim /etc/selinux/config 去配置文件刪掉
安裝redis擴展
1、下載PHPRedis? git clone?https://github.com/nicolasff/phpredis
2、/usr/local/php7/bin/phpize #找不到phpize的路徑可用whereis命令查看:whereis phpize 得到路徑
3、./configure --with-php-config=/usr/local/php/bin/php-config #此處為php-config的路徑,可用whereis php-config查看路徑
4、make && make install