一.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啟動(dòng)(nginx安裝目錄下-/usr/sbin/)
?systemctl start nginx.service
ps:一些其它nginx相關(guān)命令:
nginx相關(guān)配置文件:
??默認(rèn)的配置文件在 /etc/nginx 路徑下秘噪,使用該配置已經(jīng)可以正確地運(yùn)行nginx竿奏;
??如需要自定義今艺,修改其下的?nginx.conf 等文件即可;
在瀏覽器地址欄中輸入部署nginx環(huán)境的機(jī)器的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包
(安裝這個(gè)包后饼齿,會(huì)獲得兩個(gè)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
(很多時(shí)候mysql無法用啟動(dòng),是因?yàn)閙ysql的擁有者是root,而mysql是用mysql用戶身份執(zhí)行當(dāng)然寫不進(jìn)去了缕溉,是系統(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擴(kuò)展
?php70w-mysql.x8664? ?mysql擴(kuò)展(作為依賴同時(shí)安裝 php70w-pdo.x8664)(若無此擴(kuò)展 使用 yum?list?|?grep?mysql ?查詢可用擴(kuò)展的版本)
?php70w-gd.x86_64? GD庫,是php處理圖形的擴(kuò)展庫证鸥,GD庫提供了一系列用來處理圖片的API僚楞,使用GD庫可以處理圖片,或者生成圖片枉层。
?php70w-ldap.x86_64? "輕量級目錄訪問協(xié)議"泉褐,是一個(gè)用于訪問"目錄服務(wù)器"(Directory Servers)的協(xié)議;
php70w-mbstring.x86_64? ? mbstring擴(kuò)展庫用于處理多字節(jié)字符串,PHP內(nèi)置的字符串長度函數(shù)strlen無法正確處理中文字符串,它得到的只是字符串所占的字節(jié)數(shù)鸟蜡。對于GB2312的中文編碼膜赃,strlen得到的值是漢字個(gè)數(shù)的2倍,而對于UTF-8編碼的中文揉忘,就是1~3倍的差異了跳座。采用mb_strlen函數(shù)可以較好地解決這個(gè)問題。
php70w-mcrypt.x86_64? ? Mcrypt擴(kuò)展庫可以實(shí)現(xiàn)加密解密功能泣矛,就是既能將明文加密疲眷,也可以密文還原。
5.安裝PHP FPM
??yum install php70w-fpm
關(guān)于 php-fpm
??PHP-FPM其實(shí)是PHP源代碼的一個(gè)補(bǔ)丁您朽,旨在將FastCGI進(jìn)程管理整合進(jìn)PHP包中狂丝。必須將它patch到你的PHP源代碼中,在編譯安裝PHP后才可以使用。
??現(xiàn)在我們可以在最新的PHP 5.3.2的源碼樹里下載得到直接整合了PHP-FPM的分支美侦,據(jù)說下個(gè)版本會(huì)融合進(jìn)PHP的主分支去产舞。相對Spawn-FCGI,PHP-FPM在CPU和內(nèi)存方面的控制都更勝一籌菠剩,而且前者很容易崩潰易猫,必須用crontab進(jìn)行監(jiān)控,而PHP-FPM則沒有這種煩惱具壮。
??PHP5.3.3已經(jīng)集成php-fpm了准颓,不再是第三方的包了。PHP-FPM提供了更好的PHP進(jìn)程管理方式棺妓,可以有效控制內(nèi)存和進(jìn)程攘已、可以平滑重載PHP配置,比spawn-fcgi具有更多優(yōu)點(diǎn)怜跑,所以被PHP官方收錄了样勃。在./configure的時(shí)候帶 –enable-fpm參數(shù)即可開啟PHP-FPM。
使用PHP-FPM來控制PHP-CGI的FastCGI進(jìn)程
第四步:配置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.啟動(dòng)nginx服務(wù):
systemctl start nginx.service
??如需設(shè)置開機(jī)自啟使用以下命令:
sudo systemctl enable nginx.service
??查看啟動(dòng)狀態(tài):
systemctl status nginx?
看到以下字眼說明啟動(dòng)成功峡眶!
?Active: active (running) since 六 2016-11-19 13:40:04 CST; 50min ago
4.啟動(dòng)PHP-FPM:
systemctl start php-fpm.service
?
?如需設(shè)置開機(jī)自啟試用以下命令:
sudo systemctl enable php-fpm.service
??查看啟動(dòng)狀態(tài):
systemctl status php-fpm.service
看到以下字眼說明啟動(dòng)成功!
?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
此命令會(huì)在 /etc/sysconfig/下生成一個(gè)iptables文件??
2:在文件上添加對應(yīng)的端口既可
關(guān)于Selinux?
更換root目錄的時(shí)候出現(xiàn)個(gè)問題? Nginx配置沒問題但更換過后就是訪問不了,error.log報(bào)權(quán)限錯(cuò)誤俊庇,? 給了777權(quán)限還是不行
需要把Selinux 關(guān)掉? 狮暑, /usr/sbin/sestatus? 查看它的運(yùn)行狀態(tài)? ,?vim /etc/selinux/config 去配置文件刪掉
安裝redis擴(kuò)展
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