原文:php_linux_centos6.4_安装mysql_apache_php

原文 :

http://blog.csdn.net/xiaoliouc/article/details/17639503

对一些报错,自己做了补充

最近用php做的项目到了项目部署的时候,服务器为centos6.4系统,为了快捷部署,采用yum安装部署

大部分内容参考博客  http://blog.sina.com.cn/s/blog_c02ed6590101d2sl.html

一、安装 MySQL

首先来进行 MySQL 的安装。打开超级终端,输入:

[root@localhost ~]# yum install mysql mysql-server

安装完毕,让 MySQL 能够随系统自动启动:

[root@localhost ~]# chkconfig --levels 235 mysqld on
[root@localhost ~]# /etc/init.d/mysqld start

设置 MySQL 数据 root 账户的密码:

[root@localhost ~]# mysql_secure_installation

当出现如下提示时候直接按回车:

Enter current password for root

出现如下再次回车:

Set root password? [Y/n]

出现如下提示输入你需要设置的密码,回车后在输入一次确认:

New password:

接下来还会有四个确认,分别是:

Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]

直接回车即可。

二、安装 Apache 组件

  由于 CentOS 已经封装了 Apache,直接运行安装:

[root@localhost ~]# yum install httpd

同样配置系统让 Apache 随系统启动:

[root@localhost ~]# chkconfig --levels 235 httpd on

配置完毕,启动 Apache:

[root@localhost ~]# /etc/init.d/httpd start

  此时已经可以访问你的服务器,不出意外的话,能够看到 “Apache 2 Test Page powered by CentOS” 的测试页面。注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了。你只需要进入防火墙,将 “WWW” 对应的 “80” 端口打开即可。

注意:在 CentOS 中 Apache 的默认根目录是 /var/www/html,配置文件 /etc/httpd/conf/httpd.conf。其他配置存储在 /etc/httpd/conf.d/ 目录。

【如果出现报错 Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using】

)进入apache的安装目录:(视个人安装情况而不同) [root@server ~]# cd /etc/httpd/conf)编辑httpd.conf文件,搜索"#ServerName",添加ServerName localhost:
[root@server conf]# ls
extra httpd.conf magic mime.types original
[root@server conf]# vi httpd.conf
#ServerName www.example.com:
ServerName localhost:
)再重新启动apache 即可。
[root@server ~]# /etc/init.d/httpd restart

localhost可以写成外网,不然只能内部访问

【测试内部访问 curl localhost】

如果防火墙拦截,外网访问不了,比如输入  vip.test.com  [前边儿ServerName配置的是 ServerNamevip.test.com:80】

CentOS 防火墙开启80端口

网上搜索了很多都没解决问题,下面是正确方法:

#/sbin/iptables -I INPUT -p tcp --dport  -j ACCEPT

#/sbin/iptables -I INPUT -p tcp --dport  -j ACCEPT

然后保存:

#/etc/rc.d/init.d/iptables save

端口查看方法:

[root@vcentos ~]# /etc/init.d/iptables status

]

三、安装 PHP

输入如下指令安装 PHP:

[root@localhost ~]# yum install php

需要重新启动 Apache 服务:

[root@localhost ~]# /etc/init.d/httpd restart

四、测试 PHP 相关信息

  这步实际上可以省略,但是为了测试是否安装成功,你可以新建一个 PHP 页面进行测试,使用 vim 编辑器新建:

[root@localhost ~]# vi /var/www/html/info.php

按 “i” 键进行编辑,输入:

<?php
phpinfo();
?>

编辑完毕,按 “ESC” 键退出编辑模式,接着输入:

:wq

然后回车,即保存并退出。

  此时你可以访问你的站点地址,例如 “http://192.168.1.2/info.php”,查看是否能看到相关的 PHP 信息。

五、将 PHP 模块和 MySQL 模块关联起来

  还需要将 PHP 和 MySQL 关联起来,才能正常工作。搜索模块:

[root@localhost ~]# yum search php

安装相关模块:

[root@localhost ~]# yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

需要重启 Apache 模块才能生效:

[root@localhost ~]# /etc/init.d/httpd restart

  再次刷新刚才建立的 “info.php” 页面,往下拉找到相关 MySQL 模块,看是否检测到相关信息

问题1:为了让其他电脑访问,简单的方法是关闭防火前,不推荐 使用命令  /etc/rc.d/init.d/iptables stop

合理的方法是使用iptables规则,如下

关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。
下面是命令实现:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态
还要使用 service iptables save 进行保存
看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables
可以打开文件查看 vi /etc/sysconfig/iptables

参考博客  http://hi.baidu.com/beijiqieys/item/5ee9bbcf94f0a712b67a24cf

问题2:yum安装的mysql版本为5.1.7,默认latin字符,需要修改为utf-8。vi  /etc/my.cnf文件,添加default-character-set=utf8,如下

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql]
default-character-set=utf8

问题3:项目使用了mb_substr函数以及soap协议,php默认没安装,yum install php-mbstring 以及 yum install php-soap,重启apache,/etc/init.d/httpd restart

问题4:默认apache指向/var/www/html目录,如果我要指向 /var/www/html/project ,修改httpd.conf

vi  /etc/httpd/conf/httpd.conf  命令,查找/var/www/html改为/var/www/html/project,重启apache服务即可,/etc/init.d/httpd restart

问题5:项目必须有读写权限

使用chmod -R **命令

修改发布路径 报错

Stopping httpd: [ OK ]
Starting httpd: Warning: DocumentRoot [/home/chenpenghui/web/web-6s] does not exist

当然也可以去禁止掉SELinux。
/usr/sbin/setenforce 0 立刻关闭 SELINUX
/usr/sbin/setenforce 1 立刻启用 SELINUX

php_linux_centos6.4_安装mysql_apache_php的更多相关文章

  1. centos6.4_安装Python3.5.2之问题

    一.安装centos6.4虚拟机 这个就不用我详细介绍了,网上安装教程一大把了哈,自己百度安装应该没啥问题了 二.下载python安装包 官网下载python3.5.2安装包:https://www. ...

  2. php_linux_ubuntu_安装mysql_apache_php

    用apt-get方法安装mysql5 + Apache2 + PHP5+Phpmyadmin [建议] http://www.sudu.cn/info/html/edu/20080102/283439 ...

  3. Centos-7.4_安装_Redis_4.0.8

    一.安装redis 第一步:下载redis安装包 [root@Redis ~]# mkdir /usr/local/redis/ --创建目录 [root@Redis redis]# cd /usr/ ...

  4. linux_OEL5.4_安装Oracle11g中文教程图解

    一.安装ORACLE10g 软件(11.2.0.0) 参考pdf:链接:http://pan.baidu.com/s/1pLHU94J 密码:keo8 (一)安装前的包支持 1. 虚拟机yum 环境搭 ...

  5. OCP 相关课程列表

    OCP 相关课程列表 第一天:Linux基础 和 Oracle 11 R2 数据库安装教程图解 1:< VM 安装 linux Enterprise_R5_U4_Server_I386_DVD教 ...

  6. redis学习笔记01 — 基本介绍、安装配置及常用命令

    redis--NoSQL的一种 为了解决高并发.高可用.高扩展.大数据存储等一系列问题而产生的数据库解决方案,就是NoSQL NoSQL,非关系型数据库,全名:Not Only Sql,它不能代替关系 ...

  7. js判断移动端是否安装某软软件,安装直接打开相应的链接,否则跳转到下载商店方法

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. ndk+opencv安装+各种错误分析(新版安装,编译不需要Cygwin 和Sequoyah了)

    鼓捣了两三天,终于成功算跑通了一个简单的程序.下面说说具体的安装: 因为从同学那里拷过来的eclipse 就有adt cdt 的插件.所以这两个就不用再安装了.(需要的话自己安装) 具体说下安装过程: ...

  9. 路由器逆向分析------在Linux上安装IDA Pro

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/69665905 01.在Linux系统上安装Linux版本的IDA Pro Linu ...

随机推荐

  1. rsync+inotify 实现资源服务器的同步目录下的文件变化时,备份服务器的同步目录更新,以资源服务器为准,去同步其他客户端

    测试环境: 资源服务器(主服务器):192.168.200.95 备份服务器(客户端):192.168.200.89 同步目录:/etc/test 同步时使用的用户名hadoop密码12345 实验目 ...

  2. rsync+inotify实现server实时备份

    inotify实现对文件夹下文件进行监听的原理: inotify集成到内核中,通过内核提供的接口.使用inotify作为第三方的软件对文件夹变化进行监控. inotifywait命令能够对文件夹中的文 ...

  3. SQL查询优化——数据结构设计

    本文部分内容会涉及mysql,可能在其它数据库中并不适用. 本章节仅仅针对数据库结构设计做讨论.查询优化的其它内容待续. 数据库设计及使用是WEB开发程序猿必备的一项基础技能,在大数据量和高并发场景, ...

  4. redmine使用汇总redmine软件工程过程

    1.强制性当一个新的问题:轨道.议题.叙述性说明.状态.优先.分配给.父任务(假设没有可以不填,假设有请务必填写).开始日期.预计时间.党羽,请注意,这时候一定不要填写完成时间 2.如果你想在实时登记 ...

  5. LeetCode: Distinct Subsequences [115]

    [称号] Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequ ...

  6. 返璞归真 asp.net mvc (8) - asp.net mvc 3.0 新特性之 Model

    原文:返璞归真 asp.net mvc (8) - asp.net mvc 3.0 新特性之 Model [索引页][源码下载] 返璞归真 asp.net mvc (8) - asp.net mvc ...

  7. App设计相关网站

    http://sketch.im/ 设计素材 principle  动效软件 http://principleformac.com/ 官网 http://principlecn.com/ 中文网

  8. 一个小的日常实践——高速Fibonacci数算法

    上得厅堂.下得厨房.写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练! 题目:高速Fibonacci数算法 内容:先说说Fibonacci数列,它的定义是数列:f1,f2....fn有例如以下规律: ...

  9. MonkenRunner通过HierarchyViewer定位控制的方法和建议(Appium/UIAutomator/Robotium侣)

    1. 背景 正在使用MonkeyRunner当我们经常使用Chimchat下面HierarchyViewer模块获得目标控制的一些信息,以协助我们测试.但在MonkeyRunner官方的说法是没有看到 ...

  10. 【C语言探索之旅】 开宗明义及第一课:什么是编程?

    内容简介 1.课程大纲 2.第一部分第一课:什么是编程? 3.第一部分第二课预告:工欲善其事,必先利其器 ​ 课程大纲 不知道为什么,一直对C语言有一种很深厚的“情怀”(类似老罗对锤子手机的那种),说 ...