2018-6-25笔记

LAMP架构介绍

Apache通过PHP与mysql进行沟通(动态)

11.2 MySQL;MariaDB介绍

10.3 10.4 10.5MySQL安装(上)(中)(下)

MySQL的常用安装方法:rpm包(没办法定义安装路径)、源码编译、二进制免编译安装(事先编译好的,可以自定义放置目录)

首先下载安装包(根据平台下载所需包)

# wget …网址…

可以将会用到的软件包 放到/usr/local/src/下,便于查找

下载完成后首先进行解压:

# tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

为方便实用,更改目录并改名为mysql

# mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql

# cd /usr/local/mysql/

# ls

# useradd mysql 创建mysql用户

#mkdir /data/  创建一个data目录

#./scripts/mysql_install_db  --user=mysql–datadir=/data/mysq/(/data/mysql/)初始化文件并指定用户名和数据存放目录

提示:初始化时,缺少依赖包

安装perl

# yum list |grep perl -I dumper 不确定安装时候选择模糊查找或者直接上网搜索

# yum install -y perl-Data-Dumper 这个就是所依赖的包

检验,用过里面的ok字样,或者。。。echo $?

接下来拷贝配日志文件和启动脚本,# cp support-files/my-defauit.cnf  /etc/my.cnf


拷贝启动脚本:

# cp support-files/mysql.server /etc/init.d/mysqld

修改:

修改权限为755,并加入系统服务列表内,保证开机启动

启动:# service mysqld start

查看进程:# ps aux |grep mysql

查看端口# netstat -lntp

命令行启动:、

关闭,除了关闭服务外还可以# killall mysqld


   如果脚本,不能放到/etc/init.d/下,或者没有脚本模板

mysql 常用引擎:innodb myisam

11.6 安装maiadb

安装过程类似mysql

初始化过程中有配置了一个basedir,可以避免与mysql冲突

拷贝,提供多个模板文件

编辑配置文件、脚本:

 

定义conf后要启动

启动

11.7 11.8 1.9 安装Apache(上)(中)(下)

下载3个包在src目录下

wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.26.tar.gz

wget http://mirrors.cnnic.cn/apache/apr/apr-1.5.2.tar.gz

wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.bz2

解压

 tar -zxvfhttpd-2.4.26.tar.gz

tar -zxvfapr-1.5.2.tar.gz

tar -bxvfapr-util-1.5.4.tar.bz2

首先安装apr(进入apr目录)

这里安装可能会提示缺少gcc # yum install -y gcc安装

cd apr-1.5.2.tar.gz

./configure--prefix=/usr/local/apr   安装 prefix指定安装路径

安装完后# echo $? 检查是否成功

make&&make install 编译

安装apr-util

cd apr-util-1.5.4.tar.bz2

./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr 需要指定apr

# echo $?

make&&makeinstall 

安装httpd

cd httpd-2.4.33.tar.gz

yum install -ypcre-devel.x86_64

./configure--prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util  --enable-so --enable-mods-shared=most  (指定支持动态扩展(so)指定支持加载哪些模块(most))

可能缺少pcre,直接安装


make

make install

安装完成

启动

apache目录下介绍

bin/httpd ---启动文件(核心)

conf  --配置文件

htdocs  --存放访问页(默认网站放在这)

logs ----错误/访问日志

modules  --扩展模块

11.10 11.11 11.12 安装php(上)(中)(下)


下载php

wgethttp://cn2.php.net/distributions/php-5.6.32.tar.bz2

安装

./configure--prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs--with-config-file=path=/usr/local/php/etc --with-mysql=/usr/local/mysql/--with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config--with-libxml-dir --with-gd-with-jpeg-dir --with-png-dir --with-freetype-dir--with-iconv-dir --with-zzlib-dir --with-bz2 --with-openssl --with-mcrypt--enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets--enable-exif

echo $?

(--with-apxs2=/usr/local/apache2.4/bin/apxs

apxs 为httpd的一个工具,因为有它才会自动把PHP模块安装到httpd的modules目录下,也就是说php将会以一个模块的形式和httpd结合在一起工作)

make&&imakeinstall 编译

在编译过程中可能会提示报错,像是少库之类的:

错误1:check you libxml2installation 

解决方法: yum install -y libxml2-devel

错误2:cannot findOpenSSL's<evp.h>

解决方法;yum install -y openssl-devel

错误3: checking for BZip2 in default path...not found

解决方法:yum install -y bzip2-devel

错误4:configure:error:png.h not found.

解决方法:yum install -y libpng-devel

错误5:configure :error:freetype.h not found  

解决方法;yum install -y freetype-devel

错误6;erroe; mcrypt.h not found . Please reinstall libmcrypt

解决方法;yum install -y epel-release

               yum install -y libmcrypt-devel

                 (centos默认的源没有libmcrypt-devel这个包,所以要借助安装epel扩展源来安装)

echo $?

PHP和httpd通过libphp5.so来结合一起

查看apache加载了那些模块(可以看到下面有个php5模块,说明apache要想执行pho文件和脚本需要依赖这个模块)而php模块时跟mysql打交道。 

查看php加载了那些模块

 

编辑apache的配置文件 

打开:vim /usr/local/apache2.4/conf/httpd.conf  --搜php5

下图可以看到显示自动增加了一行php5模块。#号注释掉的都不会加载出来,相反要想加载把#号去掉

 

/usr/local/php/bin/php-i |less  --查看php信息(查看到之前编译参数)

拷贝php配置文件

cpphp.ini-production  /usr/local/php/etc/php.ini  (适合用在生产环境使用)

cpphp.ini-development /usr/local/php/etc/php.ini (适合在测试环境使用)

11.13 安装PHP7

方法与PHP5大同小异

1. wgethttp://cn2.php.net/distributions/php-7.1.6.tar.bz2

2../configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2.4/bin/apxs--with-config-file=path=/usr/local/php7/etc --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config--with-libxml-dir --with-gd-with-jpeg-dir --with-png-dir --with-freetype-dir--with-iconv-dir --with-zzlib-dir --with-bz2 --with-openssl --with-mcrypt--enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets--enable-exif

3.make&&make install

4.cp  php.ini-production /usr/local/php7/etc/php.ini  

11.14 11.15Apache与PHP结合(上)(下)

编辑配置文件:

关闭这个提示,修改配置文件中ServerName

 

1.编辑httpd的配置文件,去掉的井号。(可以让apache启动的时候不出现如下图类似错误的提示,)


如果再次启动的时候出现如下错误,可能是文件里加载了两个php


如下图我们注释掉其中一个php


2.改成。(如果不改掉在浏览器访问本机ip会是forbidden,状态码是403,)

(在浏览器打开ip地址的时候404,遇到这种情况我们排查的时候可以先用windows运行ping一下ip通不通,然后再看看端口通不通,用运行看端口通不通的时候会提示没有该命令


我们需要设置一下,在windows的控制面板里,程序和功能里的打开或关闭windows功能里,然后点击然后点确定。

如果80端口通的,那么就会显示空白,如果端口不通会显示正在连接,如果端口不通那么一定是linux没有打开端口,我们可以给它临时加上80端口,之后浏览器应该就可以访问了。)

3.因为我们要支持php,所以要增加一行和php有关的配置在这个位置,


增加一个索引页,把改成(可以让你访问网页的时候不加index.php也能访问主页)

改好之后使用检查配置语法是否正确,然后重新加载配置文件,(这里分享一个快捷键,使用ctrl+r键,然后输入命令的部分可以调用历史记录里的命令)

我们可以来验证一下现在apache到底支不支持解析php呢,我们可以写一个测试的php脚本:

然后在里面添加并保存,他可以吧php相关信息打印出来,然后在浏览器打开ip地址后面加/1.php,如果出现一个表格就说明php支持解析了,如果不支持解析就会显示我们刚刚添加的源代码。

如果解析不了就要看看Apache配置文件,看看有没有加载php5


查看看有没有这个模块

如果有模块需要检查一下配置文件

看看里面有没有加载php5的这行配置


如果有那么我们继续检查配置文件里有没有加

 

 


扩展::::

 

https://www.cnblogs.com/sos-blue/p/6852945.html

https://jingyan.baidu.com/article/b87fe19eb57ff252183568d9.html

安装discuz   前创建mysql用户名密码

apache apxshttp://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/apxs.html
apache工作模式 http://www.cnblogs.com/fnng/archive/2012/11/20/2779977.html
php中mysql,mysqli,mysqlnd,pdo到底是什么http://blog.csdn.net/u013785951/article/details/60876816
查看编译参数 http://ask.apelearn.com/question/1295


 

 

 

 

 

 

 

 

 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值