lamp环境配置之CentOS 6.3下阿里云服务器下 LAMP 环境配置

发布时间 - 2018-07-28 00:00:00    点击率:

有很多同学可能对于LAMP 环境配置不太熟悉,在配置lamp环境的时候可能会出现一些问题,今天在这里给朋友分享一篇基于CentOS 6.3下阿里云服务器下 LAMP 环境配置 的详细内容,下面我们就来具体的看一看。

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文件时有几步与上文不一样,这里说明一下。操作方法如下 :

  • 停止mysql进程

  • 把/var/lib/mysql整个目录移到/data0/db

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

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

  • 修改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

  • 编辑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 #新加的内容

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

  • 重新启动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

Linux下LAMP(Apache+PHP+MySql)环境配置

laravel环境搭建:laravel如何部署到阿里云或者腾讯云步骤

相关课程推荐:

2017年最新的五个Laravel视频教程推荐


# php  # laravel  # sql  # mysql  # html  # for  # date  # Error  # mysqli  # CGI  # var  # default  # 数据库  # apache  # linux  # centos  # 云服务器  # 配置文件  # 系统盘  # 挂在  # 重启  # 移到  # 连接不上  # 我是  # 在这里  # 是因为  # 你可以 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 详解Android中Activity的四大启动模式实验简述  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  香港服务器网站推广:SEO优化与外贸独立站搭建策略  如何用免费手机建站系统零基础打造专业网站?  音响网站制作视频教程,隆霸音响官方网站?  如何快速上传自定义模板至建站之星?  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  香港服务器租用每月最低只需15元?  java中使用zxing批量生成二维码立牌  网站制作价目表怎么做,珍爱网婚介费用多少?  Laravel如何与Pusher实现实时通信?(WebSocket示例)  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  Swift中switch语句区间和元组模式匹配  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  如何快速生成专业多端适配建站电话?  昵图网官方站入口 昵图网素材图库官网入口  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  php 三元运算符实例详细介绍  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  Python文件流缓冲机制_IO性能解析【教程】  佛山企业网站制作公司有哪些,沟通100网上服务官网?  如何在搬瓦工VPS快速搭建网站?  Android利用动画实现背景逐渐变暗  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  在线制作视频网站免费,都有哪些好的动漫网站?  Android 常见的图片加载框架详细介绍  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  郑州企业网站制作公司,郑州招聘网站有哪些?  ,交易猫的商品怎么发布到网站上去?  网站建设要注意的标准 促进网站用户好感度!  Laravel如何实现用户密码重置功能?(完整流程代码)  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  JavaScript数据类型有哪些_如何准确判断一个变量的类型  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  Laravel怎么在Controller之外的地方验证数据  图册素材网站设计制作软件,图册的导出方式有几种?  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  Laravel如何生成URL和重定向?(路由助手函数)  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel怎么实现模型属性的自动加密  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】