VMware虚拟机安装CentOS 7并搭建lamp服务器环境

此贴的目的是对今天的学习做一个总结、记录,方便日后的回顾学习,同时与大家分享经验希望能够对跟我一样初学Linux服务器的同学起到帮助作用!

         首先是Linux服务器系统的选择,目前比较流行的系统版本有centos、Redhat、Ubuntu server等,初学者可能会在系统版本的选择上有所纠结,实际上对于初学者来说这些系统大同小异,操作上是近乎相同的,可以根据自己的能力和实际需要进行选择。如果有一定经济能力建议购买Redhat收费版,对于只是用于学习研究的同学建议使用centos作为替代,centos实际上与Redhat是非常相似的,其次也可以使用Ubuntu server等操作系统,基于个人喜好。

        这里我选择使用centos7操作系统进行安装演示并并通过yum命令安装lamp环境。(yum的解释:http://man.linuxde.net/yum)

一、CentOS7的安装(素材资料整理自网络)

1)、通过VMware创建虚拟机(这一步不解释)

2)  、成功引导系统后,会出现下面的界面

        

界面说明:

Install CentOS 7 安装CentOS 7

Test this media & install CentOS 7 测试安装文件并安装CentOS 7

Troubleshooting 修复故障

这里选择第一项,安装CentOS  7,回车,进入下面的界面

选择语言:中文-简体中文(中国)  #正式生产服务器建议安装英文版本

继续

选择-系统-安装位置,进入磁盘分区界面

选择-其它存储选项-分区-我要配置分区,点左上角的“完成”,进入下面的界面

分区前先规划好

swap #交换分区,一般设置为内存的2倍

/ #剩余所有空间

备注:生产服务器建议单独再划分一个/data分区存放数据

点左下角的“+”号

挂载点:swap

期望容量:2048

添加挂载点,如下图所示


继续点左下角的“+”号

挂载点:/

期望容量:18.43GB #剩余所有空间

添加挂载点,如下图所示

点左上角的“完成”,进入下面的界面

接受更改,进入下面的界面

开始安装   #注意“软件”-“软件选择”,默认是最小安装,即不安装桌面环境,可以自己设置。

建议选择最小安装即可,最小安装方式安装完成后开机即为命令行模式

进入下面的界面

选择-用户设置-ROOT密码,进入下面的界面

设置Root密码

如果密码长度少于8位,会提示要按“完成”两次来确认,安装继续

安装完成之后,会进入下面的界面

点重启

系统重新启动

进入登录界面

账号输入root 回车

再输入上面设置的root密码回车

系统登录成功

说明:CentOS 7.0默认安装好之后是没有自动开启网络连接的!因此需要我们更改配置文件来开启网络(虚拟机 联网方式选择 桥接 方式)

用命令:cd /etc/sysconfig/network-scripts 按下 enter

然后输入ls 按enter

会出现下面几个文件。我们要找的就是图片中的箭头所指的。

然后用文本编辑工具打开,输入指令vi ifcfg-eno16777736 按下enter

 会出现一些的键值对,而我们需要改的是箭头所指的,表示激活网卡。

然后按 i 键 进入编辑模式,将no 改成yes 然后按ESC键,再输入 :wq (wq表示保存并退出)

      重启网卡: service network start就OK了

然后你就可以连接到网络了,可以安装一些你需要的包了。

配置完成后可以同过ping命令测试连通性 ,例如 ping -c 10 202.108.22.5(ping 百度首页的网址,ping次数为10次)

注:如果未指定次数将对该地址进行不间断ping;可通过Ctrl+C终止命令

Linux下ping命令详解: http://www.cnblogs.com/peida/archive/2013/03/06/2945407.html

在安装系统的过程中可能会有同学对Linux系统下的分区选择有所困惑,在这里做一个解释,方便大家理解:

http://www.cnblogs.com/gylei/archive/2011/12/04/2275987.html

同时介绍一下Linux系统下的目录结构:http://www.178linux.com/9736

二、CentOS 7系统安装lamp (Linux+Apache+MariaDB(取代MySQL)+PHP/PhpMyAdmin)环境

 

1)、安装Apache

Apache软件的软件包名称叫做httpd,因此,要安装Apache软件,就使用下述命令:

[root@localhost ~]# yum install httpd

当出现提示的时候一路 y +回车就OK了

wKioL1UrY0ezJ0cBAAE_1MQqSFk946.jpg
 

如上图所示,安装的Apache 软件版本为2.4版。根据红帽官方文档说明,RHEL 7 (或CentOS 7)上可用的Apache版本正是2.4版的。

安装完成后,Apache是以httpd服务的形式存在的。因此,要启动Apache并将其设置为开机启动,就使用命令:

[root@localhost ~]# systemctl start httpd.service

[root@localhost ~]# systemctl enable httpd.service

然后,检查httpd服务状态:

[root@localhost ~]# systemctl status httpd.service

wKiom1UrYkGxhQZ-AAISk9Xnz2g901.jpg

如上图所示,“enabled”表示httpd服务已设为开机启动,“active(running)”则表示httpd服务正在运行中。

这样的话,HTTP协议就已被启动起来了,由于HTTP协议使用到tcp端口80,因此防火墙要放通tcp端口80:

[root@localhost ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent

重启防火墙以让更改立刻生效:

[root@localhost ~]# firewall-cmd --reload

使用以下命令检查配置是否成功:

[root@localhost ~]# firewall-cmd --list-all

wKioL1UrY8OD4WHhAAB1h8uBO2s719.jpg

如上图所示,tcp端口80已放通。

然后这个时候,就可以在物理机上使用浏览器来访问刚刚搭建的web服务器了。不过,因为这个时候还未创建任何页面,所以它显示的是Apache软件自带的测试页面:

通过命令ip addr查询当前系统的ip地址,得到ip地址后再物理机浏览器地址栏输入该ip地址

wKioL1UrY_2ikCYVAAYIK9VCOWw524.jpg

2)安装PHP

使用以下命令安装PHP软件:

[root@localhost ~]# yum install php

wKioL1UrZb2z59WcAAEf9VptT_8126.jpg

从上图可以看到,安装的PHP版本为5.4版。

安装完成后,PHP会生成配置文件/etc/httpd/conf.d/php.conf,因为该配置文件在/etc/httpd/conf.d目录下,所以它会被Apache所读取。PHP还会生成配置文件/etc/httpd/conf.modules.d/10-php.conf,

该配置文件也会被Apache所读取,它的设定让Apache可以加载PHP模块。不过,PHP软件本身的配置文件其实是/etc/php.ini。该配置文件也会被Apache所读取,它的设定让Apache可以加载PHP模块。

不过,PHP软件本身的配置文件其实是/etc/php.ini。

 (大家看一下配置文件的介绍就好,没有需要的话基本不用做任何修改,不过建议将php.ini中upload_max_filesize = 20M                                 //上传文件所允许的最大值。可按照需要进行调整   的

值改的大一些,当你准备搭建一个wordpress网站时此值过小将限制你所上传的图片、视频等多媒体素材的大小)

下面介绍一下配置文件/etc/httpd/conf.d/php.conf:

<FilesMatch \.php$>                                                                                                                                       

   SetHandler application/x-httpd-php                                                                                                               

</FilesMatch>                                                                                                                                                

//<FilesMatch 正则表达式>和</FilesMatch>:文件名与正则表达式相匹配的文件,将适用这里设定的语句。                   

//SetHandler:强制所有匹配的文件使用指定handler进行处理。                                                                               

                                                                                                                                                                     

AddType text/html .php                          //设定扩展名为.php的档案的类型为text/html                                            

DirectoryIndex index.php                         //默认网页档名增加index.php                                                               

php_value session.save_handler"files"                                                                                                               

php_value session.save_path    "/var/lib/php/session"                                                                                        

下面介绍一下配置文件/etc/httpd/conf.modules.d/10-php.conf:

<IfModule prefork.c>                                                                                                                                     

 LoadModule php5_module modules/libphp5.so                                                                                               

</IfModule>                                                                                                                                                  

//如果Apache使用的多处理模块(MPM)是prefork(默认),那么Apache就会加载LoadModule指定的模块(PHP模块)       

最后,来看看配置文件/etc/php.ini。在该文件的开头处,有说明针对生产环境和开发环境,有一些设定值可以进行修改,以提高PHP的效能。假设该web服务器是用于生产环境的,将下面的这些设定值改成这样(或确认这些设定值是这样的):

display_errors = Off                                       //当发生错误时,不将错误信息显示出来(到浏览器上)                          

display_startup_errors = Off                               //不将PHP启动时发生的错误信息显示出来(到浏览器上)                    

error_reporting = E_ALL &~E_DEPRECATED & ~E_STRICT   //这一项设定PHP会告知的错误或信息类型                       

html_errors = On                                         //当PHP显示或记录错误信息时,将该信息格式化成HTML格式                

log_errors = On                                           //这让PHP可以将错误信息日志记录到日志文件里                                 

ignore_repeated_errors = On                              //忽略重复的错误信息                                                               

ignore_repeated_source = On                             //当忽略重复的错误信息时忽略信息源                                          

post_max_size = 25M                                      //PHP所允许的POST数据的最大值。可按照需要进行调整                    

file_uploads = On                                          //允许文件上传,默认为On                                                             

upload_max_filesize = 20M                                 //上传文件所允许的最大值。可按照需要进行调整                            

memory_limit = 128M                                     //PHP可用的最大内存。可按照需要进行调整                                      

然后,重启httpd服务:

[root@localhost~]# systemctl restart httpd

为了测试Apache能不能正常调用PHP,在/var/www/html目录下新建一个phpinfo.php文档,内容如下所示:

wKiom1UrZNuQIT8aAAA2jbF5zeo089.jpg

其中的<?php   ?>是PHP程序的语法,phpinfo ();则是PHP程序提供的一个函式库,该函式库可以显示出你这个web服务器的相关信息。然后,使用浏览器来访问服务器的这个文件,看看页面能不能正常打开。如果正常的话,应该可以看到下面这个页面:

wKiom1UrZQ3CE18XAAE_1I5fZZc130.jpg

测试完后,因为这个页面里面的信息还挺重要的,所以应该把phpinfo.php这个档案删除。


3)、安装MariaDB(从RHEL 7开始Red Hat公司推荐使用MariaDB替换MySQL)

Red Hat Enterprise Linux/CentOS 7.0 使用 MariaDB 替换 MySQL 为默认数据库管理系统。使用如下命令安装 MariaDB 数据库。
  1. #yum install mariadb-server mariadb
在 CentOS 7中安装 MariaDB

安装 MariaDB 后,启动数据库守护进程并使用 mysqlsecureinstallation 脚本来保护数据库(设置数据库的 root 密码、禁止远程 root 登录、移除测试数据库、移除匿名用户等)。

 
    
  1. # systemctl start mariadb
  2. # mysql_secure_installation

启动 MariaDB 数据库

启动 MariaDB 数据库

MariaDB 安全设置

MariaDB 安全设置

要测试数据库功能,使用 root 账户登录 MariaDB 并用 quit 退出。

 
    
  1. mysql -u root -p
  2. MariaDB > SHOW VARIABLES;
  3. MariaDB > quit

连接 MariaDB 数据库

连接 MariaDB 数据库

4)、安装PhpMyAdmin

RHEL 7.0 或者 CentOS 7.0 仓库默认没有提供 PhpMyAdmin 二进制安装包。如果你不适应使用 MySQL 命令行来管理你的数据库,你可以通过下面的命令启用 CentOS 7.0 rpmforge 仓库来安装 PhpMyAdmin。
选择合适的源地址来安装,参考方法: 安装使用 EPEL 安装源
到 EPEL 主页:
找到 The newest version of ‘epel-release’ for EL7,点击打开新页面,复制 epel-release-7-5.noarch 的链接(数字可能有变化)。采用下面的方法直接安装:
  1. #yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
 
 
安装PHPMYADMIN
yum install phpmyadmin
嗯,前面已经打好基础了,所以这里就是这么简单。
 
配置

phpMyAdmin 的默认安装目录是 /usr/share/phpMyAdmin,同时会在 Apache 的配置文件目录中自动创建虚拟主机配置文件 /etc/httpd/conf.d/phpMyAdmin.conf(区分大小写)。默认情况下,CentOS 7上的phpMyAdmin只允许从回环地址(127.0.0.1)访问。为了能远程连接,你需要改动它的配置。

vi /etc/httpd/conf.d/phpMyAdmin.conf

修改配置文件,如下:

<Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> # Require ip 127.0.0.1 #注释掉 # Require ip ::1 #注释掉 Require all granted #新添加 </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> #Require ip 127.0.0.1 #注释掉 #Require ip ::1 #注释掉 Require all granted #新添加 </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>

然后重启Apache服务器

systemctl restart httpd

然后就可以通过浏览器访问 http://服务器ip地址/phpmyadmin 访问


 
 
 
到此为止所有的工作已经做完了,一个Linux服务器环境已经安装完毕,如果文章中有什么错误和不严谨的地方希望大家指正,我也是菜鸟刚学,希望大家一起交流经验,学习进步
 
 
 

猜你喜欢

转载自www.cnblogs.com/xuehu666/p/9094158.html