centos7.4 搭建lnmp

系統:阿里雲 centos7.4php

Php:PHP 7.1.13 (cli) html

Mysql:mysql5.7python

Nginx:nginx/1.12.2mysql

 

1、更新centos7 yum源

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
wget http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all yum makecache yum -y update yum -y install gcc* #安卓gcc組件 yum -y install vim

 

#下載yum源
wget http://mirrors.163.com/centos/7.2.1511/os/x86_64/Packages/yum-3.4.3-132.el7.centos.0.1.noarch.rpm
wget http://mirrors.163.com/centos/7.2.1511/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm   
wget http://mirrors.163.com/centos/7.2.1511/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm 
wget http://mirrors.163.com/centos/7.2.1511/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-34.el7.noarch.rpm 

#安裝下載的rpm包
rpm -ivh *.rpm 


#建立文件/etc/yum.repos.d/rhel-debuginfo.repo並寫入
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.163.com/centos/7.2.1511/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/7.2.1511/os/x86_64/RPM-GPG-KEY-CentOS-7


#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://mirrors.163.com/centos/7.2.1511/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/7.2.1511/os/x86_64/RPM-GPG-KEY-CentOS-7


[extras]
name=CentOS-$releasever - Extras
baseurl=http://mirrors.163.com/centos/7.2.1511/extras//$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/7.2.1511/os/x86_64/RPM-GPG-KEY-CentOS-7

[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://mirrors.163.com/centos/7.2.1511/centosplus//$basearch/
gpgcheck=1
enabled=0


yum clean all 
yum update
#安裝 epel 源
yum install epel-release

 

 

 

二 、firwall 替換成iptables

//關閉默認防火牆
#中止firewall
systemctl stop firewalld.service 
#禁止firewall開機啓動
systemctl disable firewalld.service 
#查看默認防火牆狀態(關閉後顯示notrunning,開啓後顯示running)
firewall-cmd --state 
//安裝iptables
yum install  -y iptables  iptables-services
// 查看iptables配置文件
iptables -L  
// 配置裏面的規則 -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 
vim /etc/sysconfig/iptables
#添加
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
#開啓
service iptables start 
#設置防火牆開機啓動
systemctl enable iptables.service 
#查看iptables狀態
service iptables status      
#iptables服務重啓
service iptables restart     
#iptables服務禁用 
service iptables stop    

3、安裝Nginx

#安裝nginx源【centos7.4 yum安裝默認的Nginx爲1.12.2】
yum localinstall http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm  
#安裝
yum install nginx
service nginx start  
 
在瀏覽器輸入ip查看
 

4、安裝mysql

#安裝mysql源  
yum localinstall  http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm  
#安裝mysql
yum install mysql-community-server  
#安裝mysql的開發包
yum install mysql-community-devel  
#啓動mysql
service mysqld start  
#查看mysql啓動狀態
service mysqld status 
#獲取mysql默認密碼

[root@localhost /]# grep 'temporary password' /var/log/mysqld.log
2018-03-30T06:49:03.200170Z 1 [Note] A temporary password is generated for root@localhost: g0Zb#ku;dOh&nginx

 

5、安裝php

資料來源   https://blog.csdn.net/river131/article/details/53838640
rpm 安裝 Php7 相應的 yum源
    CentOS/RHEL 7.x:
    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
安裝PHP7.2
    yum install php72w php72w-opcache
 安裝依賴
 yum install php72w php72w-bcmath php72w-cli php72w-common php72w-dba php72w-devel php72w-embedded php72w-enchant php72w-fpm php72w-gd php72w-imap php72w-interbase php72w-intl php72w-ldap php72w-mbstring php72w-mcrypt php72w-mysql php72w-mysqlnd php72w-odbc php72w-opcache php72w-pdo php72w-pdo_dblib php72w-pear php72w-pecl-apcu php72w-pecl-imagick php72w-pecl-xdebug php72w-pgsql php72w-phpdbg php72w-process php72w-pspell php72w-recode php72w-snmp php72w-soap php72w-tidy php72w-xml php72w-xmlrpc

若是是Apache + PHP的話必須使用 PHPIniDir 指定php5的配置文件php.ini的路徑
PHPINIDir /etc/php.ini

 

6、配置Nginx支持PHP

 

#添加用戶組、用戶
groupadd www #添加mysql組
useradd -g www www -s /bin/false #添加的用戶直接登陸系統

#直接使用編譯後未經優化處理的配置
cp /usr/local/src/php-7.1.13/php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp /usr/local/src/php-7.1.13/sapi/fpm/php-fpm.service /lib/systemd/system/php-fpm.service

#配置PHP文件
vi /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php-fpm.conf
vi /usr/local/php/etc/php-fpm.d/www.conf

######測試配置
/usr/local/php/sbin/php-fpm -t
######修改文件權限
chmod 745 /lib/systemd/system/php-fpm.service   
######設置爲開機啓動
systemctl enable php-fpm.service
######啓動php-fpm
systemctl start php-fpm.service

#配置域名
vim /etc/nginx/conf.d/vhost.conf
#添加

server {
    listen       80;
    server_name  www.xxx.com;
    access_log  /var/log/nginx/host.access.log  main;
    location / {
        root   /www/;
        index  index.html index.htm index.php ;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    location ~* \.php$ {
        root           /www/;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
    location ~ /\.ht {
        deny  all;
    }
}

 

 nginx報403web

1、缺乏index.html或者index.php文件,
2、權限問題,若是nginx沒有web目錄的操做權限,也會出現403錯誤。
3、SELinux設置爲開啓狀態(enabled)的緣由

 

 

 

 

  

 

 

 

 

文獻參考:sql

    http://blog.csdn.net/u012027999/article/details/73744032,vim

    http://blog.csdn.net/trh0123/article/details/53899610?utm_source=itdadao&utm_medium=referral,centos

    https://www.cnblogs.com/zzh10086130/p/6440378.html,api

    https://www.cnblogs.com/zzh10086130/p/6440378.html

相關文章
相關標籤/搜索