阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3

 Posted on 2016年2月10日 by  学院君

1、Apache 配置

—————————————————–

vi /etc/httpd/conf/httpd.conf 编辑文件

Options Indexes FollowSymLinks

在331行 修改为:Options Includes ExecCGI FollowSymLinks(允许服务器执行CGI及SSI)

#AddHandler cgi-script .cgi

在796行 修改为:AddHandler cgi-script .cgi .pl (允许扩展名为.pl的CGI脚本运行)

AllowOverride None

在338行 修改为:AllowOverride All (允许.htaccess)

AddDefaultCharset UTF-8

在759行 修改为:AddDefaultCharset GB2312 (添加GB2312为默认编码)

Options Indexes MultiViews

找到这一行,将“Indexes”删除 ,变为此状态 Options MultiViews (不在浏览器上显示树状目录结构)

DirectoryIndex index.html index.html.var

在 402行 修改为:DirectoryIndex index.html index.htm Default.html Default.htm index.php Default.php index.html.var  (设置默认首页文件,增加index.php)

KeepAlive Off

在76行 修改为:KeepAlive On (允许程序性联机)

MaxKeepAliveRequests 100

在83行 修改为:MaxKeepAliveRequests 1000 (增加同时连接数)

:wq!  #保存退出

/etc/init.d/httpd restart 重启

DocumentRoot “/var/www/html”  修改为你的目录   “/data0/www/xxxxxxxxx”  (这个目录就是挂载的数据盘)

rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html    #删除默认测试页

Apache的日志文件
ErrorLog  /etc/httpd/logs/error_log   (php的错误日志也输出到这里)
CustomLog  /etc/httpd/logs/access_log combined

2、PHP 配置

—————————————————–

vi  /etc/php.ini   #编辑

date.timezone = PRC     #在946行 把前面的分号去掉,改为date.timezone = PRC

magic_quotes_gpc = On   #在745行 打开magic_quotes_gpc来防止SQL注入  (php5.4开始不支持magic_quotes_gpc(防SQL流入))

log_errors = On         #记录错误日志

:wq!  #保存退出

/etc/init.d/httpd restart   #重启Apche , php

3、挂载数据盘

—————————————————–

阿里云服务器的硬盘由两块组成,一块是系统盘,一块是数据盘,默认数据盘是没有挂载的,如果要用到数据盘就需要自己手动挂载。

通过命令fdisk -l,可以看到设备名为/dev/xvdb。

另外在挂载前要对硬盘(/dev/xvdb)分区和格式化。

分区使用命令fdisk,格式化命令为mkfs.ext3。

如何操作可以参照官方文档:Linux 系统挂载数据盘 。

数据盘最多可以挂4块,挂在/data0,以后其它的可以挂在/data1,/data2,/data3

数据盘的作用,阿里云服务器控制台提供“重置”功能,可选重置系统盘,还是数据盘,如何操作系统坏了,你可以只重置系统盘,保留网站数据在数据盘。

4、配置MySQL数据库

设置初始密码,建库,建表,导入数据

—————————————————–

请看这里:MySQL备份与恢复,远程访问MySql服务器

然后把mysql的数据文件,移动到“数据盘”上,防止系统坏了重做系统时数据没有了。

—————————————————–

我再移mysql的数据文件后,使用mysql -u用户名 -p  登录时,遇到了错误 :ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

主要是修改my.cnf文件时有几步与上文不一样,这里说明一下。操作方法如下 :

1)、停止mysql进程

2)、把/var/lib/mysql整个目录移到/data0/db

mv /var/lib/mysql /home/data/

这样就把MySQL的数据文件移动到了/data0/db/mysql下

3)、修改my.cnf配置文件

不要直接使用/etc/my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个(我是my-medium.cnf)到/etc/并改名为my.cnf)中。命令如下:

[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

4)、编辑MySQL的配置文件/etc/my.cnf

为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。

# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
#socket = /var/lib/mysql/mysql.sock #注释了
socket=/data0/db/mysql/mysql.sock #新加的内容
# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port = 3306
#socket = /var/lib/mysql/mysql.sock #注释了
datadir=/data0/db/mysql #新加的内容
socket=/data0/db/mysql/mysql.sock #新加的内容

5)、MySQL启动脚本/etc/rc.d/init.d/mysqld 不用做任何修改

6)、重新启动MySQL服务

/etc/rc.d/init.d/mysqld start

如果工作正常移动就成功了,否则对照前面的7步再检查一下。

移动完MySql之后,PHP连接不上Mysql数据库了

—————————————————–

经过上面的的操作,把MySql的数据文件移到其它目录后,PHP连接不上MySql数据库了,是因为找不mysql.sock文件。

解决方法一:

建一个软连接

cd /var/lib

mkdir mysql

ln -s  /data0/db/mysql/mysql.sock  /var/lib/mysql/mysql.sock

解决方案二:

修改/etc/php.ini文件

找到  mysql.default_socket =   一行,这个值一开始是空的,php将会使用内建在mysql中的默认值。

修改为以下内容:

mysql.default_socket = /data0/db/mysql/mysql.sock

mysql.sock的文件位置请跟据你的实际情况填写。

还有一处mysqli.default_socket =,要不要修改视情况吧,我没有修改。

【转存】阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3的更多相关文章

  1. 阿里云服务器ECS LAMP环境安装(Ubuntu)

    所周知如果要搭建一个网站lamp环境必不可少,但是阿里云初始的时候没有自带lamp环境,原本阿里云自带的包也已经失效了,所以需要自己来安装.但是网上大部分博客都有些老,于是中间遇到了一些小坑,今天就在 ...

  2. 阿里云服务器ECS web环境配置(LNAP)ubantu

    Ubuntu 系统中,可以使用 apt-get 命令来搭建 LNMP环境.这种方式较编译方式安装更加简便 安装Nginx 1.使用 sudo apt-get install nginx 就能自动安装 ...

  3. 阿里云服务器 ECS Ubuntu系统安装配置

    1. 登陆服务器 系统开通成功后手机会收到阿里云发来的短信,包含公网IP及root登录密码. WEB管理后台方式 可通过阿里云管理后台选择“连接管理终端…”进行登录 提示输入VNC密码 登录成功后显示 ...

  4. 阿里云服务器下安装LAMP环境(CentOS Linux 6.3) 安装与配置 php

    下面我们一起为服务器安装 PHP,在使用 yum 安装软件包的时候,yum 会去默认的资源库里查看我们要安装的软件包,然后到指定的服务器上下载并安装. 但是有的时候,我们要安装的软件包并没有包含在默认 ...

  5. 阿里云服务器下安装LAMP环境(CentOS Linux 6.3)(1)

    阿里的云服务器准备好以后,我们首先要做的就是把自己购买的磁盘空间挂载到系统里面,我们为服务器选择的是 Linux 系统,确切说的是 CentOS 系统. 默认阿里云服务器带了一个 20G 的空间,一般 ...

  6. 阿里云服务器下安装LAMP环境(CentOS Linux 6.3)

    http://ninghao.net/course/514 http://www.sphinxsearch.org/archives/243 ctrl + l  putty 清理屏幕 apache 自 ...

  7. 阿里云服务器下安装LAMP环境(CentOS Linux 6.3) 安装与配置 Apache 服务

    想让我们的阿里云服务器成为一台 Web 服务器,我们需要安装一个 Web 服务器软件,比如 Apache ,或者 Nginx 等等.下面我们就一起来安装一个 Apache 服务. 我们可以使用 yum ...

  8. 新阿里云服务器从0开始配置为python开发环境

    由于每次打开linux虚拟机比较麻烦,于是尝试一下云服务器,在阿里云领取了一个月的试用服务器,这里记录一下新服务器从0配置成python开发环境的步骤,以便以后配置新服务器时有个参考. 免费领取一个月 ...

  9. 阿里云服务器搭建java环境(jdk+tomcat+oracle11g)

    一.JDK配置 1.在centos 7的更新源中有JDK,使用yum即可下载安装 查看库中版本 [root@localhost ~]# yum search java|grep jdk 选择需要版本进 ...

随机推荐

  1. win10 如何关掉自带的杀毒软件 window defender

    问题描述: win10系统,自带的杀毒软件 window defender 会实时保护电脑对文件进行检测,将认为的病毒文件自动清除, 造成我想下载的MDK5的注册机一直下载不成功,即使从别处拷贝过来, ...

  2. xml的作用

    XML应用面主要分为两种类型,文档型和数据型.下面介绍一下几种常见的XML应用: 1.自定义XML+XSLT=>HTML,最常见的文档型应用之一.XML存放整个文档的XML数据,然后XSLT将X ...

  3. L1-064 估值一亿的AI核心代码

    以上图片来自新浪微博. 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 无论用户说什么,首先把对方说的话在一行中原样打印出来: 消除原文中多余空格:把相邻单词间的多个空格换成 1 个 ...

  4. 在Python工作环境中安装包命令后加上国内源速度*15

    example: pip install -r requests.txt -r https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pyp ...

  5. ionic 实现仿苹果手机通讯录搜索功能

    前言 由于之前做的SRM移动应用采用的是ionic1.x框架进行开发的,由于性能方便的诟病,导致用户体验不是很友好,于是想着怎么样去提高应用的性能问题.此时刚好ionic3.x框架已发布,由于ioni ...

  6. UML与软件建模:第二次作业(类图中类的表示)

    一.类图 (1)类图定义 类图,是UML(统一建模语言)中用于描述"类"以及"类与类"之间的示意图.它形象的描述出了系统的结构,帮助人们理解系统. 类图是在&q ...

  7. nmon的安装使用

    一.下载Nmon 根据CPU的类型选择下载相应的版本: http://nmon.sourceforge.net/pmwiki.php?n=Site.Download http://sourceforg ...

  8. nc/netcat命令

    nc/netcat命令 语法 nc/netcat(选项)(参数) 选项 -g<网关>:设置路由器跃程通信网关,最多设置8个: -G<指向器数目>:设置来源路由指向器,其数值为4 ...

  9. python命令行运行py文件找不到模块的解决办法

    问题: 新建了一个项目,目录结构如下: 然后在pycharm中运行glovar是没有问题的,但是在命令行中运行就会提示找不到init模块 这是因为在pycharm中运行的时候,pycharm会自动将项 ...

  10. java第八周作业

    分析代码: public final class LineItemKey implements Serializable { private Integer customerOrder; privat ...