LNMP网站服务器部署

LNMP是目前应用最为广泛的网站服务器架构,Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等,Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器,Mysql是一个小型关系型数据库管理系统,PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

系统环境:

  • rhel 6.5 操作系统
  • 服务器IP地址:192.168.100.5
  • 客户机IP地址:192.168.100.30 (与服务器同网段并能够互联互通)
  • LNMP软件包 百度下载 密码:j892

实现目标:

  1. 安装Nginx服务器
  2. 安装Mysql数据库
  3. 安装PHP
  4. 部署Discuz论坛

开始部署

一. 安装Nginx服务器

1.安装依赖包

yum -y install pcre-devel zlib-devel gcc gcc-c++ make

2.新建nginx管理用户

useradd -M -s /sbin/nologin nginx

3.解压

tar xzvf nginx-1.6.0.tar.gz -C /opt

4.配置

cd /opt/nginx-1.6.0/

./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module #开启stub_status状态统计模块

5.编译及安装

make && make install

6.建立nginx链接,便于系统管理

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

########### nginx管理命令 ###########

nginx -t #nginx配置文件检查
nginx #启动
killall -1 nginx #重启nginx
killall -3 nginx #停止nginx

######################################

7.生成nginx管理脚本

vi /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

8.nginx赋予执行权限

chmod +x /etc/init.d/nginx

9.nginx加入系统服务管理

chkconfig --add nginx

10.启动nginx

service nginx start

11.测试


二. 安装Mysql数据库

1. 安装支持软件包

yum -y install ncurses-devel gcc gcc-c++ cmake              

2. 解压

tar xzvf mysql-5.5.24.tar.gz -C /opt

3. 进入mysql安装包目录

cd /opt/mysql-5.5.24

4. 配置

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

5. 编译及安装

make && make install

6. 复制mysql配置文件及启动脚本至相应目录

cp support-files/my-medium.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld

7. mysqld赋予执行权限

chmod +x /etc/init.d/mysqld

8. 将mysqld加入系统管理

chkconfig mysqld on
service mysqld start

9. 将mysql添加至环境变量中

echo "PATH=$PATH:/usr/local/mysql/bin/" >> /etc/profile
. /etc/profile      #更新环境变量

10. 添加mysql管理用户

useradd -s /sbin/nologin mysql

11. 修改mysql的用户及用户组

chown -R mysql.mysql /usr/local/mysql

12. 导入mysql默认数据库

> /usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql

13. 建立mysql.sock链接

ln -s /var/lib/mysql/mysql.sock  /home/mysql/mysql.sock

14. 编辑mysqld启动脚本

vim /etc/init.d/mysqld

#修改以下路径
basedir=/usr/local/mysql
datadir=/home/mysql

15. 重启mysqld服务

service mysqld restart

mysql测试


三. 安装PHP

1. 首先安装GD库及GD库关联程序

yum -y install gd libxml2-devel libjpeg-devel libpng-devel zlib-devel fontconfig-devel openssl-devel bzip2-devel

2. 解压

tar -jxvf php-5.4.5.tar.bz2 -C /opt

3. 进入php目录

cd /opt/php-5.4.5/

4. 配置

./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

5. 编译及安装

make && make install

6. 复制php模板配置文件

cp php.ini-development /usr/local/php5/php.ini

7. 建立php执行文件的链接至系统目录下,便于执行

ln -s /usr/local/php5/bin/* /usr/local/bin/
ln -s /usr/local/php5/sbin/* /usr/local/sbin/

8. PHP安装加速器

#解压软件包
tar xzvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /opt
#进入ZG目录下
cd /opt/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x
#复制ZendGuardLoader.so至php
cp ZendGuardLoader.so /usr/local/php5/lib/php/

9. 配置PHP识别加速器

vim /usr/local/php5/php.ini

#结尾处添加以下三行数据
[Zend Guard Loader]
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1

10. 开启nginx的PHP支持

#进入php的etc目录下
cd /usr/local/php5/etc/
#创建php-fpm.conf文件
cp php-fpm.conf.default php-fpm.conf
#创建php用户
useradd -M -s /sbin/nologin php

vi php-fpm.conf #修改

pid = run/php-fpm.pid #25行
user = php #140行
group = php #141行
pm.max_children=50 #217行
pm.start_servers = 20 #222行
pm.min_spare_servers = 5 #227行
pm.max_spare_servers = 35 #232行

11. 查看9000端口服务

netstat -tnal | grep 9000

12. 让nginx支持PHP功能

vi /usr/local/nginx/conf/nginx.conf

location ~ .php$ {
root /var/www/php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}

创建站点目录

mkdir -p /var/www/php

13. 新建站点首页文件

vim /var/www/php/index.php

#php配置页
<?php phpinfo(); ?>

14. 重启nginx

service nginx restart

测试:http:#192.168.100.5/index.php

四. 部署Discuz论坛

1. mysql数据库管理

#登录mysql
mysql -u root

#创建bbs数据库
mysql> CREATE DATABASE bbs;

#把bbs数据库里面所有表的权限授予给bbsuser,并设置密码
mysql> GRANT all ON bbs.* TO ‘bbsuser‘@‘%‘ IDENTIFIED BY ‘admin123‘;

#刷新数据库
mysql>flush privileges;

2. 新建mysql测试网页

vi /var/www/php/index.php

<?php
$link=mysql_connect(‘192.168.100.5‘,‘bbsuser‘,‘admin123‘);
if($link) echo "Success!!";
else echo "Fail!!";
mysql_close();
?>

通过客户端测试如下图即成功

3. 解压discuz论坛

unzip Discuz_X2.5_SC_UTF8.zip -d /opt/discuz

4. 进入dis目录

cd /opt/discuz

5. 将upload文件复制到web站点目录下

cp -r upload/ /var/www/php/bbs

6. 给文件夹修改属主

> chown -R php ./config
chown -R php ./data
chown -R php ./uc_client
chown -R php ./uc_server/data

7. 客户端通过http:192.168.100.5/bbs/install/index.php访问完成discuz论坛完成安装

原文地址:http://blog.51cto.com/10316297/2131072

时间: 2024-10-31 16:54:00

LNMP网站服务器部署的相关文章

网站服务器部署及优化---3---使用eAccelerator提升网站服务器的性能(rhel6.5)

RedHat Enterprise 6.5环境下使用eAccelerator优化网站性能 第一步:在做优化之前,首先对网站服务器的硬件做一下检测 1,内存信息:2G内存,swap容量为4G [[email protected] ~]# free -m total       used       free     shared    buffers     cached Mem:          1870       1228        642          0         47

网站服务器部署及优化---1---LAMP环境搭建(rhel6.5)

RedHat Enterprise 6.5 第一步:安装apache yum install -y httpd      安装相应软件包(前提是需要搭好yum源) service httpd start    启动apache服务 默认配置文件为:/etc/httpd/conf/httpd.conf 模块配置文件存放目录:/etc/httpd/conf.d 注:Apache可以通过扩展模块来扩充自己的功能,通常一个模块对应一个文件在/etc/httpd/conf.d目录下 /etc/httpd/

网站服务器部署及优化---2---部署wordpress网站(rhel6.5)

RedHat Enterprise 6.5环境下wordpress网站部署 第一步:下载wordpress网站压缩包并解压 [[email protected] data]# wget http://cn.wordpress.org/wordpress-3.9-zh_CN.zip -O wordpress.zip [[email protected] data]# unzip wordpress.zip [[email protected] data]# mkdir /var/www/html/

Centos 7搭建LNMP架构及部署Discuz论坛

一.LNMP架构及应用部署 众所周知,LAMP平台时目前应用最为广泛的网站服务器架构,其中的"A"对应着web服务软件的Apache HTTP Server ,随着Nginx在工作环境中的使用越来越多,LNMP(或LEMP)架构也受到越来越多的Linux运维工程师的青睐. 就像构建LAMP平台一样,构建LNMP平台也需要Linux服务器.MySQL数据库.PHP解析环境,区别主义在于Nginx与PHP的协作配置上. 准备工作 Centos 7操作系统一台:Windows 客户端一台:案

搭建lnmp环境,部署php动态网站

搭建LNMP 前言:"N"代表Nginx与apache的作用一样,都是为了搭建网站服务器,由俄罗斯人lgor sysoev开发,其特点是占有内存少,并发能力强,单台物理服务器可支持3万-5万个并发请求,中国使用nginx网站用户有:百度.京东.新浪.网易.腾讯.淘宝等. 通过下面的实验搭建LNMP环境,部署天空影城的php动态网站 本实验在虚拟机中运行,使用Redhat6.5系统部署! 一.安装及运行 1.搭建yum仓库,安装支持软件 nginx的配置及运行需要pcre,zlib等软件

Linux平台(Centos7)-lnmp一键式部署mysql,nginx,php,php-fpm服务

Linux平台(Centos7)-lnmp一键式部署mysql,nginx,php,php-fpm服务 1. 部署方式1:手动部署. 6 1.1. 配置防火墙. 6 1.2. 关闭firewall 6 1.3. 安装iptables防火墙. 6 1.4. 安装Apache 7 1.5. 安装MariaDB 9 1.5.1. 安装MariaDB 9 1.5.2. 启动服务. 10 1.5.3. 设置开机启动. 10 1.5.4. 为root账户设置密码. 11 1.5.5. 重启MariaDB 1

LNMP网站架构

LNMP网站架构 LNMP架构概述 LNMP就是Linux+Nginx+MySQL+PHP,Linux作为服务器的操作系统,Nginx作为Web服务器.PHP作为解析动态脚本语言.MySQL即为数据库. Linux作为服务器的操作系统. Nginx作为WebServer服务器. PHP 作为动态解析服务(php). MySQL作为后端存储数据库服务. Nginx服务本身不能处理PHP的请求,那么当用户发起PHP动态请求, Nginx又是如何进行处理的.用户-->http协议-->Nginx--

CA认证授权服务器部署

数字证书授权中心:CA →Certificate Authority - 被通信双方信任的.独立的第三方机构 - 负责证书颁发.验证.撤销等管理 国内常见的CA机构 - 中国金融认证中心(CFCA) - 中国电信安全认证中心(CTCA) - 北京数字证书中心(BJCA) PKI公钥基础设施 - PKI是一套标准的密钥管理平台; - 通过公钥加密.数字证书技术确保信息安全; PKI体系基本组成 - 权威认证机构(CA) - 数字证书库.密钥备份及恢复系统 - 证书作废系统.应用接口 web网站把公

详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点

转载请注明出处:http://blog.csdn.net/smartbetter/article/details/53615313 上一篇分享了 Nginx + Tomcat 反向代理 负载均衡 集群 部署指南,感觉还是相当实用型的,但是一般集群部署是基于大访问量的,可能有的企业用不到,类似一些企业官网,访问量并不是很大,基于这个新需求,今天专门为大家分享一下 Nginx + Tomcat 反向代理 如何在一台服务器部署多个站点,节省服务器开支,就在这篇文章了. 首先我们需要安装好Nginx.j