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. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  2. XSS

    XSS的含义 XSS(Cross Site Scripting)即跨站脚本.跨站的主要内容是在脚本上. 跨站脚本 跨站脚本的跨,体现了浏览器的特性,可以跨域.所以也就给远程代码或者第三方域上的代码提供 ...

  3. 说说Makefile那些事儿

    说说Makefile那些事儿 |扬说|透过现象看本质 工作至今,一直对Makefile半知半解.突然某天幡然醒悟,觉得此举极为不妥,只得洗心革面从头学来,以前许多不明觉厉之处顿时茅塞顿开,想想好记性不 ...

  4. 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序

    直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...

  5. 使用ServiceStack构建Web服务

    提到构建WebService服务,大家肯定第一个想到的是使用WCF,因为简单快捷嘛.首先要说明的是,本人对WCF不太了解,但是想快速建立一个WebService,于是看到了MSDN上的这一篇文章 Bu ...

  6. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

  7. 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo

    Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...

  8. jQuery.template.js 简单使用

    之前看了一篇文章<我们为什么要尝试前后端分离>,深有同感,并有了下面的评论: 我最近也和前端同事在讨论这个问题,比如有时候前端写好页面给后端了,然后后端把这些页面拆分成很多的 views, ...

  9. AFNetworking 3.0 源码解读(八)之 AFImageDownloader

    AFImageDownloader 这个类对写DownloadManager有很大的借鉴意义.在平时的开发中,当我们使用UIImageView加载一个网络上的图片时,其原理就是把图片下载下来,然后再赋 ...

  10. Android中的LinearLayout布局

    LinearLayout : 线性布局 在一般情况下,当有很多控件需要在一个界面列出来时,我们就可以使用线性布局(LinearLayout)了,  线性布局是按照垂直方向(vertical)或水平方向 ...