搭建LAMP
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建LAMP相关的知识,希望对你有一定的参考价值。
LAMP概念
(1)LAMP是主流的web架构,Linux+Apache+mysql|Mariadb+php|Perl | Python 组合成的
(2) Linux开源免费的操作系统,Centos6.8 ,Centos7.3开源,方便维护
(3) Apache开源的web服务器,使用量最多的web服务器,基于Http协议发布web静态网页,
而且只能发布静态页面。
(4) MySQL是关系型数据库系统,存储用户信息,银行卡号,订单信息,论坛用户信息等
(5) PHP是一门解释型的脚本动态语言,基于PHP页面开发PHP网页代码
(6) LAMP联合组成主流的web架构,可以发布门户网站,以PHP为代表的动态网页+html为代表的
静态网页
LAMP架构原理
(1) 用户在浏览器上输入,www.jfedu.net域名回车,浏览器会检查域名对应的ip地址
(2) 浏览器会检查本地主机的host文件,c:\windows\system32\drivers\etc\hosts,查找hosts
文件中是否有www.jfedu.net对应的ip地址
(3) 如果hosts文件中,有域名对应的ip地址,浏览器会直接开始HTTP请求
(4) 如果hosts文件中,没有域名对应的ip,浏览器会向DNS服务请求
(5) 此时Apache web收到浏览器发送的HTTP请求,会检查用户请求的具体文件,默认请求index.php,
Apache检查httpd.conf配置文件的ADDTYPE的php后缀
(6) Apache检查到用户请求的文件是以.php结尾的文件,会从硬盘,内存上读取该文件,将文件传递给PHP模块(PHP解释器)PHP解释器会解析以.php结尾的文件,如果需要调用数据库的数据,PHP会连接MySQL驱动,去调用MySQL数据库中的数据,解析成静态文件
(7) 用户浏览器收到该页面,通过MIME类型,调用本地插件来解析和渲染内容,最终浏览器会把界面展示给用户
LAMP源码实战(LAMP部署在一台服务器上)
Discuz论坛安装
Apache 安装
(1) 下载wget
yum install wget -y
(2) 下载Apache安装包
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.2.34.tar.gz
(3) 解压Apache
tar -xjvf httpd -2.2.34.tar.gz
(4) 进入Apache安装目录,执行预编译,编译,安装
cd httpd -2.2.34
预编译: ./configure --prefix=/usr/local/apache2/ --enable-rewrite --enable-so --enable-ssl 预编译报错解决方案: configure:error: in `/usr/local/src/httpd-2.2.21/srclib/apr‘: configure:error: no acceptable C compiler found in $PATH 解决办法是安装:yum install gcc -y no SSL-C headers found configure: error: ...No recognized SSL/TLS toolkit detected 解决办法是安装: yum install openssl-devel -y make(编译) make install (安装) |
(5) Apache配置前,记得关闭防火墙和selinux
关闭selinux setenforce 0
防火墙: service iptables stop
(6) 在httpd.conf 配置文件中去掉#注释行,Include conf/extra/httpd-vhosts.conf
(7) 在httpd-vhosts.conf 配置虚拟主机
<VirtualHost*:80> ServerAdmin [email protected] DocumentRoot"/usr/local/apache2/htdocs/discuz" ServerName www.discuz.com ErrorLog"logs/www.discuz.com-error_log" CustomLog"logs/www.discuz.com-access_log" common </VirtualHost>
<VirtualHost*:80> ServerAdmin [email protected] DocumentRoot"/usr/local/apache2/htdocs/wordpress" ServerName www.wordpress.com ErrorLog"logs/www.wordpress.com-error_log" CustomLog"logs/www.wordpress.com-access_log" common </VirtualHost> |
(8) hosts文件路径c:\\windows\System32\drivers\etc 在hosts文件中,把域名和ip一一对应
(9) /usr/local/apache2/bin/httpd-k start 启动apache web服务器
(10) 测试www.wordpress.com www.discuz.com访问是否成功
MySQL安装
(1) 下载MySQ软件包
wget http://down1.chinaunix.net/distfiles/mysql-5.5.20.tar.gz
(2) 解压MySQL
tar -xzvf mysql -5.5.20.tar.gz
(3) 安装MySQL必备环境
yum install ncurses-devel perl gcc gcc-c++ wget cmake nurses make
(4) 进入MySQL安装目录,执行cmake make make install
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock\ -DMYSQL_DATADIR=/data/mysql/\ -DSYSCONFDIR=/etc\ -DMYSQL_USER=mysql\ -DMYSQL_TCP_PORT=3306\ -DWITH_XTRADB_STORAGE_ENGINE=1\ -DWITH_INNOBASE_STORAGE_ENGINE=1\ -DWITH_PARTITION_STORAGE_ENGINE=1\ -DWITH_BLACKHOLE_STORAGE_ENGINE=1\ -DWITH_MYISAM_STORAGE_ENGINE=1\ -DWITH_READLINE=1\ -DENABLED_LOCAL_INFILE=1\ -DWITH_EXTRA_CHARSETS=1\ -DDEFAULT_CHARSET=utf8\ -DDEFAULT_COLLATION=utf8_general_ci\ -DEXTRA_CHARSETS=all\ -DWITH_BIG_TABLES=1\ -DWITH_DEBUG=0 make make install |
(5) 将MySQL设置为系统服务
cd /usr/local/mysql cp support-files/my-large.cnf /etc/my.cnf cp mysql.server /etc/init.d/mysqld useradd mysql mkdir -p /data/mysql /usr/local/mysql/scripts/mysql_install_db --user=mysql--datadir=/data/mysql/--basedir=/usr/local/mysql/ 对mysql进行初始化 |
(6)启动MySQL
/etc/init.d/mysqld start
PHP安装
(1) 下载PHP软件包
wget http://mirrors.sohu.com/php/php-5.3.28.tar.bz2
(2) 解压PHP软件包
tar -xjvf php-5.3.28.tar.bz2
(3) 进入PHP安装目录,执行.configure/ make make install
./configure--prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/ make make install 报错内容: configure:error: xml2-config not found. Please check your libxml2 installation 解决办法: yum install libxml2-devel –y |
(4)Apache+ PHP整合
LoadModule php5_module modules/libphp5.so 这句内容是PHP和Apache整合后,在httpd.conf文件中自动添加的 AddType application/x-httpd-php .php Apache 识别.php文件 DirectoryIndex index.php index.htmlindex.htm |
Discuz安装
(1) 下载Discuz软件包
wget http://download.comsenz.com/DiscuzX/3.1/Discuz_X3.1_SC_UTF8.zip
(2) 解压Discuz软件包
unzip Discuz_X3.1_SC_UTF8.zip
(3) 进入upload目录,把php文件拷贝到/usr/local/apache2/htdocs/discus
(4) 重启Apache网站是否成功
(5)授权apache用户,可以访问data/ config/ uc_* 目录有写的权限
chmod o+w -Rdata/ config/ uc_*
(6) 授权数据库
grant all on ultrax.* to [email protected]‘192.168.2.107‘ identified by "jf123456";
注释:
授权192.168.2.107这个机器可以访问ultrax数据库
(7) 搭建成功的截图
本文出自 “运维之道” 博客,请务必保留此出处http://linuxzdq.blog.51cto.com/11196076/1974804
以上是关于搭建LAMP的主要内容,如果未能解决你的问题,请参考以下文章