虛擬機之 LAMP

LAMP 就是Linux apache mysql phpphp

1、下載:html

安裝下載工具mysql

yum install wget -y

 

mysql:5.5.47linux

wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.47-linux2.6-x86_64.tar.gz

 

apache:2.4.18web

wget http://mirrors.sohu.com/apache/httpd-2.4.18.tar.gz

 

php:5.6.9算法

wget http://mirrors.sohu.com/php/php-5.6.9.tar.gz

 

保存鏡像1.備註:lamp下載完成sql

 

2、MySQL數據庫

1.把解壓好的MySQL放在MySQL目錄下apache

mv mysql-5.5.47-linux2.6-x86_64 /usr/local/mysql

2.建立MySQL用戶,並不容許登陸vim

useradd -s /sbin/nologin -M mysql

3.建立數據庫文件存放的目錄,並更改全部者和所屬組。

mkdir -p /data/mysql
 chown -R mysql:mysql !$

4.切換到MySQL安裝目錄下,開始安裝

cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

--user定義數據庫的所屬主   --datadir定義數據庫的安裝位置

 

錯誤1

./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
。/bin/mysqld:當加載共享庫時發生錯誤:libaio.so。1:沒法打開共享對象文件:沒有這樣的文件或目錄
解決
yum install libaio 
echo $?

 

5.拷貝配置文件,並重命名。由於my.cnf文件已存在,直接覆蓋就能夠。

 cp support-files/my-large.cnf /etc/my.cnf

6.拷貝啓動腳本文件,修改啓動腳本權限

cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 !$

7.修改啓動腳本,(沒有vim使用" yum install vim -y "來安裝)

vim /etc/init.d/mysqld
找到
basedir=
datadir=
改成
basedir=/usr/local/mysql
datadir=/data/mysql

basedir定義MySQL的安裝目錄
datadir定義MySQL數據庫的文件存放目錄

8.加入系統服務,設置開機啓動MySQL

chkconfig --add mysqld
chkconfig mysqld on

9.啓動MySQL

service mysqld start

10.檢查MySQL是否啓動

ps aux |grep mysqld

保存鏡像2,備註mysql安裝ok

MySQL配置完成                                                                                              

 

 

3、apache

1.解壓

cd /usr/local/src/
tar zvxf httpd-2.4.18.tar.gz
cd httpd-2.4.18

2.編譯安裝

./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre
解釋:

很是全的參數介紹 http://blog.chinaunix.net/uid-20784749-id-1844507.html

編譯介紹: http://www.linuxidc.com/Linux/2015-04/116060.htm

經常使用參數: http://www.cnblogs.com/xianglf/archive/2010/12/16/1908174.html


./configure 編譯安裝 --prefix 編譯安裝完成後生成一個目錄,該軟件全部的文件都會被複制到這個目錄裏面,爲何要指定這個目錄呢?爲了之後維護方便,若是不指定,文件會被複制到系統下各個目錄,用prefix的另外一個好處就是方便卸載和移植軟件。把刪除該目錄,整個軟件卸載的乾乾淨淨,移植只須要把這個目錄拷貝到另外一臺機器便可。 --with-included-apr 若是是開發者則使用此選項,利於鏈接apache的代碼或者是調試apache,其消除了因爲版本或者編譯中跟APR或者APR-util代碼產生的不匹配; --enable-so 讓apache核心裝載DSO --enable-deflate=shared 表示共享的方式編譯壓縮, apache開啓gizp的壓縮功能。網頁壓縮。擴展:http://blog.csdn.net/yybjroam05/article/details/7726516 --enable-expires=shared 網站須要用到緩存功能,支持 HTTP 控制 --enable-rewrite=shared 支持 URL 重寫 --with-pcre

錯誤1

configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

apache-2.2與新出的apache-2.4安裝不一樣的地方在於,2.4版的已經不自帶apr庫,因此在安裝apache-2.4以前,須要下載apr。
解決
cd /usr/local/src  #源碼包統一放到此目錄
wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.bz2
wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.bz2
tar -jxvf apr-1.5.2.tar.bz2
tar -jxvf apr-util-1.5.4.tar.bz2
cp -rf apr-1.5.2 ./httpd-2.4.18/srclib/apr
cp -rf apr-util-1.5.4 ./httpd-2.4.18/srclib/apr-util
#從新執行 configure 命令:

錯誤2

checking for gcc... no
checking for cc... no
checking for cl.exe... no
沒有gcc編譯器
解決
yum install gcc -y
#從新執行 configure 命令:

錯誤3

configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org

配置:錯誤:pcre-config libpcre不見了。PCRE是必需的,能夠從http://pcre.org
解決:
yum -y install pcre-devel
#從新執行 configure 命令:

錯誤4

checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures

檢查是否啓用mod_deflate……配置:錯誤:mod_deflate一直要求可是不能創建因爲先決條件失敗
解決
yum install  zlib-devel -y
#從新執行 configure 命令:
echo $?
make 
echo $?
make install
echo $?

保存鏡像3.備註apache安裝ok

 

apache安裝完成                                                                              

 4、php

1.解壓

cd /usr/local/src
tar zxvf php-5.6.9.tar.gz
cd php-5.6.9

2.編譯安裝

./configure --with-apr=/usr/local/apr --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc--with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-mcrypt --with-openssl --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
編譯來至(全)http://blog.csdn.net/godmatrix/article/details/5969558
./configure \ 配置,安裝 --with-apr=/usr/local/apr \ 指定apr代碼的目錄   --prefix=/usr/local/php \     指定php安裝目錄. --with-apxs2=/usr/local/apache2/bin/apxs \ 讓Apache服務器可以支持PHP。整合 apache,apxs功能是使用mod_so中的LoadModule指令,加載指定模塊到 apache,要求 apache 要打開SO模塊 --with-config-file-path=/usr/local/php/etc \ 指定php.ini配置文件的位置 --with-mysql=/usr/local/mysql \ MySQL安裝的目錄,對mysql的支持 --with-libxml-dir \ 打開對libxml2庫的支持 --with-gd \ 打開對gd庫的支持 --with-jpeg-dir \ --with-png-dir \ 打開對jpeg圖片和png圖片的支持 --with-freetype-dir \ 打開對freetype字體庫的支持 --with-iconv-dir \ 打開對iconv函數庫,種字符集間的轉換 --with-zlib-dir \ 打開對zlib庫的支持 --with-bz2 \ 打開對bz2文件的支持 --with-openssl \ 打開openssl的支持,加密傳輸時用到的 --with-mcrypt \ 算法,mhash和mcrypt都是算法的擴展 --enable-soap \ 打開soap的支持 --enable-gd-native-ttf \ 支持True Type 字符串 函數庫 --enable-mbstring \ 多字節,字符串的支持 --enable-sockets \ 打開sockets支持 --enable-exif \ 圖片的元數據支持 --disable-ipv6 不支持ipv6

錯誤1

configure: error: xml2-config not found. Please check your libxml2 installation. 
配置:錯誤:xml2-config不見了。請檢查你的libxml2安裝。
解決:
yum install libxml2 libxml2-devel -y

錯誤2

configure: error: Cannot find OpenSSL’s <evp.h>
配置:錯誤:找不到OpenSSL的< evp.h >
解決:
yum install openssl openssl-devel -y

錯誤3

Configure: error: Please reinstall the BZip2 distribution
配置:錯誤:請從新安裝BZip2分佈
解決:
yum install bzip2 bzip2-devel -y

錯誤4

configure: error: jpeglib.h not found.
配置:錯誤:jpeglib。沒有找到。
解決:
yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y

錯誤5

Configure: error: mcrypt.h not found. Please reinstall libmcrypt.
配置:錯誤:mcrypt。沒有找到。請從新安裝libmcrypt。
解決:
安裝epel-release源
 yum install epel-release -y
yum install libmcrypt-devel -y
echo $?
make
echo $?
make install
echo $?

3.拷貝PHP主配置文件

 cp php.ini-production /usr/local/etc/php.ini

4.修改apache的配置文件,使apache支持解析php

vim /usr/local/apache2/conf/httpd.conf
1.找到
#ServerName www.example.com:80
改成

2.找到
<Directory />
    AllowOverride none
    Require all denied
</Directory>
改成
<Directory />
    Options FollowSymLinks
    AllowOverride none
    Order deny,allow
    Allow from all
</Directory>

3.找到
<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>
改成
<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

4.找到
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
改成
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType application/x-httpd-php .php
1.ServerName www.example.com:80    打開服務器佔用80端口
2.Allow from all  容許訪問web內容目錄
3.DirectoryIndex index.html index.php   目錄索引支持php
4. AddType application/x-httpd-php .php  應用類型支持php

5.檢查配置文件是否錯誤

/usr/local/apache2/bin/apachectl -t

6.啓動apache服務

/usr/local/apache2/bin/apachectl start

7.查看進程

ps aux |grep httpd

8.關閉防火牆。

永久關閉SElinux,重啓生效。
 vim /etc/selinux/config
找到
SELINUX=enforcing
改成
SELINUX=disabled

臨時關閉

 setenforce 0

getenforce  查看當前SElinux防火牆狀態

 setenforce 0 是臨時關閉

 setenforce 1 是臨時打開

enforcing - SELinux security policy is enforced.打開
permissive - SELinux prints warnings instead of enforcing.打開不攔截
disabled - No SELinux policy is loaded.關閉,默認

9.清空iptables規則 

iptables -F 
 service iptables save

10.瀏覽器訪問IP 

是否顯示 it works!顯示說明成功。

11.測試解析php

cd /usr/local/apache2/htdocs

php主配置文件vim /usr/local/apache2/conf/httpd.conf指定的文檔根目錄的路徑DocumentRoot"/usr/local/apache2/htdocs"

touch 1.txt   
echo 'qqqqq' >> 1.txt
http://192.168.1.116/1.txt
vim 2.php
<?php
phpinfo();
?>
http://192.168.1.116/2.php

 

保存鏡像4.備註php安裝ok

php安裝成功                                                                                 

相關文章
相關標籤/搜索