虚拟机中安装ifconfig
yum install -y net-tools
安装vim
vim install -y vim
家目录下.bash_profile为用户初始化文件
vim .bash_profile
添加LANG=zh_CN.GB2312,使用远程文件登录时候可显示中文
进入到/var/local/,新建rar存放apache,mysql,php源码,lamp安装apache,mysql,php目录,www网站根目录
cd /var/local
mkdir rar lamp www
官方下载php,apache,mysql后缀格式为tar.gz的源码并上传
解压压缩包:
tar -xzvf httpd-2.2.31.tar.gz
tar -xzvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
tar -xzvf php-7.0.6.tar.gz
如果嫌长的话,解压后重命名为名称 版本号:
mv httpd-2.2.31 apache-2.2
mv mysql-5.7.12-linux-glibc2.5-x86_64 mysql-5.7
mv php-7.0.6 php-7.0
好了,所有准备工作完成,快照备份!
安装apache三步走
apache根目录使用命令:./configure --prefix = 安装目录 make make install
./configure --prefix = /var/local/lamp/apache-2.2
make
make install
进入到apache安装目录,并开启apache
cd /var/local/lamp/apache-2.2
./bin/apachectl start
发现出现:httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
暂时先不处理
使用curl 127.0.0.1访问本机
发现出现It works!说明apache实际上已经安装好了,好了,我们来解决以上的问题
使用./bin/apachectl stop关闭apache
修改apache配置文件
vim conf/httpd.conf
/ServerName搜索,并在下方添加
ServerName localhost
并保存退出
cd /var/local/lamp/apache-2.2开启apache发现警告已经消失
这时候我们可以添加一个域名为lamp.com的虚拟机
首先同样修改apache配置文件
找到#Include conf/extra/httpd-vhosts.conf取消前边的#保存退出
vim conf/extra/httpd-vhosts.conf
添加
ServerAdmin webmaster@lamp.com
DocumentRoot "/var/local/www/lamp"
ServerName lamp.com
ServerAlias www.lamp.com
ErrorLog "logs/lamp.com-error_log"
CustomLog "logs/lamp.com-access_log" common
保存退出
进入到/var/local/www/目录,新建lamp文件夹并在文件夹下新建一个内容为lamp index 的index.html文件
编辑/etc/hosts文件在最后面添加127.0.0.1 lamp.com www.lamp.com
停止并重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
curl lamp.com
出现403错误>You don't have permission to access on this server.
编辑apache配置文件 vim conf/httpd.conf
找到
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
修改Deny from all为Allow from all
停止并重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
然后在访问lamp.com
curl lamp.com
发现出现 lamp html
代表apache启动正常。
使用ifconfig查看虚拟机ip
linux虚拟机的ip是192.168.1.118
然后使用本机浏览器访问192.168.1.118,发现无法打开,原因为虚拟机80端口未开放
linux中使用命令:iptables -I INPUT -p TCP --dport 80 -j ACCEPT 开放80端口
本机再次访问192.168.1.118出现lamp index访问成功
至此apache安装完成
快照备份!
安装mysql
由于mysql的是通用二进制版本,所以首先必须要将mysql源码复制到lamp目录下,
使用命令cp -a /var/local/rar/mysql-5.7 /var/local/lamp/mysql-5.7
官方安装说明表示:mysql的安装依赖于libaio,所以首先安装libaio
使用命令 yum install -y libaio
添加mysql用户组与mysql用户,并且禁止mysql登录
group mysql
useradd -r -g mysql -s /bin/false mysql
进入到mysql根目录
cd /var/local/lamp/mysql-5.7/
新建mysql-files文件夹
mkdir mysql-files
修改用户与用户组
chown -R mysql:mysql /var/local/lamp/mysql-5.7
修改mysql配置文件
cp -a /var/local/lamp/mysql-5.7/support-files/my-default.cnf /etc/my.cnf
vim /etc/my.com
修改
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
为
basedir = /var/local/lamp/mysql-5.7
datadir = /var/local/lamp/mysql-5.7/data
port = 3306
server_id = 1
socket = /var/local/lamp/mysql-5.7/mysql.sock
然后执行初始化命令 ./bin/mysqld --initialize --user=mysql
warning警告忽略,最下边出现一行[Note] A temporary password is generated for root@localhost: foy>gc5kneVi,
最后面的foy>gc5kneVi就是mysql数据库root的初始化密码
然后执行初始化命令./bin/mysql_ssl_rsa_setup
使用./support-files/mysql.server start开启mysql
出现Starting MySQL.. SUCCESS!,mysql开启成功
./bin/mysql -uroot -p链接数据库,输入密码foy>gc5kneVi
出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'
修改/etc/my.cnf文件
在[mysqld]上边添加
[client]
socket = /var/local/lamp/mysql-5.7/mysql.sock保存退出
使用./support-files/mysql.server stop关闭mysql
使用./support-files/mysql.server start开启mysql
./bin/mysql -uroot -p链接数据库,输入密码foy>gc5kneVi
出现mysql>说明链接成功
链接成功,我们来展示下所有数据库show databases;
出现ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
不要着急,这是因为初始化密码需要修改后才可以使用
先在输入mysql命令SET PASSWORD=PASSWORD('root');将密码修改为root
在使用show database;发现可以展示出来mysql的所有数据库
使用CREATE DATABASE test;新建一个test数据库,
在使用show database;发现test数据库新建成功
使用quit;退出mysql
至此mysql安装完毕,保存快照
安装php
进入目录/var/local/rar/php-7.0/
安装三步走
./configure --prefix=php安装目录 --with-mysql=mysql安装目录 --with-mysqli=mysql安装目录/bin/mysql_config
使用命令./configure --prefix=/var/local/lamp/php-7.0 --with-mysql=/var/local/lamp/mysql-5.7/ --with-mysqli=/var/local/lamp/mysql-5.7/bin/mysql_config
出现错误configure: error: xml2-config not found. Please check your libxml2 installation.
缺少xml2,
使用命令yum install -y libxml2和yum install -y libxml2-devel两步安装
然后在使用命令./configure --prefix=/var/local/lamp/php-7.0 --with-apxs2=/var/local/lamp/apache-2.2/bin/apxs --with-mysql=/var/local/lamp/mysql-5.7/ --with-mysqli=/var/local/lamp/mysql-5.7/bin/mysql_config
make
make install
将apache与php关联
在
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
下增加
AddType application/x-httpd-php .php .php3
AddType application/x-httpd-php-source .phps
将
DirectoryIndex index.html
修改为
DirectoryIndex index.html index.php
重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
在/var/local/www/lamp/下新建phpinfo文件,本机访问http://192.168.1.118/phpinfo.php出现phpinfo界面
查看其配置发现
Configuration File (php.ini) Path /var/local/lamp/php-7.0/lib
Loaded Configuration File (none)
复制php.ini
cp -a /var/local/lamp1/php-7.0/php.ini-development /var/local/lamp/php-7.0/lib/php.ini
重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
Loaded Configuration File已经变为/var/local/lamp/php-7.0/lib/php.ini
修改/var/local/www/lamp/下index.html文件为index.php
使用mysqli链接数据库,发现127.0.0.1可以链接但是localhost不能链接
修改php.ini文件
mysqli.default_socket = /var/local/lamp/mysql-5.7/mysql.sock
mysqli.default_host = localhost
pdo_mysql.default_socket=/var/local/lamp/mysql-5.7/mysql.sock
重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
现在localhost与127.0.0.1都可以访问
使用pdo链接数据库发现pod无法链接
进去到php的源码包的ext中
cd /var/local/rar/php-7.0/ext/pdo_mysql/
/var/local/lamp/php-7.0/bin/phpize(phpize 命令是用来准备 PHP 外挂模块的编译环境的)
./configure --with-php-config=/var/local/lamp/php-7.0/bin/php-config --with-pdo-mysql=/var/local/lamp/mysql-5.7/(假设你的mysql是安装在/usr/local/mysql)
make
make install
编辑/var/local/lamp/php-7.0/lib/php.ini
在;extension=php_pdo_mysql.dll上一行加上extension=pdo_mysql.so并去掉前边的;
保存退出
重启apache
/var/local/lamp/apache-2.2/bin/apachectl stop
/var/local/lamp/apache-2.2/bin/apachectl start
至此lamp全部完成编译
cd 进入家目录,在.bash_profile文件中加入
apache=/var/local/lamp/apache-2.2/bin/apachectl
mysql=/var/local/lamp/mysql-5.7/support-files/mysql.server
关机重启后可以使用
$apache start(stop)来进行apache的开启(关闭)
$mysql start(stop)来进行mysql的开启(关闭)
至此,教程结束!