lamp搭建


一.準備工做
一、配置本地YUM源
二、關閉selinux以及iptables
service iptables stop
chkconfig iptables off
setenforce 0php

vim /etc/selinux/config
修改成: SELINUX=disabledhtml

三、卸載系統RPM包安裝的Apahce,Mysql服務
rpm -e --nodeps mysqld
rpm -e --nodeps httpd
四、關閉一些沒必要要的自啓動:可參考excl表格
五、拷貝源碼包到本地
yum -y install lrzsz
拖拽 iso 文件到 xshell
建立掛載目錄以及工做目錄:
mkdir /iso /soft
掛載鏡像到 /iso 目錄:
mount –o loop lamp.iso /iso
六、掛載點下的文件直接解壓不了,須要複製到其餘位置進行解壓(多並且繁瑣)
cp -a /iso/* /soft/
6.1或者用腳本解壓:
bash /iso/jieya.sh /iso /soft
二.源碼編譯安裝
1.安裝編譯環境
yum –y install gcc*
2.安裝libxml2
yum -y install libxml2-devel python-devel
cd /soft/libxml2-2.9.1
./configure --prefix=/usr/local/libxml2 && make && make install
3.安裝libmcryp
libmcrypt是加密算法擴展庫。支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法。
cd /soft/libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt && make && make install
4.安裝libltdl,也在libmcrypt源碼目錄中,非新軟件
cd /soft/libmcrypt-2.5.8/libltdl
./configure --enable-ltdl-install && make && make install
5.安裝mhash
Mhash是基於離散數學原理的不可逆向的php加密方式擴展庫,其在默認狀況下不開啓。mhash的能夠用於建立校驗數值,消息摘要,
消息認證碼,以及無需原文的關鍵信息保存(如密碼)等。
cd /sort/mhash-0.9.9.9
./configure && make && make install
6.安裝mcrypt
mcrypt 是 php 裏面重要的加密支持擴展庫。Mcrypt庫支持20多種加密算法和8種加密模式
cd /soft/mcrypt-2.6.8/
LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib ./configure --with-libmcrypt-prefix=/usr/local/libmcrypt && make && make install
7.安裝zlib庫
zlib是提供數據壓縮用的函式庫,由Jean-loup Gailly與Mark Adler所開發,第一版0.9版在1995年5月1日發表。zlib使用DEFLATE算法,最初
是爲libpng函式庫所寫的,後來廣泛爲許多軟件所使用。此函式庫爲自由軟件,使用zlib受權
cd /soft/zlib-1.2.3/
./configure
vi Makefile
找到CFLAGS=-O3 -DUSE_MMAP 在後面加入 –fPIC變成 CFLAGS=-O3 –DUSE_MMAP -fPIC
make && make install
8.安裝libpng
libpng 軟件包包含 libpng 庫.這些庫被其餘程式用於解碼png圖片
cd /soft/libpng-1.2.31
./configure --prefix=/usr/local/libpng && make && make install
9.安裝jpeg6
用於解碼.jpg和.jpeg圖片
yum -y install libtool*
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir -p /usr/local/jpeg6/man/man1
cd /soft/jpeg-6b
cp /usr/share/libtool/config/config.sub .
cp /usr/share/libtool/config/config.guess .
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static && make && make
* --enable-shared與--enable-static參數分別爲創建共享庫和靜態庫使用的libtool
10.安裝freetype
cd /soft/freetype-2.3.5
./configure --prefix=/usr/local/freetype/ && make && make install
11.安裝apache
cd /soft/pcre-8.34
./configure && make && make install
cp -r /soft/apr-1.4.6 /soft/httpd-2.4.7/srclib/apr
cp -r /soft/apr-util-1.4.1 /soft/httpd-2.4.7/srclib/apr-util
cd /soft/httpd-2.4.7
./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc/ --with-included-apr --enable-so --enable- deflate=shared --enable-expires=shared --enable-rewrite=shared && make && make install
啓動 Apache 服務:/usr/local/apache2/bin/apachectl start
測試 Apache 服務是否開啓:netstat –tlun | grep :80
設置Apache系統引導時啓動:echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.local
12.安裝ncurses
Ncurses提供字符終端處理庫,包括面板和菜單。它提供了一套控制光標,創建窗口,改變前景背景顏色以及處理鼠標操做的函數。
使用戶在字符終端下編寫應用程序時繞過了那些惱人的底層機制。簡而言之,他是一個能夠使應用程序直接控制終端屏幕顯示的函數庫。
yum -y install ncurses-devel
cd /soft/ncurses-5.9
./configure --with-shared --without-debug --without-ada --enable-overwrite && make && make install
* 若不安裝ncurses編譯MySQL時會報錯* --without-ada參數爲設定不編譯爲ada綁定,因進入chroot環境不能使用ada ;--enable- overwrite參數爲定義把頭文件安裝到/tools/include下而不是/tools/include/ncurses目錄* --with-shared 生成共享庫
13.安裝cmake&bison
mysql在5.5之後,再也不使用./configure工具,進行編譯安裝。而使用cmake工具替代./configure工具。cmake的具體用法參考文檔cmake說明。 bison是一個自由軟件,用於自動生成語法分析器程序,可用於全部常見的操做系統
yum -y install cmake
yum -y install bison
14.安裝mysql
useradd -M -s /sbin/nologin mysql
* 添加用戶組mysql ,將mysql用戶默認組設置爲mysql用戶組
cd /soft/mysql-5.5.48
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 && make && make installnode

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 安裝位置
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock 指定socket(套接字)文件位置
-DEXTRA_CHARSETS=all 擴展字符支持
-DDEFAULT_CHARSET=utf8 默認字符集
-DDEFAULT_COLLATION=utf8_general_ci 默認字符校對
-DWITH_MYISAM_STORAGE_ENGINE=1 安裝myisam存儲引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 安裝innodb存儲引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 安裝memory存儲引擎
-DWITH_READLINE=1 支持readline庫
-DENABLED_LOCAL_INFILE=1 啓用加載本地數據
-DMYSQL_USER=mysql 指定mysql運行用戶
-DMYSQL_TCP_PORT=3306 指定mysql端口python

cd /usr/local/mysql/
chown -R root .
chown -R mysql data
*修改 MySQL 目錄權限
cp support-files/my-medium.cnf /etc/my.cnf
*複製mysql配置文件
/usr/local/mysql/scripts/mysql_install_db --user=mysql
*建立數據庫受權表,初始化數據庫
/usr/local/mysql/bin/mysqld_safe --user=mysql &
*啓動 MySQL 服務
echo "/usr/local/mysql/bin/mysqld_safe --user=mysql &" >> /etc/rc.local
*設置開機自啓動 MySQL
/usr/local/mysql/bin/mysqladmin -uroot password 123
*設定 MySQL 初始密碼,給 MySQL 用戶 root 加密碼 123
測試 MySQL數據庫可否使用:/usr/local/mysql/bin/mysql-uroot-p
mysql>show databases;
15.安裝php
yum -y install libtool*
cd /soft/php-7.0.7
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-png-dir=/usr/local/libpng/ --with-freetype-dir=/usr/local/freetype/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --with-pdo-mysql=/usr/local/mysql --with-gd --without-pear && make && make installmysql

--with-config-file-path=/usr/local/php/etc/ 指定配置文件目錄
--with-apxs2=/usr/local/apache2/bin/apxs 指定apache動態模塊位置
--with-libxml-dir=/usr/local/libxml2/ 指定libxml位置
--with-jpeg-dir=/usr/local/jpeg6/ 指定jpeg位置
--with-png-dir=/usr/local/libpng/ 指定libpng位置
--with-freetype-dir=/usr/local/freetype/ 指定freetype位置
--with-mcrypt=/usr/local/libmcrypt/ 指定libmcrypt位置
--with-mysqli=/usr/local/mysql/bin/mysql_config 指定mysqli位置
--with-gd 啓用gd庫
--enable-soap 支持soap服務
--enable-mbstring=all 支持多字節,字符串
--enable-sockets 支持套接字
--with-pdo-mysql=/usr/local/mysql 啓用mysql的pdo模塊支持
--without-pear 不安裝pear(安裝pear須要鏈接互聯網,PEAR是PHP擴展與應用庫) linux

mkdir /usr/local/php/etc/
cp /soft/php-7.0.7/php.ini-production /usr/local/php/etc/php.ini算法


連接 Apache 與 PHP:
vim /usr/local/apache2/etc/httpd.conf
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
*在配置文件中添加, .phtml爲將.phps作爲PHP源文件進行語法高亮顯示sql


拷貝 PHP 腳本到 /usr/local/apache2/htdocs/ 留作測試: cp /iso/php/* /usr/local/apache2/htdocs/shell

測試 Apache 是否解析 PHP ,瀏覽器訪問測試 http://本機 IP/php-test.php
測試 PHP 鏈接 MySQL: http://本機ip/mysql-test.php
16.安裝openssl
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用
程序供測試或其它目的使用。
yum -y install openssl-devel
cd /soft/php-7.0.7/ext/openssl
mv config0.m4 config.m4
/usr/local/php/bin/phpize
./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config && make && make install
17.編譯安裝memcache
cd /soft/pecl-memcache-php7
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config && make && make install
vim /usr/local/php/etc/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20151012/"
*打開註釋並修改
extension="openssl.so";
extension="memcache.so";
#在區域內添加數據庫

測試:
重啓 apache 服務器,能夠訪問網頁 phpinfo 函數,在頁面中找到 memcache

安裝 memcache 源代碼 useradd -M -s /sbin/nologin memcache yum -y install /iso/libevent/* cd /soft/memcached-1.4.17 ./configure --prefix=/usr/local/memcache && make && make install 啓動服務,查看是否開啓 /usr/local/memcache/bin/memcached -umemcache & netstat -an | grep :11211 寫入自啓動 echo "/usr/local/memcache/bin/memcached -umemcache &" >> /etc/rc.local 測試 memcache 是否工做 memcache.php http://本機ip/memcache.php memcache.php文件注意修改路徑和密碼

相關文章
相關標籤/搜索