一、修改设置对安装做准备 1

1. 防火墙设置 2

2. 关闭SELINUX 3

二、开始安装软件 4

1. MySql的安装和配置 4

2. Apache服务的安装和配置 8

3.安装PHP 10

三、修改Apache和PHP的配置 11

1.修改Apache配置 11

2. 修改PHP配置 13

四、 测试PHP测试页面 15

LAMP服务器配置完成。 18

一、修改设置对安装做准备

本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~

 在本文中部分命令操作需要root权限,输入‘su -’命令后输入密码即可切换root身份。

1. 防火墙设置

 设置/etc/sysconfig/iptables文件允许80端口和3306端口。因为80端口是http协议所使用的端口,如果防火墙禁止80端口的话,网站配置好了也无法从外网访问。3306端口是MySql数据库的默认端口。使用VIM打开iptables文件并添加规则:

1 打开iptables文件进行修改
2 vim /etc/sysconfig/iptables
3
4 加入下列两行
5 -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
6 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

添加好后文件应该如下图,如果以前修改过该文件责可能和笔者的图中略有不同:

 修改完成注意检查下拼写,不要有错误。保存之后重启防火墙生效:

/etc/init.d/iptables restart

2. 关闭SELINUX

SELinux 是 2.6 版本的 Linux 内核中提供的强制访问控制(MAC)系统。对于目前可用的 Linux安全模块来说,SELinux 是功能最全面,而且测试最充分的。SELinux提供了比默认ugo+rwx更详细的权限控制。打开SELinux后,即使因为0day漏洞被提权,相应程序的权限在SELinux控制下也不会造成太大影响。但是在实际应用情况中,SELinux并不实用,没人会闲的去用0day漏洞攻击个人电脑,业务服务器基本上都是用负载均衡设备做流量分发,对外仅开放了仅有的几个端口。所以综合安全性和复杂性来说,SELinux的性价比并不高。修改/etc/selinux/config文件关闭SELinux,设置后如图:

1 vim /etc/selinux/config
2
3 注释掉如下两行,在行首添加#注释。
4 SELINUX=enforcing
5 SELINUXTYPE=targeted
6
7 在后面增加:
8 SELINUX=disabled

  关闭SELinux后需要重启系统,输入‘shutdown -r now’重启系统。


二、开始安装软件

1. MySql 的安装和配置

安装MySql:

 1 通过yum软件包管理器安装MySql,管理器会自动安装依赖项,遇到询问直接输入y确认,直到显示“Complete!”完成。
 2 yum install mysql mysql-server
 3
 4 启动MySql
 5 /etc/init.d/mysqld start
 6
 7 设置MySql服务为开机启动
 8 chkconfig mysqld on
 9
10 复制MySql默认配置文件,直接覆盖/etc/my.cnf
11 cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

MySql设置:

输入如下命令后需要连续输入两次密码确认,有询问输入Y同意即可,成功后显示Thanks for using MySQL!。
mysql_secure_installation

  设置成功后需要重启MySql服务:

1 /etc/init.d/mysqld stop
2 /etc/init.d/mysqld start

另外一种设置mysql管理员root账户密码的方式:

# mysql -u root -p

提示:linux下使用mysql数据库出现 “Access denied for user 'root'@'localhost' (using password: YES)”

解决办法:http://blog.csdn.net/amkider/article/details/74978837

解决方法如下:

1、停止mysql服务:

service mysql stop

2、后台安全模式登陆mysql:

mysqld_safe --user=mysql --skip-grant-tables --skip-networking

3、新开一个窗口,直接在命令行输入mysql,登陆;

4、修改mysql密码:

update mysql.user set password=PASSWORD('123456') where user='root';

5、刷新、退出:

flush privileges;

quit;

6、重启mysql服务:

service mysql restart;

再次提示:Socket file /var/lib/mysql/mysql.sock exists. Is another MySQL daemon already running with the same

解决办法:http://blog.csdn.net/u012700515/article/details/46386755(重启系统)

service mysql start时提示:

Socket file /var/lib/mysql/mysql.sock exists. Is another MySQL daemon already running with the same unix socket?

多个Mysql进程使用了同一个socket,解决方法为reboot整个系统后解决。-还有一种说法是修改mysql.sock名称,验证好像不行。

  设置成功后需要重启MySql服务:

1 /etc/init.d/mysqld stop2 /etc/init.d/mysqld start

2. Apache服务的安装和配置

 

 1 通过yum软件包管理器安装MySql,管理器会自动安装依赖项,遇到询问直接输入y确认,直到显示“Complete!”完成。
 2 yum install mysql mysql-server
 3
 4 启动MySql
 5 /etc/init.d/mysqld start
 6
 7 设置MySql服务为开机启动
 8 chkconfig mysqld on
 9
10 复制MySql默认配置文件,直接覆盖/etc/my.cnf
11 cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
 1 安装httpd
 2 yum install httpd
 3
 4 启动Apache服务
 5 /etc/init.d/httpd start
 6
 7 编辑apache设置
 8 vim /etc/httpd/conf/httpd.conf
 9 查找 #ServerName www.example.com:80
10 修改成 ServerName www.XXXX.com:80
11 其中的“www.XXXX.com”自己的域名,没有可设置为localhost,如图
12
13 设置Apache服务开机启动
14 chkconfig httpd on
15
16 重启Apache服务
17 /etc/init.d/httpd restart

  安装好Apache服务后,打开系统自带的火狐浏览器,打开localhost这个网址即可看到Apache的示例网页。

3.安装PHP

安装PHP非常简单:

遇到询问直接输y确认
yum install php

  安装PHP插件:

插件包括MySql支持等,遇到询问一如既往的y确认~~
yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

  安装完成后不要忘了重启Apache和MySql:

/etc/init.d/mysqld restart
/etc/init.d/httpd restart

  到此软件的安装就结束了,接下来进行配置和测试。修改Apache

三、修改Apache和PHP的配置

1.修改Apache配置

作为一个架设在公网上的服务器,我们可不能让服务器所使用的软件版本或者错误等信息暴露网页上,这就需要对Apache进行设置:

 1 编辑文件Apache设置文件
 2 vi /etc/httpd/conf/httpd.conf
 3
 4 44行: 修改 ServerTokens OS  为 ServerTokens Prod
 5 防止错误页显示操作系统名字
 6
 7 76行: 修改 KeepAlive Off 为 KeepAlive On
 8 允许程序性联机
 9
10 83行: 修改 MaxKeepAliveRequests 100 为 MaxKeepAliveRequests 1000
11 增加同时连接数
12
13 331行: 修改 Options Indexes FollowSymLinks 为 Options Includes ExecCGI FollowSymLinks
14 允许服务器执行CGI及SSI,防止列出目录
15
16 338行: 修改 AllowOverride None  为 AllowOverride All
17 允许.htaccess
18
19 402行: 修改 DirectoryIndex index.html index.html.var  为 DirectoryIndex index.php Default.php index.html index.htm Default.html Default.htm
20 添加php默认文档
21
22 536行:  修改 ServerSignature On 为 ServerSignature Off
23 防止错误页显示Apache版本
24
25 554行: 修改 Options Indexes MultiViews FollowSymLinks  为 Options MultiViews FollowSymLinks
26 不显示树状目录结构
27
28 759行: 根据需要设置为 AddDefaultCharset UTF-8 或者 AddDefaultCharset GB2312
29 笔者大多数时候都在使用UTF-8编码,所以不进行修改
30
31 796行: 修改 #AddHandler cgi-script .cgi 为 AddHandler cgi-script .cgi .pl
32 允许扩展名为.pl的CGI脚本运行

  修改完成后保存退出并重启Apache,删除测试网页:

/etc/init.d/httpd restart删除测试网页
rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html 

2. 修改PHP配置

 1 编辑php设置文件
 2 vim /etc/php.ini
 3
 4 946行: 修改 ;date.timezone = PRC 为 date.timezone = PRC  (去掉分号)
 5
 6 386行: 修改 disable_functions = 为 disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
 7 设置PHP的禁用函数,若程序中需要使用的函数可以删除掉。
 8
 9 432行: 设置 expose_php = Off
10 禁止显示php版本的信息
11
12 745行: 设置 magic_quotes_gpc = On
13 打开magic_quotes_gpc,用于防止SQL注入
14
15 229行: 设置 short_open_tag = ON
16 支持php短标签
17
18 380行: 设置 open_basedir = .:/tmp/
19 设置允许访问的目录和/tmp/目录,防止php木马跨站

  修改完成保存后重启服务:

/etc/init.d/mysqld restart
/etc/init.d/httpd restart

四、 测试PHP探针页面

 输入“vim /var/www/html/index.php”添加PHP探针页面并输入以下代码:

1 <?php

2     phpinfo();
3 ?>

  保存退出后在浏览器中输入localhost查看php信息:

   设置文档文件夹权限:

chown apache.apache -R /var/www/html


LAMP服务器配置完成。

在CentOS6.4中安装配置LAMP环境后,需要安装Mantisbt-1.2.8

centos6 安装 mantisbt-1.2.8 —— (5)Mantisbt-1.2.8在contos上的安装

参考的网址:

1》Centos6.4中安装LAMP环境:

http://www.cnblogs.com/Leroy1245/p/3611720.html?spm=5176.11156381.0.0.3dab72871d84Ch

centos6 安装 mantisbt-1.2.8 —— (4)在CentOS6.4中安装配置LAMP环境相关推荐

  1. untubu安装mysql_简单操作阿里云untubu服务器并且配置LAMP环境

    前言 简单操作阿里云untubu服务器并且配置LAMP环境 Linux常用命令 在配置untubu服务器之前,我们得先看几个简单的linux常用的简单命令 sudo以管理员的身份执行命令 查看文件 l ...

  2. CentOS 6.4 配置LAMP 环境 与安装 phpmyadmin

    参考的博客原文看这里,自己加了些东西 ---------------------------------安装LAMP 环境: 首先测试一下 yum install httpd 这个命令,如果能够正常安 ...

  3. 安装32位mysql报错_在CentOS中安装32位或64位MySql报错error: Failed dependencies解决办法...

    在CentOS中安装MySql报错error: Failed dependencies解决办法 安装64位MySql报错内容如下: error: Failed dependencies: libaio ...

  4. win10安装net3.5不成功出现 0x8024402c_在移动硬盘中安装win10和macos双系统

    本文通过在SSD移动硬盘中安装win10和macos双系统,实现操作系统随身携带 小慢哥的原创文章,欢迎转载 目录 ▪ 目标 ▪ 准备工作 ▪ Step1. 清空分区,转换为GPT ▪ Step2. ...

  5. 本地计算机所安装的网络组件,3.2 在本地计算机中安装和配置IIS

    ASP是微软开发的动态网站技术,它继承了微软产品的一贯优秀传统,当然也继承了微软的自私,即该技术只能在微软的服务器产品(也就是服务器组件)内运行.微软提供的支持ASP技术的产品包括: l IIS(In ...

  6. 电脑安装python3.74_在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程

    今天给大家分享在Python3.74+PyCharm2020.1 x64中安装使用Kivy的教程,具体内容如下所示: 我实验环境是Python3.74+PyCharm2020.1 x64+Kivy k ...

  7. 安装linux子系统报错,详解win10电脑中安装linux子系统出现错误0x80070057方法

    现在很多的小伙伴在安装系统的时候都是选择安装双系统的操作的,那其实可以根据需求安装 Win10的系统还有linux系统的是很常见的开发用户的程序的选择,win10电脑就内置有linux子系统的,安装出 ...

  8. 镜像安装linux选择内核版本,在CentOS和Ubuntu中安装Linux Kernel 4.13.10

    Linus Torvalds 在 10 月 17 日星期五正式发布了稳定版 Linux Kernel 4.13.10,这个最新版本发布了新功能,进行了诸多修复和问题改进.下面将向大家介绍在 CentO ...

  9. Linux一键安装xrdp,如何在Linux系统Ubuntu 20.04中安装xrdp实现远程桌面连接RDP

    我们很多网友可能是比较熟悉RDP协议的,这是在微软远程桌面协议,我们可以通过远程连接到另外一台计算机或者电脑进行图形化操作连接,这个我们常用的就是本地电脑连接Windows服务器进行远程管理有用到的. ...

最新文章

  1. 敏捷方法适合什么样的团队?
  2. mysql密码设置 alert_MySQL用户、权限及密码操作
  3. “火柴棍式”程序员面试题
  4. is属性用法 vue_Vue中is属性的用法 可以动态切换组件
  5. kylin如何支持flink_Kylin 在腾讯的平台化及 Flink 引擎实践
  6. 敏捷方法在测试计划中的应用
  7. 在网页中使用react
  8. Eclipse插件Ant里运用ftp遇到的问题
  9. 索罗斯说,我投机了,但我不觉得我做错了什么,我做的都是合法的。
  10. 贴片电容封装及尺寸示意图
  11. ie以及ie内核浏览器连不上网,其他浏览器可以,部分软件连不上网的解决办法
  12. matlab 三对角矩阵 追赶法,计算方法追赶法解三对角矩阵方程
  13. 魔兽世界模型浏览器WowModelExplorer演示
  14. 【编译原理】理解BNF
  15. laptop3换硬盘_实战laptop3拆机硬盘扩容
  16. html中颜色打字机效果,Css打字机效果
  17. 做网赚想要赚到钱,心态很重要
  18. ios应用数据存储方式(偏好设置)
  19. 挺着肚皮的小淘气 蒙语版铃声 挺着肚皮的小淘气 蒙语版手机铃...
  20. 测绘——通过手机和smart3D创建三维模型

热门文章

  1. 设置网络映射后,电脑重启后自动重连
  2. Python网络爬虫与信息提取(一)(入门篇)
  3. Jmeter使用基础笔记-写一个http请求
  4. CentOs7安装gitlab(转!)
  5. 深入理解定位父级offsetParent及偏移大小
  6. linux用户、组、权限问题
  7. java文件名与class关系
  8. (转)正则表达式语法备忘录
  9. poj 3984 迷宫问题 BFS
  10. b2evolution_0.9.2修改(1)