Linux主要分为两大系发行版,分别是RedHat和Debian,lamp环境的安装和配置也会有所不同,所以分别以CentOS 7.1和Ubuntu 14.04做为主机(L)

Linux下安装软件,最常见有源码安装方式、RPM/deb安装方式、yum/apt-get安装方式等,在这里使用yum/apt-get安装LAMP开发环境

CentOS 7.1 下安装LAMP开发环境及配置文件管理

安装并配置Apache

[root@localhost ~]# yum install httpd

默认安装的Apache版本为httpd-2.4.6-31.el7.centos.x86_64,默认配置文件主目录位于/etc/httpd下,/etc/httpd/conf/httpd.conf是Apache的主配置文件,Apache模块位于/usr/lib64/httpd/modules目录下,Apache模块的配置文件位于/etc/httpd/conf.modules.d目录下,设置禁用或开启模块可以通过修改该目录下每个文件,Web根目录位于/var/www/html目录下,日志文件位于/var/log/httpd目录下。

重点关注/etc/httpd目录。这个目录下,有个conf.d目录,默认情况下/etc/httpd/conf.d目录下所有的“.conf”结尾的文件都会被读取。因此,很多情况下不需要修改主配置文件/etc/httpd/conf/httpd.conf,而是在/etc/httpd/conf.d目录下新建一个以“.conf”结尾的文件来完成各种配置。

将Apache设置为开机自启动模式

[root@localhost wuxiwei]# systemctl enable httpd

关闭Apache服务

[root@localhost wuxiwei]# systemctl stop httpd

开启Apache服务

[root@localhost wuxiwei]# systemctl start httpd

重新加载httpd

[root@localhost wuxiwei]# systemctl reload httpd

安装并配置MariaDB(MYSQL)

[root@localhost wuxiei]# yum install mariadb-server mariadb

MariaDB完全兼容MYSQL,包括API和命令行。CentOS 从7.x开始默认使用MariaDB。

通过内置的安全配置脚本可实现对数据库的安全保护

[root@localhost wuxiwei]# /usr/bin/mysql_secure_installation

将MariaDB设置为开机启动

[root@localhost wuxiwei]# systemctl enable mariadb

开启MariaDB服务

[root@localhost wuxiwei]# systemctl start mariadb

关闭MariaDB服务

[root@localhost wuxiwei]# systemctl stop mariadb

安装并配置PHP

[root@localhost wuxiei]# yum install php php-cli php-pear php-pdo php-mysqlnd php-gd php-mbstring php-mcrypt php-xml

CentOS 7.1版本中,默认安装PHP为PHP5.4版本,其中php-mysqlnd是PHP源码提供的MYSQL驱动数据库。

很多时候会对PHP环境要求校新的版本,例如PHP5.6环境,记录一种通过yum工具安装最新PHP版本的方法。首先,需要在系统上安装一个扩展yum源,即epel源。可从http://fedoraproject.org/wiki/EPEL 网站下载并安装。

[root@localhost wuxiwei]# wget http://mirrors.neusoft.edu.cn/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

[root@localhost wuxiwei]# rpm -ivh epel-release-7-5.noarch.rpm

接着,还需要一个REMI源,这个yum源提供了最新的PHP版本的下载和安装,它的官网http://rpms.famillecollet.com/ 。安装REMI源的过程如下。

[root@localhost wuxiwei]# rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi

[root@localhost wuxiwei]# wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

[root@localhost wuxiwei]# rpm -ivh remi-release-7.rpm

默认情况下,REMI是禁用的,防止多个yum源发生冲突。可以通过命令查看REMI源是否成功安装

[root@localhost wuxiwei]# yum repolist disabled | grep remi

搜索REMI源仓库中可用的包

[root@localhost wuxiwei]# yum --enablerepo=remi-php56 list php

通过REMI源安装需要的PHP版本,安装PHP5.6版本。

[root@localhost wuxiwei]# yum --enablerepo=remi-php56 install php

Ubuntu 14.04 下安装LAMP开发环境及配置文件管理

安装并配置Apache

[root@localhost wuxiwei]# apt-get install apache2

重启Apache服务

[root@localhost wuxiwei]# service apache2 restart

安装并配置PHP5

[root@localhost wuxiwei]# apt-get install php5

查看Apache是否已经正确配置PHP5

[root@localhost wuxiwei]# cat /etc/apache2/mods_enables/libphp5.so

安装PHP5常用扩展

[root@localhost wuxiwei]# apt-get install php5-gd curl libcurl3 libcurl3-dev php5-curl

安装并配置MYSQL

[root@localhost wuxiwei]# apt-get install mysql-server

查看PHP5和MYSQL是否可以正常数据交互

[root@localhost wuxiwei]# cat /etc/php5.d/conf.d/mysql.ini

手动安装PHP5对于MYSQL扩展

[root@localhost wuxiwei]# apt-get install php5-mysql

重启MYSQL服务

[root@localhost wuxiwei]# service mysql restart

配置文件管理

Apache配置文件位于/etc/apache2目录下,Apache加载配置首先加载/etc/apache2/apache2.conf文件,通过Include将其他配置文件载入,核心配置文件包括:mods-xxx Apache模块;sites-xxx 虚拟主机,其中关键词available表示可以使用的;enable表示已启用的,两者通过ln -s命令建立软连接。

PHP5配置文件位于/etc/php5目录下,核心配置文件php.ini。

MYSQL配置文件位于/etc/mysql目录下,核心配置文件my.cnf,默认数据库存储位于/var/lin/mysql目录下。


Apache虚拟主机配置

  • CentOS 7.0 在/etc/httpd/conf.d目录下新建wuxiwei.conf文件,并重启apache。
  • Ubuntu 14.04 在/etc/apache2/sites-available目录下新建wuxiwei.conf文件,同时在/etc/apache2/sites-enabled目录下创建软链接到wuxiwei.conf文件,并重启apache。
  • wuxiwei.conf文件内容基本如下。
<VirtualHost *:80>
#管理员邮箱
ServerAdmin admin@wxw.cn
#访问的主机名
ServerName wuxiwei.cn
#ServerName别名,通过别名也可以访问这个虚拟主机
ServerAlias www.wuxiwei.cn
#主机目录
DocumentRoot /wuxiwei <Directory "/wuxiwei/">
#指定该目录启用FollowSymLinks特性,None:表示不起用任何的服务器特性,Indexes:如果输入的网址对应服务器上的一个目录,而此目录中又没有Directorylndex指令(例如:Directorylndex index.php index.html),那么服务器就会返回由mod_autoindex模块生成的一个格式化后的目录列表,并列出该目录下所有的文件。
Options FollowSymLinks
#允许所有都可以访问
AllowOverride All
Require all granted
</Directory> #错误日志
Errorlog /var/log/httpd/wuxiwei_error.log
#访问日志
CustomLog /vat/log/httpd/wuxiwei_access.log combined
</VirtualHost>

转载请注明出处。

作者:wuxiwei

出处:http://www.cnblogs.com/wxw16/p/6259331.html

Linux安装LAMP开发环境及配置文件管理的更多相关文章

  1. window / Linux 下 Golang 开发环境的配置

    一直专注于使用python语言进行程序开发,但是却又一直被它的性能问题所困扰,直到遇到了天生支持高并发的Golang,这似乎也成了学习go语言最理所当然的理由.下面介绍下Go语言开发环境搭建的步骤: ...

  2. linux安装go开发环境

    1下载go wget https://studygolang.com/dl/golang/go1.12.7.linux-amd64.tar.gz执行此命令会将go1.12.7.linux-amd64. ...

  3. Linux安装Java开发环境

    一.JDK安装 安装JDK的实现步骤(使用root用户登录安装,避免需要对文件授权) (1)下载JDK,JDK的存放目录一般存放于 /opt目录下(Oracle官网下载jdk,需要accept lic ...

  4. centos6.5编译安装lamp开发环境

    一.系统以及软件的准备 系统及编译安装包的下载地址:http://pan.baidu.com/s/1jIjqinc   密码:ghc2 说明:由于centos6.5是分卷压缩的,且压缩为三个压缩包,所 ...

  5. Linux安装jdk7开发环境

    1.官网 下载jdk7版本 地址: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-jav ...

  6. CentOS 7配置LNMP开发环境及配置文件管理

    安装并配置MySQL 5.6 从CentOS从7.x开始默认使用MariaDB.MariaDB完全兼容MySQL,包括API和命令行.但是很多时候我们还是会想要安装MySQL,所以不能直接通过yum命 ...

  7. linux后台server开发环境的部署配置和验证(nginx+apache+php-fpm+FASTCGI(C/C++))

    linux后台server开发环境部署配置 引言 背景 随着互联网业务的不断增多.开发环境变得越来越复杂,为了便于统一server端的开发部署环境,特制定本配置文档. 使用软件 CentOS 6.3( ...

  8. go语言系列--golang在windows上的安装和开发环境goland的配置

    在windows上安装golang软件 golang中国网址为:https://studygolang.com/dl 我的学习选择版本:1.12.5 golang 1.12.5版本更新的内容:gola ...

  9. linux 下 ifcfg-eth0 配置/CentOS_minimal安装和开发环境部署

    CentOS_minimal安装和开发环境部署:http://www.th7.cn/system/lin/201305/39002.shtml 网络接口配置文件 [root@localhost ~]# ...

随机推荐

  1. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  2. Mediaplayer error (-19,0)

    Android MediaPlayer 发生 error (-19,0) 错误解决方法. 引起原因:由于多次实例化MediaPlayer.start() 进行播放操作引起的.由于没有及时释放内存资源导 ...

  3. 读python源码--对象模型

    学python的人都知道,python中一切皆是对象,如class生成的对象是对象,class本身也是对象,int是对象,str是对象,dict是对象....所以,我很好奇,python是怎样实现这些 ...

  4. 编写高质量代码:改善Java程序的151个建议(第7章:泛型和反射___建议106~109)

    建议106:动态代理可以使代理模式更加灵活 Java的反射框架提供了动态代理(Dynamic Proxy)机制,允许在运行期对目标类生成代理,避免重复开发.我们知道一个静态代理是通过主题角色(Prox ...

  5. 通过自定义特性,使用EF6拦截器完成创建人、创建时间、更新人、更新时间的统一赋值(使用数据库服务器时间赋值,接上一篇)

    目录: 前言 设计(完成扩展) 实现效果 扩展设计方案 扩展后代码结构 集思广益(问题) 前言: 在上一篇文章我写了如何重建IDbCommandTreeInterceptor来实现创建人.创建时间.更 ...

  6. Linux基础介绍【第八篇】

    Linux网络基础 网线 568A 568B 线序:橙白橙 绿白蓝 蓝白绿 棕白棕 交换机.路由器 交换机:DLINK.H3C.CISCO 交换机(Switch)是一种用于电信号转发的网络设备.它可以 ...

  7. OpenGL ES 3.0: 图元重启(Primitive restart)

    [TOC] 背景概述 在OpenGL绘制图形时,可能需要绘制多个并不相连的图形.这样的情况下这几个图形没法被当做一个图形来处理.也就需要多次调用 DrawArrays 或 DrawElements. ...

  8. weinre- 调试移动端页面

    相信很多前端的小伙伴一定会遇到一个问题, 比如我编写完一个页面,某个地方需要进行调整细节或者是哪个地方怎么调整都不对,在pc端还好,有google,firefox之类可以调节页面的工具,虽说这些工具有 ...

  9. Handler

    1.1 继承AbstractController优点:能定制请求方式 package cn.happyl.controller; import javax.servlet.http.HttpServl ...

  10. No plugin found for prefix ‘jetty’ in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories

    maven配置文件(最大的那个)的<pluginGroups></pluginGroups>增加一行如下<pluginGroups><pluginGroup& ...