1.前言

CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。CentOS是架构LAMP(Linux+Apache+PHP+MySQL)的理想操作系统,具有较高的稳定性。本文以CentOS为例介绍linux系统下yum安装Apache+PHP+MySQL的方法。
 

2.准备工作

2.1.登录服务器

登录远程服务器,如果您的服务器在本地并安装有桌面环境,也可以直接打开服务器桌面,进入终端管理器。
在windows下Putty是一款出色的liunx远程登录工具,打开界面如下
 
 
在图中黄色框中填入服务器ip,点击打开,之后提示输入用户名和密码,验证成功后完成登录服务器。
 

2.2.配置源和更新系统软件

2.2.1.定义非官方yum库

官方提供的软件是当前的稳定版本,但不是最新版本,为了更好的运行dedecms,我们需要一些非官方的yum源。
 
rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
vi /etc/yum.repos.d/utterramblings.repo
 
添加以下内容
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
 
[注]vim编辑器修改文件的方法请自行百度之
 

2.2.2.更新系统

yum update
yum upgrade
 

2.2.3.检查系统软件

检查当前系统是否已经安装了apache 和 mysql
 
yum list installed | grep httpd
rpm -qa | grep httpd
 
yum list installed | grep mysql
rpm -qa | grep mysql
 
如果已经存在,请先卸载
 

2.3.创建目录

在这里我们约定各数据存放目录如下
 
网站数据   /www/htdocs
日志目录   /www/log
数据库文件 /www/mysql
 
运行以下命令完成目录创建
 
mkdir /www/mysql
mkdir /www/htdocs
mkdir /www/log/php
mkdir /www/log/mysql
 
添加apache和mysql用户
useradd -s /sbin/nologin -M apache
useradd -s /sbin/nologin -M mysql
 
创建了目录之后还需要改变目录属主和用户组,apache和mysql才能完成读写操作
chown -R apache:apache /www/htdocs
chown -R mysql:mysql /www/mysql
chown -R apache:apache /www/log/php
chown -R mysql:mysql /www/log/mysql
 

3.安装与配置

3.1. yum 安装 Apache + PHP + MySQL

 
yum -y install gcc gcc-c++ autoconf make aclocal libtool expat-devel libxml2-devel httpd php php-devel mysql mysql-server mysql-devel libevent libevent-devel mageMagick ImageMagick-devel php-mysql mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd php-xml php-mcrypt php-mbstring php-ldap php-pear php-xmlrpc php-pecl-memcache mysql-connector-odbc libdbi-dbd-mysql php-eaccelerator
 

3.2.配置php

vi /etc/php.ini
 
请根据自己的情况修改,这里只列出部分需要注意的设置
post_max_size = 32M
memory_limit = 256M
allow_url_fopen = On
upload_max_filesize = 32M
upload_tmp_dir = /var/tmp
log_errors = On
error_reporting = E_ALL & ~E_NOTICE | E_STRICT
display_errors = Off
error_log = /www/log/php/php_error.log
magic_quotes_gpc = On
 

3.3. 配置apache

先给默认配置文件做个备份
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
编辑配置
vi /etc/httpd/conf/httpd.conf
 
根据自己的需要进行修改
DocumentRoot "/www/htdocs"  # 修改为默认网站主目录
NameVirtualHost *:80
 
如果安装GBK版本dedecms出现乱码,可能需要注释掉这个参数
#AddDefaultCharset UTF-8
 
启动apache服务
service httpd start
 
检查apache是否正常,打开浏览器,输入http://您的ip,如果看到默认apache test page页面,即表示成功启动。
 
 

3.4.配置mysql

 
系统已经自动安装好了mysql,但我们需要做些简单的修改和优化,配置数据库文件和日志存放位置,才能启动。
在 /usr/share/mysql/目录下有多个my-开头的cnf文件,我们可以针对我们自己的情况选择一个使用,我们这里选择my-medium.cnf
 
把它复制到/etc目录里
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
编辑
vi /etc/my.cnf
修改以下配置,在原有的基础上修改,没有的选项就添加
[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set = utf8
[mysqld]
user = mysql
datadir = /www/mysql
log-error = /www/log/mysql/mysql_error.log
log-bin=/www/log/mysql/mysql-bin
expire_logs_days=7
character-set-server = utf8
--skip-external-locking
 
启动mysql
service mysqld start
系统会自动安装初始数据库,然后启动,如果有错误,请查看/www/log/mysql/mysql_error.log里的错误信息
 
设置mysql root用户密码
mysql
UPDATE mysql.user SET password = PASSWORD('你的密码') WHERE user = 'root';
FLUSH PRIVILEGES;
exit;
 

4.优化设置

4.1.安全设置,禁用 PHP 的敏感函数

vi /etc/php.ini
取消disable_functions前的#,改为
disable_functions = exec,shell_exec,system,popen,escapeshellcmd,escapeshellarg,gzuncompress,proc_open,proc_get_status,show_source,gzinflate
 

4.2.开启gzip压缩

gzip压缩可以减少服务器流量,但也会增加cpu资源消耗,是否要开启你需要根据情况决定
 
vi /etc/httpd/conf/httpd.conf
 
LoadModule deflate_module modules/mod_deflate.so
<IfModule mod_deflate.c>
DeflateCompressionLevel 6
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE js css
</IfModule>
 

5.建立网站

创建网站目录
mkdir /www/htdocs/demo
更改以下网站目录的属主和属组
chown -R apache:apache /www/htdocs/demo
 
配置虚拟主机配置
vi /etc/httpd/conf/httpd.conf
在最后添加
<VirtualHost *:80>
ServerName 域名.com
ServerAlias www.域名.com
DocumentRoot /www/htdocs/demo
</VirtualHost>
重启apache 
service httpd restart
 
创建数据库
mysql -u root -p
create database demo; #demo为要创建的数据库名
exit;
 
环境搭建已经全部完成了,下面您只需要把dedecms程序上传到/www/htdocs/demo,并把您的域名解析到您的服务器ip,即可完成dedecms的安装,本教程到此结束。
 

Linux+Apache+PHP+MySQL服务器环境(CentOS篇)的更多相关文章

  1. Linux+Apache+PHP+MySQL服务器环境配置(CentOS篇)

    1.配置php.ini vi /etc/php.ini 2.配置apache 先给需要配置的文件做个备份 cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/h ...

  2. 【centos6.5】CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境(linux公社)

    准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dp ...

  3. CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境

    安装篇: 一.安装Apache yum install httpd #根据提示,输入Y安装即可成功安装 /etc/init.d/httpd start#启动Apache 备注:Apache启动之后会提 ...

  4. CentOS搭建Apache+php+MySQL+Redis环境

    要搭建一个本地linux服务器环境,按照网络教程依葫芦画瓢,噼里啪啦搭好后,发现redis服务怎么也弄不好,不喜欢那种明知有问题却无从下手又无能为力的感觉,碰了无数次壁以后,我决定卸载,重头来过,并尽 ...

  5. 简单快速安装Apache+PHP+MySql服务环境(四)—— 将php版本升级到7.2

    书接上文,简单快速安装Apache+PHP+MySql服务环境(二)-- centos使用yum安装指定版本的php. 随着各种PHP框架的升级,对PHP的版本也有了更高的要求,所以笔者也尝试着更新升 ...

  6. Apache+PHP+Mysql 集成环境 几个软件pk

    WampServer 2.5 64位 - 工具软件 - 源码之家 2014年8月25日 - WampServer是Apache+PHP+Mysql 集成环境,拥有简单的图形和菜单安装和配置环境.支持2 ...

  7. Linux下登陆mysql服务器不需要输入账号密码信息

    linux下登录mysql服务器一般都是在命令行手动输入链接信息 [root@localhost ~]# mysql -hlocalhost -uroot -p11111 而在mysql 5.6之后版 ...

  8. 简单快速安装Apache+PHP+MySql服务环境(一)

    由于自己只是普通的coder,对于服务器的操作不是很熟悉,在网上找了很多关于PHP和apache服务器环境搭建的帖子,不过都不尽相同,尤其是编译安装更是看的云里雾里的,所以选择了一种比较简单的方式进行 ...

  9. Apache+PHP+MySQL+phpMyAdmin环境搭建

    最近在学习web服务端开发,一开始是使用wamp的,后来决定自己完整配置一下环境,并把整个过程记录下来.其中,Apache是服务器,php是用来编写服务端的语言,MySQL作为数据库,phpMyAdm ...

随机推荐

  1. JS中的history对象

    window.history指向History对象,它表示当前窗口的浏览历史. History对象保存了当前窗口访问过的所有页面网址. history.back()//后退到前一个网址 等同于 his ...

  2. 开发openfire 消息拦截器插件PacketInterceptor

    开发消息拦截器的步骤跟开发简单插件步骤一样,要开发消息拦截器插件,首先继承PacketInterceptor包拦截类,然后在initializelPlugin()方法中注册拦截器,就可以实现inter ...

  3. 秒杀怎么样才可以防止超卖?基于mysql的事务和锁实现

    Reference:  http://blog.ruaby.com/?p=256 并发事务处理带来的问题? 相对于串行处理来说,并发事务处理能大大增加数据库资源的利用率,提高数据库系统的事务吞吐量,从 ...

  4. 基于jQuery+CSS3实现人物跳动特效

    分享一款基于jQuery+CSS3实现人物跳动特效.这是一款类似gif图片效果的CSS3动画特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class=& ...

  5. [转]Oracle的update语句优化研究

    原文地址:http://blog.csdn.net/u011721927/article/details/39228001 一.         update语句的语法与原理 1.     语法 单表 ...

  6. 轻松学习JavaScript二十七:DOM编程学习之事件模型

    在介绍事件模型之前,我们先来看什么是事件和什么是event对象. 一事件介绍 JavaScript事件是由訪问Web页面的用户引起的一系列操作,使我们有能力创建动态页面.事件是能够被 JavaScri ...

  7. volatile关键字学习

    volatile关键字在实际工作中我用的比较少,可能因为我并不是造轮子的.但是用的少不是你不掌握的借口,还是要创造场景去使用这个关键字,本文将会提供丰富的demo. volatile 发音:英[ˈvɒ ...

  8. Linux下LDAP统一认证解决方案

    Linux下LDAP统一认证解决方案 --http://www.cangfengzhe.com/wangluoanquan/3.html 转自:http://www.cnblogs.com/MYSQL ...

  9. Hbase 学习(八) 使用MapReduce

    在hbase的demo里面有个IndexBuilder的例子,它就是使用了MapReduce来操作hbase的,例子也比较简单,但是只包括了Mapper. 另外网上还有另外一个例子,也是说明这个的,这 ...

  10. 【html5】html5 本地存储

    最近一直在学习 html5,为了后期的移动项目进行知识储备.html5 相对于 html4 新增加了一些有趣的标签.属性和方法,今天主要介绍下 html5 的本地存储. 在客户端存储数据 html5 ...