阿里云服务器CentOS 5.7(64位)安装配置LAMP服务器(Apache+PHP5+MySQL)
一、快速安装Apache+PHP5+MySql
-----------------------------------------------------
补充:由于163的yum源上只有php5.1.6 mysql 5.0.95 版本较低,请直接看最后面的《八、卸载php5.1,mysql5.0 重新安装php5.4,mysql5.5》
安装163的yum源(参看我的别一篇文章)
ssh登录上服务器,先更新:
[root@AY1207241 /]# yum update
然后安装LAMP环境:(163的yum源上只有php5.1.6 mysql 5.0.95 版本较低)
[root@AY1207241 /]# yum -y install httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql
启动apache和mysql:
[root@AY1207241 /]# service httpd start (重启是restart)
[root@AY1207241 /]# service mysqld start (重启是restart)
设置为开机启动
chkconfig httpd on #Apache设为开机启动
chkconfig mysqld on #mysql设为开机启动
/etc/init.d/httpd start #启动Apache
/etc/init.d/httpd restart #重启Apache
---------
备 注:Apache启动之后会提示错误:正在启动 httpd:httpd: Could not reliably determine the server's fully qualif domain name, using ::1 for ServerName
解决办法:
vi /etc/httpd/conf/httpd.conf #编辑
找到 #ServerName www.example.com:80
修改为 ServerName localhost:80
:wq! #保存退出
Apache的配置文件:vi /etc/httpd/conf/httpd.conf
其中有:表示apache运行的用户
User apache
Group apache
二、测试PHP,输出php信息
-----------------------------------------------------
修改以下文件:
[root@AY1207241 /]# vi /var/www/html/index.php
输入测试PHP代码如下:
<?php
phpinfo();
?>
浏览器访问服务器IP地址,正常应该可以访问了。
三、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
四、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
五、挂载数据盘
-----------------------------------------------------
阿里云服务器的硬盘由两块组成,一块是系统盘,一块是数据盘,默认数据盘是没有挂载的,如果要用到数据盘就需要自己手动挂载。
通过命令fdisk -l,可以看到设备名为/dev/xvdb。
另外在挂载前要对硬盘(/dev/xvdb)分区和格式化。
分区使用命令fdisk,格式化命令为mkfs.ext3。
如何操作可以参照官方文档【Linux 系统挂载数据盘 】http://help.aliyun.com/manual?helpId=271
数据盘最多可以挂4块,挂在/data0,以后其它的可以挂在/data1,/data2,/data3
数据盘的作用,阿里云服务器控制台提供“重置”功能,可选重置系统盘,还是数据盘,如何操作系统坏了,你可以只重置系统盘,保留网站数据在数据盘。
六、配置MySql数据库--设置初始密码,建库,建表,导入数据
-----------------------------------------------------
七、把mysql的数据文件,移动到“数据盘”上,防止系统坏了重做系统时数据没有了。
-----------------------------------------------------
主要参考这篇文章:linux下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 不用做任何修改
我的版本是Server version: 5.0.95,其它版要不要改不知道 。
6、重新启动MySQL服务
/etc/rc.d/init.d/mysqld start
如果工作正常移动就成功了,否则对照前面的7步再检查一下。
移动完MySql之后,PHP连接不上Mysql数据库了
-----------------------------------------------------
经过上面的的操作,把MySql的数据文件移到其它目录后,PHP连接不上MySql数据库了,是因为找不mysql.sock文件。
报错信息如下:
- Discuz! Database Error
- (2002) notconnect
解决方法一:
建一个软连接
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 =,要不要修改视情况吧,我没有修改。
-----------------------------------------------------
参考文章:
linux下MySQL安装配置及操作 (修改密码,常用目录,修改数据文件位置)
CentOS 6.1安装配置LAMP服务器(Apache+PHP5+MySQL)
八、卸载php5.1,mysql5.0 重新安装php5.4,mysql5.5
-----------CentOS 5.7 卸载php,mysql 重新安装php5.4,mysql5.5-----
前提,原来mysql是5.0,要保留数据,升级到5.5
查看php版本 php -v
查看mysql版本 mysql -V
卸载mysql
rpm -qa |grep mysql
rpm -e --nodeps 加上:每一个包名用空格隔开
卸载php
rpm -qa |grep php
rpm -e --nodeps 加上:每一个包名用空格隔开
提示: /etc/php.ini saved as /etc/php.ini.rpmsave
安装配置新的yum源
wget http://centos.ustc.edu.cn/epel/5/x86_64/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/5/remi/x86_64/remi-release-5-8.el5.remi.noarch.rpm
rpm -ivh *.rpm
查看可用的MySQL版本
# yum --enablerepo=remi list mysql mysql-server php
使用新yum源安装php5.4,mysql5.5
yum --enablerepo=remi -y install httpd php mysql mysql-server
php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd
php-xml php-mbstring php-ldap php-pear php-xmlrpc mysql-connector-odbc
mysql-devel libdbi-dbd-mysql
按以前安装的方法,再次修mysql , php 配置文件
vi /etc/my.cnf (主要是修改mysql的数据文件的路径 )
vi /etc/php.ini php5.4不支持magic_quotes_gpc(防SQL流入)
重启MySQL
# service mysqld start
升级MySQL
# mysql_upgrade -u root -p
-----------CentOS 5.7 MySQL 5.0.95如何升级成5.5---------------------
1.安装配置yum源
wget http://centos.ustc.edu.cn/epel/5/x86_64/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/5/remi/x86_64/remi-release-5-8.el5.remi.noarch.rpm
rpm -ivh *.rpm
查看可用的MySQL版本
# yum --enablerepo=remi list mysql mysql-server
更新或者安装MySQL(如果没有的话)
# yum --enablerepo=remi update mysql mysql-server
重启MySQL
# service mysqld start
升级MySQL
# mysql_upgrade -u root -p
---------CentOS 5.7 PHP5.1.6升级到5.3.23-------------------
rpm --import http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andy
wget -P /etc/yum.repos.d/ http://repo.webtatic.com/yum/webtatic.repo
yum --enablerepo=webtatic list php
发现有php5.2 和 php5.3可以升级。
我直接升级到5.3,执行:yum --enablerepo=webtatic update -y php
如果想升级到5.2,执行:yum --enablerepo=webtatic --exclude=php*5.3* update -y php
参考:http://www.cnblogs.com/fangbo/archive/2010/04/16/1713600.html
阿里云服务器CentOS 5.7(64位)安装配置LAMP服务器(Apache+PHP5+MySQL)的更多相关文章
- CentOS 7.4 64位安装配置MySQL8.0
第一步:获取mysql YUM源 进入mysql官网获取RPM包下载地址 https://dev.mysql.com/downloads/repo/yum/ image.png 点击下载 im ...
- CentOS 6.4中yum安装配置LAMP服务器(Apache+MySQL+PHP5)
准备篇: 1.配置防火墙,开启80端口.3306端口 vim /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp ...
- CentOS 6.6安装配置LAMP服务器(Apache+PHP5+MySQL)
准备篇: CentOS 6.6系统安装配置图解教程 http://www.osyunwei.com/archives/8398.html 1.配置防火墙,开启80端口.3306端口 vi /etc/s ...
- CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
这篇文章主要介绍了CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)的方法,需要的朋友可以参考下 文章写的不错,很详细:IDO转载自网络: 准备篇: 1.配置防火墙,开启 ...
- CentOS 7.0安装配置LAMP服务器(Apache+PHP+MariaDB)
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.service #停止fir ...
- CentOS 6.3安装配置LAMP服务器(Apache+PHP5+MySQL)
准备篇: 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp -- ...
- CentOS 7.0 安装配置LAMP服务器方法(Apache+PHP+MariaDB)(转)
转自:http://www.jb51.net/os/188488.html 作者:佚名 字体:[增加 减小] 来源:osyunwei 准备篇: CentOS 7.0系统安装配置图解教程 http:/ ...
- CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法
CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法 准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A I ...
- CentOS 6.4安装配置LAMP服务器
CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL) 作者: 字体:[增加 减小] 类型:转载 这篇文章主要介绍了CentOS 6.4安装配置LAMP服务器(Apache+ ...
随机推荐
- jbpm4.4 demo3
package cn.itcast.c_processinstance; import java.util.List; import org.jbpm.api.Configuration; impor ...
- Unity3D 导入贴图、模型等资源文件时自动设置参数
脚本继承至AssetPostprocessor, 存放在Editor目录下! using UnityEngine; using System.Collections; using UnityEdito ...
- 利用mongodb开发lbs应用实践【转】
近期作为突击队员,与同事一起突击构建了一个简单的lbs系统.当前比较主流的做法是使用mongodb,因为其已经封装了常用的lbs基本操作(如查找附近的人),功能非常强大,对于开发周期只有一周的项目,m ...
- 自定义QT事件
qtuserclass 1.事件ID 本质上就是一个整型值.0-999作为系统保留字段,自定义事件从QEvent::User(也就是1000)开始, 例如: #define MY_EVENT QEve ...
- Nginx【第一篇】安装
一.简介 Nginx("engine x")是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web 和 反向代理 服务器,也是一个 IMAP/POP3/SMT ...
- Java基础知识强化之IO流笔记36:InputStreamReader/OutputStreamWriter 复制文本文件案例
1. 需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中. 数据源: a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader 目的地: b.t ...
- 快速安装VIM开发环境
*Mac上当前用户的.vim目录打包*:附件地址:http://pan.baidu.com/s/1sj5FjZJ 1. 备份好系统的原来的vim配置文件,以备恢复使用: mv ~/.v ...
- css实现基础几何图形
我们知道,css3通过border-radius.animation.transform等“新”特性可以绘制很多精致的图形.比如腾讯企鹅Logo.超能陆战队中的大白机器人.太阳系.小黄人.叮当猫.安卓 ...
- ionic 手机端如何嵌入视频iframe
需求说明:后台提供功能,可以通过富文本编辑器[summernote]上传优酷的视频链接地址(这里需要注意:优酷视频提供多种操作方式 下面截图说明,先做个标记): 客户端是通过ionic开发的:而上传的 ...
- 转载---SQL Server XML基础学习<2>之--FOR XML AUTO/RAW
本文主要介绍FOR XML 的 AUTO 模式和 RAW 模式 --AUTO 模式将查询结果以嵌套 XML 元素的方式返回.这不能较好地控制从查询结果生成的 XML 的形式. --如果要生成简单的层次 ...