LNMP表明的就是:Linux系統下Nginx+MySQL+PHP這種網站服務器架構。
Linux是一類Unix計算機操做系統的統稱,是目前最流行的免費操做系統。表明版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一個高性能的HTTP和反向代理服務器,也是一個IMAP/POP3/SMTP代理服務器。
Mysql是一個小型關係型數據庫管理系統。
PHP是一種在服務器端執行的嵌入HTML文檔的腳本語言。
這四種軟件均爲免費開源軟件,組合到一塊兒,成爲一個免費、高效、擴展性強的網站服務系統。php
宿主機:Redhat Linux 6.5 IP:192.168.100.103 安裝包:nginx-1.6.0、mysql-5.5.2四、php-5.4.五、Discuz_X2.5
軟件包下載: 百度網盤 密碼:x5qkmysql
在 Linux6.5 上搭建 LNMP 架構,並啓動動力論壇linux
安裝依賴包yum -y install pcre-devel zlib-devel gcc gcc-c++
nginx
創建nginx管理用戶useradd -M -s /sbin/nologin nginx
c++
解壓nginx安裝包tar xzvf nginx-1.6.0.tar.gz -C /opt
sql
cd /opt/nginx-1.6.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module //開啓stub_status狀態統計模塊//數據庫
執行編譯安裝make && make install
ubuntu
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
NGINX管理vim
-----檢查、啓動、重啓、中止--------
nginx -t //檢查
nginx //啓動
killall -1 nginx //重啓
killall -3 nginx //中止centos
vim /etc/init.d/nginx
#!/bin/bash
#chkconfig: - 99 20
#description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
chmod +x /etc/init.d/nginx chkconfig --add nginx
安裝支持軟件包yum install ncures-devel cmake gcc gcc-c++
解壓MySQL軟件包tar zxvf mysql-5.5.24.tar.gz -C /opt
cd /opt/mysql-5.5.24/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/home/mysql/ \
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_SSL=system \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1 \
-DWITH_SSL=bundled
執行編譯安裝make && make install
複製MySQL配置文件及啓動腳本到系統目錄中
cp support-files/my-medium.cnf /etc/my.cnf cp support-files/mysql.server /etc/init.d/mysqld
賦予執行權限,加入系統管理,設置開機啓動
chmod +x /etc/init.d/mysqld chkconfig --add mysqld chkconfig --level 35 mysqld on
將MySQL添加到系統環境變量中
echo "PATH=$PATH:/usr/local/mysql/bin/" >> /etc/profile . /etc/profile
添加mysql管理用戶,並修改用戶組
useradd -s /sbin/nologin mysql chown -R mysql.mysql /usr/local/mysql
導入MySQL的默認數據庫
/usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql
創建軟連接方便管理ln -s /var/lib/mysql/mysql.sock /home/mysql/mysql.sock
vi /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/home/mysql
安裝GD庫及GD庫關聯程序
yum -y install \
gd \
libxml2-devel \
libjpeg-devel \
libpng-devel \
zlib-devel \
fontconfig-devel \
openssl-devel \
bzip2-devel
解壓PHP安裝包tar jxvf php-5.4.5.tar.bz2 -C /opt
cd /opt/php-5.4.5/
./configure \
--prefix=/usr/local/php5 \
--with-gd \
--with-zlib \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/php5 \
--enable-mbstring \
--with-jpeg-dir \
--with-openssl \
--disable-ipv6 \
--enable-fpm
編譯安裝make && make install
複製PHP配置文件模板cp php.ini-development /usr/local/php5/php.ini
創建連接到系統目錄,便於用戶管理
ln -s /usr/local/php5/bin/* /usr/local/bin/ ln -s /usr/local/php5/sbin/* /usr/local/sbin/
爲PHP安裝加速器
tar xzvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz cd ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x cp ZendGuardLoader.so /usr/local/php5/lib/php
配置PHP識別加速器vim /usr/local/php5/php.ini
在配置文件末尾添加下面的行
[Zend Guard Loader]
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1
開啓nginx的PHP支持
cd /usr/local/php5/etc/ cp php-fpm.conf.default php-fpm.conf useradd -M -s /sbin/nologin php vim php-fpm.conf
#找到下面幾個參數,並修改
pid = run/php-fpm.pid
user = php
group = php
pm.max_children=50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
讓nginx支持PHP功能vim /usr/local/nginx/conf/nginx.conf
location ~ .php$ {
root /var/www/benet;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
添加PHP測試頁
mkdir /var/www/wzn vim /var/www/wzn/index.php
<?php
phpinfo();
?>
創建數據庫,並受權
mysql -u root
mysql> CREATE DATABASE bbs; //建立一個數據庫//
mysql> GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123'; //把bbs數據庫裏面全部表的權限授予給bbsuser,並設置密碼//
mysql>flush privileges; //刷新數據庫//
vim /var/www/wzn/index.php
修改成下面的行
<?php
$link=mysql_connect('主機IP','bbsuser','admin123');
if($link) echo "Success!!";
else echo "Fail!!";
mysql_close();
?>
解壓Discuz論壇軟件包unzip Discuz_X2.5_SC_UTF8.zip -d /opt/dis
cd /opt/dis cp -r upload/ /var/www/benet/bbs
cd /var/www/wzn/bbs/ chown -R php ./config chown -R php ./data chown -R php ./uc_client chown -R php ./uc_server/data