您好,登錄后才能下訂單哦!
搭建 LAMP 環境
一、環境介紹
二、必裝依賴軟件
三、編譯安裝 Nginx-1.6.3
四、二進制安裝 MYSQL-5.5.33
五、編譯安裝 PHP-5.3.27
六、檢測 nginx與mysql nginx與php 是否相連
一、環境介紹
搭建這個環境,所有服務都安裝在一臺虛擬機中,在此介紹一下我的虛擬機
CentOS-6.7-x86_64 保證虛擬機可以正常上網
IP:192.168.6.36
hostname:yuci
關閉 iptbales selinux
二、必裝依賴軟件
全部通過 yum 安裝
lrzsz # 軟件和此環境沒有什么關系。安裝后可以通過xshell直接拖拽軟件包
pcre
pcre-devel
openssl-devel
yum -y install lrzsz pcre pcre-devel openssl-devel
rpm -qa lrzsz pcre pcre-devel openssl-devel
三、編譯安裝 Nginx-1.6.3
創建一個專門用于存放軟件包的目錄
mkdir -p /home/yuci/tools
創建 nginx 用戶,并檢查
useradd -s /sbin/nologin/ -M nginx
id nginx
解壓 nginx 壓縮包(安裝過 lrzsz ,所以可直接拖拽軟件的該目錄)
tar zxf nginx-1.6.3.tar.gz
開始編譯安裝 nginx , 在 nginx 目錄下輸入一下命令
./configure --prefix=/application/nginx-1.6.3 --user=nginx \
--group=nginx --with-http_ssl_module \
--with-http_stub_status_module \
&& make && make install
創建一個軟連接,保留軟件版本的同時方便操作
ln -s /application/nginx-1.6.3/ /application/nginx
啟動 nginx 服務
/application/nginx/sbin/nginx
瀏覽器輸入IP地址,nginx 搭建成功
四、二進制安裝 MYSQL-5.5.33
解壓 mysql 安裝包
tar zxf mysql-5.5.33-linux2.6-x86_64.tar.gz
切到 /application 目錄,lamp 環境中的所有服務都將安裝到此目錄中,方便管理
將 mysql 移動到 /application 目錄中,并保留 mysql 版本號
mv /home/yuci/tools/mysql-5.5.33-linux2.6-x86_64 ./mysql-5.5.33
為 mysql 創建軟連接,方便管理
ln -s /application/mysql-5.5.33/ /application/mysql
創建 mysql 用戶
useradd -s /sbin/nologin/ -M mysql
id mysql
初始化 mysql
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
授權 mysql ,將其屬主屬組改為 mysql 用戶
chown -R mysql:mysql /application/mysql
拷貝 mysql 配置文件,選取 small 就好
cp support-files/my-small.cnf /etc/my.cnf
修改 mysql 的啟動腳本 mysqld_safe,因為 mysql 的默認安裝路徑在 /usr/local/mysql,但現在 mysql 在 /application 目錄中,所以通過 sed 命令更改
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe
啟動 mysql ,通過啟動腳本 mysql_safe,并放入后臺執行
/application/mysql/bin/mysqld_safe &
通過端口檢查 mysql 是否啟動
lsof -i :3306
每次通過 mysqld_safe 啟動比較麻煩,所以配置變量,通過修改 /etc/profile 實現即可
vim /etc/profile
PATH="/application/mysql/bin:$PATH"
source /etc/profile # 刷新生效
拷貝 mysql 啟動腳本,重命名為 mysqld 。
替換 mysql 啟動腳本中的路徑,將/usr/local/mysql 替換為 /application/mysql。
給 mysqld 這個腳本增加執行權限
cp support-files/mysql.server /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
使用 killall 命令殺死正在運行的 mysql 服務,重復殺,直到出現 mysqld: no process killed 的提示
killall mysqld
啟動 mysql,并檢查
/etc/init.d/mysqld start
將 mysql 設為開機啟動
chkconfig mysqld on
設置 mysql 的 root 密碼為 123456,并登陸 mysql
mysqladmin -uroot password "123456"
mysql -uroot -p123456
五、編譯安裝 PHP-5.3.27
安裝 PHP 太麻煩,先確定一下流程吧
1)確認nginx ,mysql服務已經啟動
2)通過 yum 安裝
freetype-devel
libjpeg-devel # 因為版本升級的問題,yum 執行安裝時是 libjpeg-devel ,但實際安裝的是 libjpeg-turbo-devel
libpng-devel
gd
gd-devel
libcurl-devel
libxslt-devel
3)編譯安裝 libiconv-1.14 介個軟件,因為它無法通過 yum 成功安裝
4)通過 wget 新下載一個 epel 源
5)安裝 libmcrypt libmcrypt-devel 包
6)安裝 mhash 加密擴展庫
7)安裝 mcrypt 加密擴展庫
8)編譯安裝 PHP-5.3.7
1)
在安裝 PHP 之前首先應該確認一下 nginx與mysql 服務都已經啟動
lsof -i :80
lsof -i :3306
2)
安裝php需要的各種lib庫文件,其中安裝 gd-devel 時安裝失敗,同時安裝 gd gd-devel 才安裝上
yum -y install freetype-devel libjpeg-devel libpng-devel gd gd-devel libcurl-devel libxslt-devel
rpm -qa freetype-devel libjpeg-turbo-devel libpng-devel gd gd-devel libcurl-devel libxslt-devel
(libjpeg-devel == libjpeg-turbo-devel)
3)
安裝 libiconv,這個軟件無法通過 yum 安裝,只能編譯安裝了
解壓軟件 -> 切到其目錄中 -> 執行命令,編譯安裝
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv && make && make install
4)
安裝 epel 源,因為后面還要安裝的 libmcrypt 庫。介個庫離不開介個源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
5)
安裝 libmcrypt libmcrypt-devel 包,并檢查
yum -y install libmcrypt-devel
rpm -qa libmcrypt*
6)
安裝 mhash 加密擴展庫,并檢查
yum -y install mhash mhash-devel
rpm -qa mhash mhash-devel
7)
安裝 mcrypt 加密擴展庫,并檢查
yum -y install mcrypt
rpm -qa mcrypt
8)
編譯安裝 PHP-5.3.7,將 php 的安裝包放到規定的 /home/yuci/tools 目錄中
tar zxf php-5.3.27.tar.gz
cd php-5.3.27
創建文件,不創建 PHP 編譯中會報錯
touch ext/phar/phar.phar
創建一個軟連接文件
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/
正式編譯安裝 PHP, 編譯路徑如下, PHP 目錄下執行即可
./configure \
--prefix=/application/php5.3.27 \
--with-mysql=/application/mysql \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-safe-mode \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--with-curlwrappers \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--enable-short-tags \
--enable-zend-multibyte \
--enable-static \
--with-xsl \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-ftp
make && make install
看到以下畫面,說明安裝成功,繼續操作
給 php 創建一個軟連接
ln -s /application/php5.3.27/ /application/php
配置 PHP 解析文件,php.ini
ls -l php.ini*
將配置文件復制到 php 安裝目錄,并改名為 php.ini
cp php.ini-production /application/php/lib/php.ini
php進程管理文件生效(php-fpm.conf 進程管理)
cp php-fpm.conf.default php-fpm.conf
啟動 php-fpm,檢查是否啟動,查看 php-fpm 端口
/application/php/sbin/php-fpm
ps -ef | grep php-fpm
ss -lntup | grep php-fpm
六、編輯 nginx.conf 文件
將文件過濾,看著也方便,編輯如下
cd /application/nginx/conf
egrep -v "#|^$" nginx.conf.default > nginx.conf
檢測 nginx與mysql nginx與php 是否相連
在此目錄下分別創建 phpinifo.php,mysql.php 兩個文件,文件內容如下
<?php
phpinfo();
?>
<?php
$link_id=mysql_connect('localhost','root','123456') or mysql_error();
if($link_id){
echo "mysql successful by yuci.";
}else{
echo mysql_error();
}
?>
檢查語法,平滑加載
/application/nginx/sbin/nginx -t
/application/nginx/sbin/nginx -s reload
瀏覽器中分別輸入
192.168.6.36/phpinfo.php
192.168.6.36/mysql.php
大功告成
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。