【零基礎】搞定LAMP(linux、apache、mysql、php)環境安裝圖文教程(基於centos7)


一、前言

  LAMP即:Linux、Apache、Mysql、Php,也就是在linux系統下運行php網站代碼,使用的數據庫是mysql、web服務軟件是apache。之所以存在LAMP這種說法,倒不是一定要如此搭配方行,只是mysql、apache比較常用而且免費,所以linux下的php網站就使用LAMP這樣的搭配。

二、環境准備

  1、centos7,我使用的是centos7(64位)最小系統,ISO包上官網下載即可,找不到官網的到下面鏈接中隨便下一個就可以了

    http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso

  2、apache,稍后使用yum安裝最新版即可

  3、mysql,當前最新版是mysql8.0了,需要到官網下載yum源而后通過yum源安裝即可(文末附下載鏈接),也可以直接用wget獲取(后續有)

  4、php,稍后使用yum安裝最新版即可

三、centos准備

  首先我們要讓centos准備好環境,很多童鞋看網上隨便找來的教程整了半天就是不能正常運行,常見原因就是漏了這一步。

  1、關閉防火牆

[root@localhost ~]# systemctl stop firewalld.service

  使防火牆開機不啟動(避免系統重啟后防火牆又生效)
[root@localhost ~]# systemctl disable firewalld.service

  2、關閉selinux

[root@localhost ~]# setenforce 0
setenforce: SELinux is disabled

  修改selinux配置文件使其開機不啟動

[root@localhost ~]# vi /etc/sysconfig/selinux

  //將“SELINUX=enforcing”修改為“SELINUX=disabled”

  關閉防火牆和selinux后centos就准備好了,因為是測試環境嘛,所以這兩個都關閉了,如果在生產環境可別直接關了,還是要設置下的。

四、安裝apache

  apache安裝非常簡單,使用下面的指令即可

[root@localhost ~]# yum install -y httpd

  安裝好以后需要修改下配置文件使apache支持php

[root@localhost ~]# vi /etc/httpd/conf/httpd.conf

  //在“DirectoryIndex index.html”后面添加“index.php”

 

  //在“AddType application/x-gzip .gz .tgz”后面添加一行“AddType application/x-httpd-php .ph”

  //最后啟動apache

[root@localhost ~]# systemctl start httpd

  注意:有些童鞋可能會遇到apache莫名其妙就自己掛了,可能是你內存不夠,增加點虛擬內存即可

  至此apache就安裝和准備好了

五、安裝mysql

  1、將前面說到的mysql yum安裝源(文末附下載鏈接)放到centos任意目錄,直接使用yum安裝。

  //也可以使用wget獲取該rpm包

[root@localhost ~]# wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm

  //安裝yum源

[root@localhost ~]# yum -y install mysql80-community-release-el7-3.noarch.rpm

  //使用yum安裝mysql

[root@localhost ~]# yum -y install mysql-community-server

  注意:一般來說你會發現mysql-community-server-8.0.16-2.el7.x86_64.rpm這個包下載會很慢,所以這里我們提供百度雲盤直接下載這個包(文末附下載)。將下載好的rpm包放入目錄“/var/cache/yum/x86_64/7/mysql80-community/packages/”(不同系統可能不一樣,你可以搜索mysql80-community找到目錄位置),再次執行安裝指令即可。

  2、配置mysql

  //啟動mysql

[root@localhost ~]# systemctl start mysqld.service

  //檢查一下運行狀態

[root@localhost ~]# systemctl status mysqld.service

  注意:對於一些新手,可能會遇到mysql莫名其妙就自己關閉的情況,可能是你的內存不夠啦。linux內存不足的情況會自動關閉一些占用內存較多的應用,所以物理內存確實不足的情況可以增加點虛擬內存。

   //獲取默認密碼(mysql8.0自帶默認密碼,必須使用默認密碼登錄后方可修改密碼)

[root@localhost ~]# grep "password" /var/log/mysqld.log

  我這里的默認密碼是“;>HGA4LKdjlj”

  //使用默認密碼進入數據庫

[root@localhost ~]# mysql -u root -p

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root@123456';

Query OK, 0 rows affected (0.01 sec)

  注意:進入mysql后每條指令后必須加分號“;”,否則指令不會執行

  注意:mysql8.0要求密碼必須有一定復雜度,必須包含大小寫字母、數字、特殊字符,長度也不能太短,這里我配置的密碼就是Root@123456

  注意:'root'@'localhost'含義是使用本地登錄的root用戶(一般建議本機登錄和遠程登錄用戶名、密碼不要一樣),如果要從外部設備訪問root用戶還需要做下面的設置

  //設置root遠程訪問(如果不從外部訪問就不用此配置)

mysql> create user 'root'@'%' identified by 'Root@123456';
Query OK, 0 rows affected (0.01 sec)

  //為遠程root用戶分配訪問權限

mysql> grant all on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.00 sec)

  注意:此處很多老的教程使用指令“grant all privileges on *.* to 'root'@'%' identified by 'Root@123456' with grant option;”,但是會報錯“ERROR 1064 (42000): You have an error in your SQL syntax;check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'Root@123456'' at line 1”

  原因是老版本使用權限修改指令可以自動創建用戶(需要注意“root@%”與"root@localhost"是兩個用戶,便於使用不同密碼),而新版本需要手動創建用戶,然后向其分配權限

  注意: *.* 表明所有數據庫的所有表,可以通過此設置限制用戶的訪問(如new.abc就是new數據庫的abc表)

  //更新權限表使配置生效

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

  //退出數據庫

mysql> exit;
Bye

  //修改字符編碼為utf-8(中文世界一般使用utf-8編碼防止中文亂碼)

[root@localhost ~]# vi /etc/my.cnf

  //在[mysqld]前面添加:

[client]
default-character-set=utf8

  //在文件末尾添加:

character-set-server=utf8
collation-server=utf8_general_ci

 

  //保存后重啟數據庫即可

[root@localhost ~]# systemctl restart mysqld.service

  至此,數據庫安裝完畢,而且我們分別設置了本地登錄和遠程登錄的密碼。

六、安裝php

  php安裝非常簡單,下面兩個指令分別安裝了php、php-mysql支持包、php常用擴展包:

[root@localhost ~]# yum install -y php php-mysql

[root@localhost ~]# yum install -y php-gd  php-xml  php-process php-mbstring php-bcmath

七、測試

  到apache網站代碼目錄中新建index.php文件

[root@localhost ~]# vi /var/www/html/index.php

  並輸入下面的代碼(此段代碼的作用是輸出php的信息):

<?php phpinfo(); ?>

  保存后就可以試試訪問你新建的網站了

八、更多資料

  除了前面說的mysql安裝相關的兩個rpm文件,我們還准備了一些LAMP調優相關資料,關注公眾號“零基礎愛學習”回復“LAMP”即可獲取:

  1、mysql80-community-release-el7-3.noarch.rpm(mysql官方源)

  2、mysql-community-server-8.0.16-2.el7.x86_64.rpm(mysql主包)

    放入目錄“/var/cache/yum/x86_64/7/mysql80-community/packages/”(不同系統可能不一樣,你可以搜索mysql80-community找到目錄位置)

  3、LAMP優化入門

  4、Centos7防火牆配置手冊

  5、php-mysql 連接方式

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM