Centos搭建LNMP架構

1、部署linux系統
Linux基本優化
關閉iptables、selinux、/tmp權限是1777

2、部署nginx服務
(1)依賴軟件包安裝 yum install -y pcre-devel openssl-devel
(2)創建虛擬管理用戶 useradd -M -s /sbin/nologin nginx
(3)下載並解壓nginx軟件
cd /server/tools;wget http://nginx.org/download/nginx-1.12.2.tar.gz; tar -xf nginx-1.12.2.tar.gz
(4)編譯安裝nginx軟件
./configure --prefix=/application/nginx-12.2 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
make;make install
(5)創建軟鏈接目錄
ln -s /application/nginx-12.2 /application/nginx
(6)啓動nginx服務
/application/nginx/sbin/nginx -t 測試語法
/application/nginx/sbin/nginx

3、部署Mysql服務 注:這裏用的是二進制安裝方式
(1)下載並解壓mysql軟件程序
軟件包過大,在windows下載好後,通過xftp上傳
cd /server/tools;tar -xf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.34-linux-glibc2.5-x86_64 /application/mysql-5.6.34
(2)創建軟件程序軟鏈接
ln -sf /application/mysql-5.6.34/ /application/mysql
(3)創建數據庫管理用戶,並授權數據目錄
useradd mysql -M -s /sbin/nologin
chown -R mysql.mysql /application/mysql/data/
(4)對數據庫服務進行初始化(兩個ok就是成功)
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
(5)啓動mysql服務
cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
sed -ri 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe
cp /application/mysql/support-files/my-default.cnf /etc/my.cnf
/etc/init.d/mysqld start
(6)設置數據庫root用戶登錄密碼
/application/mysql/bin/mysqladmin -uroot password "oldboy123"
/application/mysql/bin/mysql -uroot -poldboy123

4、部署php服務
(1)第一里程:解決PHP軟件的依賴關係
yum install -y zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel
libiconv軟件安裝---字符集轉換庫(注意: yum庫中沒有)
cd /server/tools
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make
make install

#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo 注:epel源下載鏈接
yum -y install libmcrypt-devel mhash mcrypt
rpm -qa libmcrypt-devel mhash mcrypt
(2)第二個里程:下載解壓PHP軟件
php官方網站下載:php.net
cd /server/tools/
tar xf php-5.5.32.tar.gz
cd php-5.5.32
./configure \
--prefix=/application/php-5.5.32 \
--with-mysql=/application/mysql-5.6.34 \
--with-pdo-mysql=mysqlnd \
--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-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--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-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-ftp \
--enable-opcache=no
(防錯信息配置)
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/
touch ext/phar/phar.phar
make
make install
ln -sf /application/php-5.5.32/ /application/php
(3)第三個里程:設置PHP程序配置文件
php.ini php-fpm.ini
cp /server/tools/php-5.5.32/php.ini-production /application/php/lib/
cd /application/php/etc/
cp php-fpm.conf.default php-fpm.conf
(4)第四個里程:啓動php程序服務
/application/php/sbin/php-fpm
netstat -lntup|grep php
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 6251/php-fpm

5、進行軟件間的結合
(1)nginx與php結合
注:通過location定位uri資源信息
location ~* .*\.(php|php5)?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}

測試方法:
vim /application/nginx/html/blogs/test_info.php
<?php
phpinfo();
?>
(2)php與mysql結合
php與mysql結合:編寫php程序代碼
vim /application/nginx/html/blogs/test_mysql.php
<?php
//$link_id=mysql_connect('主機名','用戶','密碼');
//mysql -u用戶 -p密碼 -h 主機
$link_id=mysql_connect('localhost','root','oldboy123') or mysql_error();
if($link_id){
echo "mysql successful by tangyong !\n";
}else{
echo mysql_error();
}
?>

6、部署一個真的網站
(1)第一個里程:下載與上傳網站代碼

(2) 第二個里程:解壓程序代碼,將程序代碼保存到站點目錄並進行授權
tar xf wordpress-4.7.3-zh_CN.tar.gz
mv wordpress/* /application/nginx/html/blog/
chown -R nginx.nginx /application/nginx/html/blog/ 注:修改成和nginx worker進程相同的用戶
(3)第三個里程:直接訪問blog網站,進行初始化操作
注意:需要在配置文件裏,將首頁文件index.php添加進去
創建數據庫:(要先進入到數據庫中)
create database wordpress;
show databases; 查看數據庫
創建連接數據用戶信息
grant all on wordpress.* to 'wordpress'@'localhost' identified by 'oldboy123';
select user,host from mysql.user; 檢查用戶表,用戶是否在表中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章