LAMP配置
apache配置图
Mysql安装配置
-
/usr/local/src
软件包全放在这里面方便管理 -
下载 mysql压缩包
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
-
tar -zxvf 压缩包 进行解压
-
安装和配置 添加一个mysql用户
useradd -s /sbin/nologin mysql
建立MySQL用户,因为启动MySQL需要该用户,/sbin/nologin
用户无法使用bash
或其他shell
来登陆系统 -
mkdir -p /data/mysql
创建数据文件 mysql的数据信息存在 这里datadir
-
chown -R mysql:mysql /data/mysql
更改文件所属用户和用户组 -
[ -d /usr/local/mysql ] && mv /usr/local/mysql /usr/local/mysql_old
&&相当于一个判断,意前面命令执行才会执行后面 -
mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql
移动位置 -
cd /usr/local/mysql
-
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
指定mysql的用户名和数据信息目录
- 如果出现错误 安装
yum install -y perl perl-devel autoconf
cp support-files/my-default.cnf /etc/my.cnf
因为系统默认就有/etc/my.cnf,所以会提示是否覆盖,直接按“y”即可- 修改配置文件
my.ini
basedir 是mysql包所在的位置 datadir是mysql数据包所在的位置 port 是mysql监听的端口号 server_id是mysql服务的id socket我t定 义MySQL服 务 监 听的套接字地址,在Linux系统下面,很多服务不仅可以监听一个端口(通过TCP/IP的方式通信),也可以监听socket,两个进程就可以通过这个socket文件通信。
-
cp support-files/mysql.server /etc/init.d/mysql
复制启动脚本 并修改其属性 -
chmod 755 /etc/init.d/mysql
赋予启动文件权限 -
编辑启动文件
vi /etc/init.d/mysql
修改启动脚本的basedir 和 datadir
basedir=/usr/local/mysql
datadir=/data/mysql
-
将mysql添加到服务
chkconfig --add mysql
-
chkconfig mysql on
开机启动mysql -
service mysql start
启动mysql服务
-
yum install net-tools
安装依赖 -
netstat -ltunp |grep 3306
根据端口号 抓取mysql服务
Apache搭建
-
下载
httpd-2.4.46.tar.gz、apr-1.6.5.tar和apr-util-1.6.1.tar
-
然后分别进行解压
tar -zxvf
-
cd /usr/local/src/apr-1.6.5
-
./configure --prefix=/usr/local/apr
为编译做准备 指定安装目录 必须安装gcc c语言环境 -
如果报错
“rm: cannot remove 'libtoolT': No such file or directory”
-
vi configure
将RM='$RM'改为RM='$RM -f'
-
编译安装 apache
make && make install
-
cd /usr/local/src/apr-util-1.6.1.
-
yum install expat-devel
-
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
指定安装目录 关联apr -
make &&make install
编译安装 -
cd /usr/local/src/httpd-2.4.46
-
yum install -y pcre pcre-devel
-
./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-mods-shared=most
//--perefix
指定安装目录//--enable-so
表示启用DSO //--enable -mods- shared
表示以共享形式安装模块 -
编译安装
make && make install
-
如果报错
“collect2: error: ld returned 1 exit status make[2]: *** [htpasswd] Error 1”
-
cd /usr/local/src/
-
cp -r apr-1.6.5 /usr/local/src/httpd-2.4.46/srclib/apr
复制 apr到httpd中
-
-
cp -r apr-util-1.6.1 /usr/local/src/httpd-2.4.46/srclib/apr-util
-
如果还是不行,重新执行configure命令,添加一个编译参数:
--with-included-apr
再执行make clean all
make && make install
-
-
/usr/local/apache2.4/bin/apachectl -M
查看配置文件-
-M
查看配置文件有哪些文件//share字样的动态共享模块,static以静态形式存在
-
安装PHP
- 下载资源包 tar
- tar -zxvf进行解析
yum install -y libxml2-devel openssl openssl-devel bzip2 bzip2-devel libpng libpng-devel freetype freetype-devel epel-release libmcrypt-devel libjpeg-turbo libjpeg-turbo-devel
yum install -y libmcrypt-devel
提前安装库文件cd php-5.6.30
yum install bzip2-devel.x86_64 -y
./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-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
make && make install
编译安装
httpd解析php
vim /usr/local/apache2.4/conf/httpd.conf
编辑主配置文件- 搜索ServerName,把
ServerName www.example.com:80
前#去掉 ServerName提供服务器用来标识自身的名称和端口。 - 将文档中的
<Directory />
AllowOverride none
Require all denied
</Directry>
修改为
<Directory />
AllowOverride none
Require all granted # 允许所有请求访问
</Directory>
-
搜索
AddType application/x-gzip .gz .tgz
,在下面添加一行AddType application/x-httpd-php .php
; -
<IfModule dir_module> DirectoryIndex index.html </IfModule>
给为
<IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
-
测试安装
/usr/local/apache2.4/bin/apachectl -t
-
/usr/local/apache2.4/bin/apachectl start
启动httpd
curl localhost
vim /usr/local/apache2.4/htdocs/1.php
curl localhost/1.php
- 安装成功
Apache配置
默认虚拟主机
虚拟主机(共享主机,又称虚拟服务器)是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术。虚拟主机之间完全独立,并可由用户自行管理,虚拟并非指不存在,而是指空间是由实体的服务器延伸而来,其硬件系统可以是基于服务器群,或者单个服务器。
-
编辑httpd.conf搜索httpd-vhosts,去掉#号
-
vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
编辑虚拟主机配置文件-
<VirtualHost *:80> # 指定管理员 邮箱 ServerAdmin webmaster@dummy-host.example.com # 为该虚拟主机站点的根目录 DocumentRoot "/usr/local/apache2.4/docs/abc.com" # 服务名 站点域名 ServerName abc.com # 站点的第二域名 ServerAlias www.abc.com aaa.com # 错误日志存储的目录 ErrorLog "logs/abc.com-error_log" # 访问日志 CustomLog "logs/abc.com-access_log" common </VirtualHost> <VirtualHost *:80> DocumentRoot "/usr/local/apache2.4/docs/111.com" ServerName 111.com ErrorLog "logs/111.com-error_log" CustomLog "logs/111.com-access_log" common </VirtualHost>
-
-
在apache下建立 虚拟主机目录 docs
mkdir docs
-
mkdir abc.com
-
vi abc.com/index.html
写入abc.com
-
mkdir 111.com
写入 111.com -
/usr/local/apache2.4/bin/apachectl -t
测试是否正确 -
/usr/local/apache2.4/bin/apachectl graceful
刷新配置 -
curl -xlcoalhost:80 www.abc.com
测试