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.配置php.ini vi /etc/php.ini 2.配置apache 先给需要配置的文件做个备份 cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/h ...
- 【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 ...
- CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境
安装篇: 一.安装Apache yum install httpd #根据提示,输入Y安装即可成功安装 /etc/init.d/httpd start#启动Apache 备注:Apache启动之后会提 ...
- CentOS搭建Apache+php+MySQL+Redis环境
要搭建一个本地linux服务器环境,按照网络教程依葫芦画瓢,噼里啪啦搭好后,发现redis服务怎么也弄不好,不喜欢那种明知有问题却无从下手又无能为力的感觉,碰了无数次壁以后,我决定卸载,重头来过,并尽 ...
- 简单快速安装Apache+PHP+MySql服务环境(四)—— 将php版本升级到7.2
书接上文,简单快速安装Apache+PHP+MySql服务环境(二)-- centos使用yum安装指定版本的php. 随着各种PHP框架的升级,对PHP的版本也有了更高的要求,所以笔者也尝试着更新升 ...
- Apache+PHP+Mysql 集成环境 几个软件pk
WampServer 2.5 64位 - 工具软件 - 源码之家 2014年8月25日 - WampServer是Apache+PHP+Mysql 集成环境,拥有简单的图形和菜单安装和配置环境.支持2 ...
- Linux下登陆mysql服务器不需要输入账号密码信息
linux下登录mysql服务器一般都是在命令行手动输入链接信息 [root@localhost ~]# mysql -hlocalhost -uroot -p11111 而在mysql 5.6之后版 ...
- 简单快速安装Apache+PHP+MySql服务环境(一)
由于自己只是普通的coder,对于服务器的操作不是很熟悉,在网上找了很多关于PHP和apache服务器环境搭建的帖子,不过都不尽相同,尤其是编译安装更是看的云里雾里的,所以选择了一种比较简单的方式进行 ...
- Apache+PHP+MySQL+phpMyAdmin环境搭建
最近在学习web服务端开发,一开始是使用wamp的,后来决定自己完整配置一下环境,并把整个过程记录下来.其中,Apache是服务器,php是用来编写服务端的语言,MySQL作为数据库,phpMyAdm ...
随机推荐
- python 创建txt并且写入做追加
import os def create_str_to_txt(self,date,str_data): """ 创建txt,并且写入 """ ...
- Nvidia显卡安装驱动
首先要知道需要安装哪个类型的显卡驱动,可以使用如下指令查看 sudo add-apt-repository ppa:graphics-drivers在#current那一栏中找到显卡驱动型号,使用的是 ...
- 问题-DelphiXE10.1 FireDAC联接oracle数据库方法
问题现象:安装oracle后,安装Delphi10.1,放FDConnection1时,选择"Ora"驱动时,提示如下: [FireDAC][Phys][Ora]-315. Can ...
- UIButton的竖排图片和文本
UIButton的竖排图片和文本html, body {overflow-x: initial !important;}.CodeMirror { height: auto; } .CodeMirro ...
- mysql 实现多列唯一性约束
alter table j_assistants add constraint unique_name_course_class unique(name_id,course_id,class_id);
- C语言 · 错误票据
历届试题 错误票据 时间限制:1.0s 内存限制:256.0MB 锦囊1 排序. 锦囊2 把所有的编号排序,再扫描一遍数组,即可找到重复的和遗漏的. 问题描述 某涉密单位下发 ...
- git .gitignore 文件不起作用
.gitignore 不起作用的原因是因为 git 有以前文件缓存,只要清理一次缓存即可 git rm -r --cached . // 然后再进行 git git add . git commit
- [服务]Crontab和每隔10S执行一次
转自:https://www.cnblogs.com/juandx/archive/2015/11/24/4992465.html linux下定时执行任务的方法 在LINUX中你应该先输入cron ...
- 配置Chrome Workspace功能
配置Chrome Workspace功能 Chrome Workspace功能是将在Chrome开发者工具(F12)中对文档的修改直接应用于对应文件中.由于Chrome并不知道当然文档对应用的文件为哪 ...
- redis详细配置文件
redis 单机版自己指定配置 #修改为守护模式 daemonize yes #设置进程锁文件 pidfile /usr/local/redis/redis.pid #端口 port 6379 #客户 ...