CentOS6.7原始碼搭建LAMP平臺
LAMP是Linux+ Apache+ MySQL+PHP的簡稱。使用原始碼安裝,由於php需要依賴apache和mysql,所以php是最後安裝,而mysql和apache誰先安裝都可以。
安裝平臺:CentOS6.7 X86_64
MySql版本:mysql-5.6.27
MySql安裝目錄:/usr/local/mysql
MySql資料庫存放目錄:/data/mysql
MySql的使用者和組:mysql:mysql
MySql原始碼存放目錄:/usr/local/src
安裝前的準備:
(1)、關閉selinux
vim/etc/selinux/config
SELINUX=enforcing ##加#註釋
SELINUX=disabled ##增加
:wq #儲存退出,然後重啟系統,如果不重啟,可臨時關閉使用命令:setenforce 0
(2)、新增好防火牆規則到/etc/sysconfig/iptables
[root@balichvm ~]# vim /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp–dport 3306 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp–dport 80 -j ACCEPT
:wq儲存退出,新增好規則後的防火牆規則如下:
# Firewall configuration written bysystem-config-firewall
# Manual customization of this file is notrecommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state –stateESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp–dport 22 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp–dport 3306 -j ACCEPT #新增
-A INPUT -m state –state NEW -m tcp -p tcp–dport 80 -j ACCEPT #新增
-A INPUT -j REJECT –reject-withicmp-host-prohibited
-A FORWARD -j REJECT –reject-withicmp-host-prohibited
COMMIT
1、安裝mysql
1)、下載mysql,這裡使用的是免編譯的安裝包,下載地址:
ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz
這是mysql官網提供的一個映象站點。
首先進入/usr/local/src目錄,使用wget命令下載
[root@balichvm src]#
wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz
2)、解壓下載的mysql安裝包,然後把解壓的檔案移動到/usr/local/mysql(移動重新命名)
[root@balichvm src]# tar zxvfmysql-5.6.27-linux-glibc2.5-x86_64.tar.gz ##解壓
[root@balichvm src]# mvmysql-5.6.27-linux-glibc2.5-x86_64 /usr/local/mysql ##移動並重新命名
3)、建立使用者mysql資料庫的使用者和使用者組mysql,並且這個使用者是無需登入系統。
[root@balichvm src]# groupadd mysql ##建立mysql組
[root@balichvm src]# useradd -s/sbin/nologin -g mysql mysql ##建立mysql使用者,不允許登入
4)、建立用於存放mysql資料庫的目錄,並且把所有者和所屬組設定為mysql
[root@balichvm src]# mkdir -p /data/mysql ##建立存放mysql資料庫的目錄
[root@balichvm src]# chown -R mysql:mysql/data/mysql/ ##修改屬主和陣列
5)、初始化資料庫,在mysql的安裝目錄下/usr/local/mysql
[root@balichvm src]# cd /usr/local/mysql/ ##進入mysql安裝目錄
[root@balichvm mysql]#./scripts/mysql_install_db –user=mysql –datadir=/data/mysql/ ##初始化資料庫
–user=mysql ##指定資料庫的所屬主
–datadir=/data/mysql/ ##指定資料庫的資料庫檔案的存放目錄
安裝過程中的錯誤:
Installing MySQL systemtables…./bin/mysqld: error while loading shared libraries: libaio.so.1:cannot open shared object file: No such file or directory
提示缺少了shared libraries: libaio.so,那就安裝不上,如下:
[root@balichvm mysql]# yum install libaio
然後繼續執行上面的安裝命令。
如果看到了兩個ok ,則表明mysql已經安裝成功了。
6)、拷貝配置檔案my.cnf
[root@balichvm mysql]# pwd
/usr/local/mysql
[root@balichvm mysql]# cpsupport-files/my-default.cnf /etc/my.cnf ##拷貝配置檔案
cp:是否覆蓋“/etc/my.cnf”? y
[root@balichvm mysql]#
7)、拷貝啟動指令碼並修改其屬主和陣列。
[root@balichvm mysql]# cpsupport-files/mysql.server /etc/init.d/mysqld ##拷貝啟動檔案
[root@balichvm mysql]# chmod 755/etc/init.d/mysqld ##修改許可權,增加執行許可權
8)、修改啟動指令碼/etc/init.d/mysqld,並把啟動指令碼加入到系統服務,設定開機啟動。
[root@balichvm mysql]# vim/etc/init.d/mysqld
找到:
basedir=
datadir=
修改為:
basedir=/usr/local/mysql ##mysql資料庫的安裝目錄
datadir=/data/mysql ##mysql資料庫的存放目錄
[root@balichvm mysql]# chkconfig –addmysqld ##把mysqld新增到系統服務
[root@balichvm mysql]# chkconfig mysqld on ##設定為開機啟動
9)、啟動mysql資料庫
[root@balichvm mysql]# /etc/init.d/mysqldstart ##啟動mysql資料庫
StartingMySQL……………………………………… SUCCESS!
為了驗證,我們可以使用ps和netstat檢視啟動的程式和開啟的埠號。
[root@balichvm src]# ps aux |grepmysql|grep -v grep
root 3541 0.0 0.1 106192 1524 pts/2 S 12:38 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe –datadir=/data/mysql–pid-file=/data/mysql/balichvm.org.pid
mysql 3656 19.1 44.7 1011064 452936 pts/2 Sl 12:38 0:45 /usr/local/mysql/bin/mysqld–basedir=/usr/local/mysql –datadir=/data/mysql–plugin-dir=/usr/local/mysql/lib/plugin –user=mysql–log-error=/data/mysql/balichvm.org.err–pid-file=/data/mysql/balichvm.org.pid
[root@balichvm src]# netstat -lnp |grepmysql|grep -v grep
tcp 0 0 :::3306 :::* LISTEN 3656/mysqld
unix 2 [ ACC ] STREAM LISTENING 32648 3656/mysqld /tmp/mysql.sock
10)、將mysql的安裝目錄加入到環境變數,這是為了方便使用(如果不加,要登入mysql需要寫全路徑)
[root@balichvm mysql]# vim /etc/profile #編輯環境變數配置檔案
export PATH=$PATH:/usr/local/mysql/bin #在最後面新增
[root@balichvm mysql]# source /etc/profile ##重新整理一次環境變數
11)、登入mysql、修改mysql密碼
登入mysql的方法可以使通過ip/埠或者是socket的方式登入。
ip/埠的方式:mysql –Hhostname–Pport –uuser –ppasswd
socket的方式:mysql –S socketdir–uuser –ppasswd
修改mysql的密碼:
[root@balichvm mysql]# mysqladmin -urootpassword `fgjh123.` ##設定密碼為fgjh123.
mysql的完成安裝。
2、安裝Apache
Apache的版本:httpd-2.2.31
Apache的安裝目錄:/usr/local/apache22
1)、下載Apache軟體包,下載存放的目錄:/usr/local/src 然後解壓
[root@balichvm src]# wgethttp://www.us.apache.org/dist//httpd/httpd-2.2.31.tar.gz ##下載
[root@balichvm src]# tar zxvfhttpd-2.2.31.tar.gz ##解壓
2)、建立Apache的安裝目錄/usr/local/apache22,並且配置編譯引數:
[root@balichvm httpd-2.2.31]# mkdir/usr/local/apache22
[root@balichvm src]# cd httpd-2.2.31
[root@balichvm httpd-2.2.31]# ./configure–prefix=/usr/local/apache22 –with-included-apr –enable-so–enable-deflate=shared –enable-expires=shared –enable-rewrite=shared–with-pcre
配置完成後,使用echo $? 檢查上一條命令是否有錯誤,沒有會返回0.
[root@balichvm httpd-2.2.31]# echo $? #這是檢視上一條命令是否有錯誤的。
1
這裡有錯誤提示:checking whether to enable mod_deflate… configure: error:mod_deflate has been requested but can not be built due to prerequisitefailures
那就重新安裝[root@balichvm httpd-2.2.31]# yum install zlib-devel
然後再次配置。
3)、編譯(make)和安裝(makeinstall)
[root@balichvm httpd-2.2.31]# make &make install ##編譯和安裝
4)、Apache服務的啟動、關閉、重啟。
Apache的啟動、關閉,重啟。Apache的服務控制指令碼存放在安裝目錄下:/usr/local/apache22/bin/apachectl 。
要啟動Apache服務:/usr/local/apache22/bin/apachectl -k start
要停止Apache服務:/usr/local/apache22/bin/apachectl -k stop
要重啟Apache服務:/usr/local/apache22/bin/apachectl -k restart
5)、檢視Apache服務是否啟動,首頁是否正常開啟
[root@balichvm httpd-2.2.31]# netstat -lnp|grep -v grep|grep httpd
tcp 0 0 :::80 :::* LISTEN 64605/httpd
[root@balichvm httpd-2.2.31]# curl -Ilocalhost ##使用curl命令測試開啟
HTTP/1.1 200 OK
Date: Thu, 29 Oct 2015 07:16:34 GMT
Server: Apache/2.2.31 (Unix)
Last-Modified: Sat, 20 Nov 2004 20:16:24GMT
ETag: “c481c-2c-3e9564c23b600”
Accept-Ranges: bytes
Content-Length: 44
Content-Type: text/html
[root@balichvm httpd-2.2.31]#
Apache安裝完成。
3、安裝PHP
php版本:php-5.4.45
php安裝目錄:/usr/local/php
1)、下載和解壓,如果是從php官網下載,速度很慢,可以從國內的映象站點,如搜狐:mirrors.sohu.com
[root@balichvm src]# wget http://mirrors.sohu.com/php/php-5.4.45.tar.bz2 ##下載php
[root@balichvm src]# tar jxvfphp-5.4.45.tar.bz2 ##解壓
2)、建立php安裝目錄:/usr/local/php;配置編譯引數:
[root@balichvm src]# mkdir /usr/local/php ##建立php安裝目錄
[root@balichvm src]# cd php-5.4.45
[root@balichvm php-5.4.45]# ./configure
–prefix=/usr/local/php
–with-apxs2=/usr/local/apache22/bin/apxs
–with-config-file-path=/usr/local/php/etc
–with-mysql=/usr/local/mysql
–with-libxml-dir
–with-gd
–with-jpeg-dir
–with-freetype-dir
–with-iconv-dir
–with-zlib-dir
–with-bz2
–with-openssl
–enable-soap
–enable-gd-native-ttf
–enable-mbstring
–enable-sockets
–enable-exif
–with-curl
–enable-json
–disable-ipv6
使用$?檢查是否有錯誤,如果沒有就執行編譯和安裝。如有錯誤,基本都是確實了相關的開發庫支援,只需要安裝提示的錯誤補上即可。
最後有:Thank you for using PHP. 的提示。
3)、編譯(make)和安裝(makeinstall)
[root@balichvm php-5.4.45]# make &&make install ##編譯和安裝
4)、拷貝php.ini配置檔案到/usr/local/php/etc/目錄下
[root@balichvm php-5.4.45]# cpphp.ini-production /usr/local/php/etc/php.ini ##拷貝配置檔案
使用/usr/local/php/bin/php -i |head 的相關資訊,其實這是phpinfo函式檢視的一樣的。
[root@balichvm php-5.4.45]#/usr/local/php/bin/php -i |head
phpinfo()
PHP Version => 5.4.45
System => Linux balichvm.org2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64
Build Date => Oct 29 2015 17:42:38
Configure Command => `./configure` `–prefix=/usr/local/php` `–with-apxs2=/usr/local/apache22/bin/apxs“–with-config-file-path=/usr/local/php/etc` `–with-mysql=/usr/local/mysql“–with-libxml-dir` `–with-gd` `–with-jpeg-dir` `–with-freetype-dir“–with-iconv-dir` `–with-zlib-dir` `–with-bz2` `–with-openssl“–enable-soap` `–enable-gd-native-ttf` `–enable-mbstring` `–enable-sockets“–enable-exif` `–disable-ipv6` `–with-curl` `–enable-json`
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path =>/usr/local/php/etc
Loaded Configuration File => (none)
mysql、apache、php、都安裝了,需要將他們結合起來共同工作。
4、配置Apache和PHP組合
Mysqld 的主配置檔案:/etc/my.cnf
Apache的主配置檔案:/usr/local/apache22/conf/httpd.conf
Apache的預設網站根目錄:/usr/local/apache22/htdocs/
php的主配置檔案:/usr/local/php/etc/php.ini
1)、修改Apache的主配置檔案
[root@balichvm ~]# vim/usr/local/apache22/conf/httpd.conf
找到:AddType application/x-gzip .gz .tgz
在下一行增加內容:AddType application/x-httpd-php .php
找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
修改為:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
:wq 儲存退出。
2)、編寫用於測試php的程式,比如phpinfo(),這檔案放在Apache的預設網站的根目錄下。
[root@balichvm ~]# vim/usr/local/apache22/htdocs/info.php
<?php
phpinfo();
?>
~
:wq 儲存,退出。
3)、檢查Apache的配置檔案是否有錯,然後重啟Apache服務。
[root@balichvm ~]#/usr/local/apache22/bin/apachectl –t ##檢查配置檔案是否正確
httpd: Could not reliably determine theserver`s fully qualified domain name, using balichvm.org for ServerName
Syntax OK ##配置檔案沒有問題。
[root@balichvm ~]#
這裡有一個警告,如果不想它出現,可以修改Apache的主配置檔案裡面的ServerName
找到:
#ServerName www.example.com:80
這裡有#號,預設是註釋,那就在下面新增如下:
ServerName localhost:80
:wq,儲存退出。
在此檢查,就會正常了。
[root@balichvm ~]# /usr/local/apache22/bin/apachectl-t
Syntax OK
[root@balichvm ~]#/usr/local/apache22/bin/apachectl restart ##重啟Apache服務
在瀏覽器上輸入http://serverip/info.php (serverip是伺服器的ip地址)可以看到php的配置資訊。
相關文章
- Linux-LAMP平臺搭建詳解LinuxLAMP
- PHP直播平臺原始碼搭建教程PHP原始碼
- PHP開發大牛必修課——LAMP平臺搭建PHPLAMP
- 部署LAMP平臺LAMP
- Linux下原始碼搭建LAMP環境Linux原始碼LAMP
- LAMP--原始碼MySQL叢集版搭建LAMP原始碼MySql
- 直播平臺搭建原始碼,java相簿製作原始碼Java
- 原始碼安裝lamp原始碼LAMP
- 直播平臺搭建原始碼,更改圖片透明度原始碼
- 直播平臺搭建原始碼,uniapp progress進度條原始碼APP
- 快速運營搭建直播軟體平臺直播原始碼!原始碼
- 5—-CentOS6.5原始碼搭建LAMP–基於module方式實現php(單臺機器)CentOS原始碼LAMPPHP
- 貸款借錢平臺 貸款原始碼 小額貸款系統 卡卡貸原始碼 小額貸款原始碼 貸款平臺開發搭建原始碼
- 在原始碼安裝的LAMP環境中搭建Nagios原始碼LAMPiOS
- 直播系統原始碼--搭建直播平臺的奠基石原始碼
- SVN原始碼版本控制系統平臺的搭建及使用原始碼
- 數字藏品nft系統開發平臺搭建原始碼原始碼
- 直播平臺搭建原始碼,qt自定義滑動按鈕原始碼QT
- LAMP平臺部署及應用(一)LAMP
- 教育平臺原始碼:教培機構為什麼要搭建自己的線上教育平臺原始碼
- 直播平臺搭建原始碼,bootstrap實現圖片輪播效果原始碼boot
- 直播原始碼如何搭建一個屬於自己的直播平臺?原始碼
- Windows平臺搭建Kafka原始碼開發環境(Eclipse版本)WindowsKafka原始碼開發環境Eclipse
- LAMP原始碼編譯安裝LAMP原始碼編譯
- LAMP平臺搭建+論壇安裝流程(包括遇到的一些問題)LAMP
- LAMP搭建示例LAMP
- Ubuntu搭建LAMPUbuntuLAMP
- 直播平臺搭建原始碼,純js實現編輯器撤消/重做原始碼JS
- 直播平臺搭建原始碼,XBanner設定只顯示輪播圖原始碼
- 直播平臺搭建原始碼,使用EasyExcel實現匯入匯出功能原始碼Excel
- 直播平臺搭建原始碼,canvas 畫一條波浪線 進度條原始碼Canvas
- LNMP+FastCGI平臺搭建指令碼LNMPAST指令碼
- 教育直播平臺原始碼:為什麼要搭建一套屬於自己的線上教育平臺?原始碼
- centos6.0LAMP原始碼安裝CentOSLAMP原始碼
- LAMP原始碼安裝+wordpress安裝LAMP原始碼
- 合約交易系統開發|智慧合約交易平臺原始碼搭建原始碼
- 開源原始碼一站式黨建培訓平臺搭建原始碼
- 程式原始碼搭建遊戲直播系統軟體平臺,成本低原因原始碼遊戲