设为首页 收藏本站
查看: 1545|回复: 0

LAMP的搭建(rpm、源代码安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-3-10 17:52:58 | 显示全部楼层 |阅读模式
RPM构建LAMP平台
源码编译构建LAMP平台
部署PHP网站应用
Crossday Discuz! Board(以下简称 Discuz!,中国国家版权局著作权登记号 2006SR11895)
是康盛创想(北京)科技有限公司(英文简称Comsenz)推出的一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,
通过简单的设置和安装,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的论坛服务。
Discuz! 的基础架构采用世界上最流行的web编程组合PHP+MySQL实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。

LAMP-- Linux、Apache、MySQL、PHP/Perl/Python
LNMP-- Linux、Nginx、MySQL、PHP/Perl/Python
    (LEMP)
L  Linux 操作系统
A  apache   提供网站服务的软件
N  nginx提供网站服务的软件
M  mysql    提供数据库服务的软件
P  PHP      动态网站开发语言

一、RPM方式构建LAMP平台

1) 安装各组件
[iyunv@svr ~]# yum -y install httpd mysql-server mysql php php-mysql php-pdo php-mbstring

2)配置各组件
[iyunv@svr ~]# cp /etc/httpd/conf/httpd.conf{,.bak}  //将配置文件备份
[iyunv@svr ~]# vim /etc/httpd/conf/httpd.conf   //修改配置文件
ServerName svr.roy.com    //服务器名字
DocumentRoot "/var/www/html"   //网页文件路径
DirectoryIndex index.php index.html   //首页文件

MySQL配置文件:/etc/my.cnf
MySQL库存放路径:/var/lib/mysql
PHP配置文件: /etc/php.ini

3)启动各组件服务
[iyunv@svr ~]# service httpd restart   //重启服务
[iyunv@svr ~]# chkconfig httpd on     //添加开机启动
[iyunv@svr ~]# service mysqld restart
[iyunv@svr ~]# chkconfig mysqld on
php组件不需要启动,以模块方式被httpd加载


4)测试
[iyunv@svr ~]# vim  /var/www/html/test1.php
<?php
phpinfo();  //输出PHP环境相关信息
?>
[iyunv@svr ~]# vim /var/www/html/test2.php
<?php
$link=mysql_connect('localhost','test','');     //连数据库
if($link) echo "恭喜你,数据库连接成功啦 !!";   //成功时的提示
mysql_close();      //关数据库
?>
浏览器中输入:http://IP/test1.php




二、源码编译构建LAMP平台

1. 卸载/移除冲突软件包   //如果是全新的环境。是不需要进行卸载操作的
[iyunv@svr ~]# yum -y remove httpd mysql-server mysql php php-mysql php-pdo php-mbstring
[iyunv@svr ~]# rm -rf /var/lib/mysql/ /etc/my.cnf
##配置   编译  安装
##./configure  --help
2. 安装各组件

##【编译安装httpd】
##--prefix=:指定安装目录
##--enable-so:支持动态加载模块
##--enable-rewrite :支持网站地址重写
##--enable-cgi:支持CGI程序脚本
##--enable-charset-lite:支持多语言编码
##--enable-ssl:支持SSL加密   https://
##--enable-suexec:支持setuid权限封装
##--with-suexec-caller=:指定suEXEC用户
##--with-suexec-docroot=:指定suEXEC目录

[iyunv@svr ~]# ./configure  --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-cgi --enable-ssl --enable-charset-lite --enable-suexec --with-suexec-caller=daemon --with-suexec-docroot=/usr/local/httpd/htdocs

[iyunv@svr ~]# make  &&  make install

##安装目录下 /usr/local/httpd
##    htdocs  网页文件存放目录
##    bin     执行命令目录   apachectl  源码网站服务的启动脚本
##           ./bin/apachectl start|stop
##    logs    日志文件存放的目录 (访问日志  错误日志)
##    conf    主配置文件存放目录   httpd.conf
##    modules 模块文件存放的目录

[iyunv@svr ~]# netstat -utnalp | grep :80

[iyunv@svr ~]# /usr/local/httpd/bin/apachectl start|stop

[iyunv@svr httpd]# elinks  --dump http://localhost
##                    It works!
[iyunv@svr httpd]# echo "hello roy " > /usr/local/httpd/htdocs/a.html
[iyunv@svr httpd]# elinks  --dump http://localhost/a.html
##        显示消息为   hello roy


为http添加到服务里面
[iyunv@svr ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[iyunv@svr ~]# vim /etc/init.d/httpd
            #!/bin/sh
            # chkconfig: 35 85 15
            # description: Apache is a World Wide Web Server
            .. ..
[iyunv@svr ~]# chkconfig --add myhttpd
[iyunv@svr ~]# chkconfig --list myhttpd
myhttpd         0:关闭  1:关闭  2:关闭  3:启用  4:关闭  5:启用  6:关闭

[iyunv@svr ~]# vim /usr/local/httpd/conf/httpd.conf
ServerName svr.roy.com
.. ..
[iyunv@svr ~]# service myhttpd start


【编译安装mysql】
1) 添加运行用户
[iyunv@svr ~]# useradd -M -u 49 -s /sbin/nologin mysql

2) 解包、配置、编译及安装
[iyunv@svr ~]# yum -y install ncurses-devel libtermcap-devel

[iyunv@svr ~]# cd /var/ftp/pub/
[iyunv@svr pub]# tar zxf mysql-5.1.62.tar.gz
[iyunv@svr pub]# cd mysql-5.1.62
[iyunv@svr mysql-5.1.62]# ./configure  --prefix=/usr/local/mysql --with-charset=utf8   --with-collation=utf8_general_ci   --with-extra-charsets=gbk,gb2312

[iyunv@svr mysql-5.1.62]# make
[iyunv@svr mysql-5.1.62]# make install

3) 初始化设置
[iyunv@svr ~]# cd  /var/ftp/pub/mysql-5.1.62/support-files/
创建源码数据库服务的配置文件  /etc/my.cnf  [mv /etc/my.cnf  /etc/my.cnf.bak ]
[iyunv@svr support-files]# cp  my-medium.cnf /etc/my.cnf    //复制样本配置文件

[iyunv@svr support-files]# cd /usr/local/mysql/bin/
[iyunv@svr bin]# ./mysql_install_db  --user=mysql
启动数据库服务
mysqld_safe --user=mysql &
[iyunv@svr5 mysql]# jobs
[1]+  Running                 mysqld_safe --user=mysql &

4) 权限调整及执行优化
[iyunv@svr bin]# chown -R root:mysql /usr/local/mysql/
[iyunv@svr bin]# chown -R mysql /usr/local/mysql/var/     //使用mysql有权写库

[iyunv@svr bin]# ln -s /usr/local/mysql/bin/*  /usr/local/bin/
[iyunv@svr bin]# ln -s /usr/local/mysql/lib/mysql/*  /usr/lib64/
[iyunv@svr bin]# ln -s /usr/local/mysql/include/mysql/*  /usr/include/

5) 添加为系统服务
[iyunv@svr bin]# cd  /var/ftp/pub/mysql-5.1.62/support-files/
[iyunv@svr support-files]# cp  mysql.server  /etc/init.d/mysqld
//复制服务脚本

[iyunv@svr support-files]# chmod  +x  /etc/rc.d/init.d/mysqld
[iyunv@svr support-files]# chkconfig  --add  mysqld

[iyunv@svr support-files]# service mysqld restart


【安装源码的php】
--prefix=:指定安装目录
--enable-mbstring:支持多字节字符
--with-apxs2:指定httpd的模块工具位置
--with-mysql:指定mysql的安装位置
--enable-sockets:启用套接字支持
--with-config-file-path=:指定配置路径

             apxs
              |
             httpd  -> php模块
http://192.168.1.200/a.php

[iyunv@svr ~]# ./configure --prefix=/usr/local/php --enable-mbstring --enable-sockets  --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php


[iyunv@svr ~]# make  &&  make install

创建php的配置文件 php.ini
[iyunv@svr ~]# cd  php-5.4.19
[iyunv@svr ~]# cp  php.ini-production  /usr/local/php/php.ini
default_charset = "UTF-8"  //默认字符集
file_uploads = On  //允许上传
upload_max_filesize = 4M  //可上传的最大文件
post_max_size = 8M  //最大POST提交的容量


【测试搭建lamp 环境】
1 测试网站服务能不能解释.php的网页页面文件

vim /usr/local/httpd/conf/httpd.conf
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php  .php

[iyunv@svr ~]# /usr/local/httpd/bin/apachectl stop
[iyunv@svr ~]# /usr/local/httpd/bin/apachectl start
[iyunv@svr ~]# cat /usr/local/httpd/htdocs/test.php
<?php
phpinfo();
?>

在浏览器里输入 http://网站服务器的ip地址/test.php



2、测试php程序能否连接数据库

[iyunv@svr htdocs]# pwd
/usr/local/httpd/htdocs
[iyunv@svr htdocs]# vim linkdb.php
<?php
$linkdb=mysql_connect("localhost","root","");
if($linkdb){
    echo "link db  ok";
}else{
    echo "link db no";
}
?>
http://192.168.1.200/linkdb.php


【LAMP+Discuz】
http://192.168.1.200/Discuz

1、unzip   Discuz_X3.0_SC_UTF8.zip
2、mv upload/ /usr/local/httpd/htdocs/Discuz
3、让daemon用户对论坛文件有访问权限
cd  /usr/local/httpd/htdocs/Discuz
chown -R daemon  config/  data/  uc_server/
chown -R daemon  template/  uc_client/

4 添加授权用户
[iyunv@svr ~]# mysql  -u  root
mysql> CREATE DATABASE Discuzdb;
mysql> GRANT all ON Discuzdb.* TO 'webuser'@'localhost' IDENTIFIED BY '123456';
mysql> quit

5 安装discuz论坛
在服务器上打开浏览器 http://192.168.1.200/Discuz/install/index.php


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-189157-1-1.html 上篇帖子: linux下单机LAMP网站架构 下篇帖子: LAMP搭建UCenter 源代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表