设为首页 收藏本站
查看: 766|回复: 0

[经验分享] CentOS 5.4 服务器配置 yum安装Apache+php+Mysql+phpmyadmin

[复制链接]

尚未签到

发表于 2015-8-4 09:33:25 | 显示全部楼层 |阅读模式
1. 更新系统内核到最新.
[iyunv@linuxfei ~]#yum -y  update
系统更新后,如果yum安装时提示错误信息,请执行以下命令修复.
[iyunv@linuxfei ~]#rpm –import  /etc/pki/rpm-gpg/RPM-GPG-KEY*
2. 安装Apahce, PHP, Mysql,  以及php连接mysql库组件
[iyunv@linuxfei ~]#yum -y install httpd php mysql mysql-server  php-mysql
//安装mysql扩展
[iyunv@linuxfei ~]#yum -y install  mysql-connector-odbc mysql-devel libdbi-dbd-mysql
//安装php的扩展 http://www.lupaworld.com:8088/wz/api/robot.api.php?__get=YjAxNjAzNGZhOjg6e3M6NzoiaXRlbV9pZCI7czo0OiI1MDQ2IjtzOjg6InJlc291cmNlIjtzOjU6ImltYWdlIjtzOjM6ImFjdCI7czo3OiJkaXNwbGF5IjtzOjQ6InRpbWUiO2k6MTI4ODA2MTQ1MztzOjM6ImRpciI7aTo2MzgzMjA1NTU7czo4OiJmaWxlbmFtZSI7czoxMzoiMTUwNjg5MjU4LnBuZyI7czo1OiJ3aWR0aCI7aToyNDE7czo2OiJoZWlnaHQiO2k6NDc7fQ%3D%3D
[iyunv@linuxfei ~]# yum -y install php-gd  php-xml php-mbstring php-ldap php-pear  php-xmlrpc
//安装apache扩展
[iyunv@linuxfei ~]#yum -y install httpd-manual  mod_ssl mod_perl mod_auth_mysql
一次性粘贴安装:
[iyunv@linuxfei ~]# 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
3.  启动服务配置
[iyunv@linuxfei ~]# /sbin/chkconfig httpd on  [设置apache为自启动]
[iyunv@linuxfei ~]# /sbin/chkconfig –-add mysqld  [mysql服务]
[iyunv@linuxfei ~]# /sbin/chkconfig mysqld on  [mysqld服务]
[iyunv@linuxfei ~]# /sbin/service httpd start [自启动 httpd  服务]
[iyunv@linuxfei ~]# /sbin/service mysqld start  [自启动mysqld服务]
4.设置mysql数据库root帐号密码。
[iyunv@linuxfei ~]# mysqladmin -u root  password 'linuxfei'    [引号内填密码]
[iyunv@linuxfei ~]# mysql -u root -p                ← 通过空密码用root登录
Enter password:linuxfei ← 在这里输入密码
Welcome to the  MySQL monitor. Commands end with ; or \g. ← 确认用密码能够成功登录
Your MySQL connection  id is 5 to server version: 4.1.20
Type 'help;' or '\h' for help. Type  '\c' to clear the buffer.
5.安装phpmyadmin
[iyunv@linuxfei /]# wget  http://gd2.down.chinaz.com:808/数据管理/phpMyAdmin-3.tar.gz
--2010-03-23  16:38:18--  http://gd2.down.chinaz.com:808/??????/phpMyAdmin-3.x.tar.gz
Resolving  gd2.down.chinaz.com... 121.11.80.154
Connecting to  gd2.down.chinaz.com|121.11.80.154|:808... connected.
HTTP request sent,  awaiting response... 200 OK
Length: 4700100 (4.5M)  [application/x-gzip]
Saving to:  `phpMyAdmin-3.x.tar.gz'
100%[======================================>]  4,700,100    134K/s   in 37s   
2010-03-23 16:38:56 (123 KB/s) -  `phpMyAdmin-3.x.tar.gz' saved  [4700100/4700100]
解压phpmyadmin
[iyunv@centos5 /]#tar zxvf  phpMyAdmin-3.x.tar.gz
[iyunv@linuxfei /]# mv  phpMyAdmin-3.3.1-all-languages  /var/www/html/phpmyadmin
将解压出来的目录移动到/var/www目录下并改名为phpmyadmin
修改phpmyadmin根目录下的config.sample.inc.php  重命名为 config.inc.php
打开并编辑config.inc.php
$cfg['blowfish_secret'] =  '';
然找到下边这两行 并把//去除
// $cfg['Servers'][$i]['controluser'] =  'pma';                    mysql用户名
// $cfg['Servers'][$i]['controlpass'] =  'pmapass'               mysql密码

apache配置
/etc/httpd/conf/httpd.conf
        最主要的配置文件,不过很多其他的distribution都将这个文件拆成数个小文件,分别管理不同的参数。但是最主要配置文件还是以这个文件名为主。
/etc/httpd/conf.d/*.conf
      这个事CentOS的特色之一,如果你不想修改原始配置文件httpd.conf的话,那么可以将你自己的额外参数独立出来,而启动apache时,这个文件就会被读入到主要配置文件。
/usr/lib/httpd/modules
      apache支持很多的模块,所以您想要使用的模块默认都放置在此目录
/var/www/html
这里是CentOS默认的“首页”所在目录。
/var/www/error
如果因为主机设置错误,或者是浏览器端要求的数据错误,在浏览器上出现的错误信息就已这个目录的默认信息为主。
/var/www/icons
提供apache的一些小图标
/var/www/cgi-bin
默认给一些可执行的CGI程序放置的目录
/var/log/httpd
默认apache的日志文件都放在这里,对于流量大的网站来说,这个目录要很小心,因为这个文件很容易变的很大,您需要足够的空间哦
/usr/sbin/apachectl
     这是Apache的主要执行文件,这个执行文件其实是shell  script,它可以主动检测系统上的一些设置值,好让您启动Apache时更简单
/usr/sbin/httpd
这是主要的apache的二进制文件
/usr/bin/htpasswd
      当您想登陆某些网页时,需要输入账号与密码。那么Apache本身就提供一个最基本的密码保护方式。该密码的产生就是通过这个命令实现的
至于MySQL方面,您需要知道的几个重要目录与文件有以下几个:
/etc/my.cnf:这是Mysql的配置文件,包括您想要进行mysql数据库的最佳化,或者是正对mysql进行一些额外的参数指定,都可以在这个文件里实现
/usr/lib/mysql:这个目录是MySQL数据库放置的位置,当启动任何MySQL的服务器时,请务必记得在备份时,将此目录完整的备份下来。
另外,在PHP方面,应该了解以下几个文件。
/usr/lib/httpd/modules/libphp4.so:PHP提供给apache使用的模块,这个关系我们能否在apache网页上面设计php程序语言的最重要文件
/etc/httpd/conf.d/php.conf:你要不要手动将该模块写入Httpd.conf中呢?不需要,因为系统已经主动将php设置参数写入到这个文件中了,而这个文件会在apache重新启动时被读入。
/etc/php.ini:这是PHP的主要配置文件,包括PHP能不能允许用户上传文件,能不能允许某些低安全性的标志等,都在这个配置文件中设置。
/etc/php.d/mysql.ini  /usr/lib/php4/mysql.so:PHP能否可以支持MySQL接口就看这两个文件了。这两个文件是由php-mysql软件提供的
/usr/bin/phpize  /usr/include/php:如果您以后想要安装类似PHP加速器可以让浏览速度加快的话,那么这个文件与目录就需要存在,否则加速器软件没法用。
httpd.conf的基本设置
首先,你需要在/etc/hosts内需要有个一个完整的主机名,否则在重启apache服务时,会提示找不到完整的主机名。
httpd.conf的基本设置是这样的:
        次设置项目内的相关参数
        。。。。
例如,你想要针对首页/var/www/html提供额外的功能,那么可以进行如下设置:
    Options  Indexes
    ......

针对主机环境的设置项目
#vi  /etc/httpd/conf/httpd.conf
ServerTokens OS
#  这个项目在告诉客户端WWW服务器的版本和操作系统,不需要改编它
#如果你不想告诉太多的主机信息,将这个项目的OS改成Minor
ServerRoot  "/etc/httpd"
#这个是设置文件的最顶层目录,通常使用绝对路径,下面某些数据设置使用相对路径时
#就是与这个目录设置值有关的下层目录,不需要更改它
ServerRoot
设定Apache  安装的绝对路径
TimeOut
设定  服务器接收至完成的最长等待时间
KeepAlive
设定服务器是否开启连续请求功能,真实服务器一般都要开启
Port
设定http服务的默认端口。
User/Group
设定  服务器程序的执行者与属组,这个一般是apache
下面我们就针对Apache做几个实验
1:我们测试把默认网站目录改到root家目录下
新建/root/website目录
#mkdir  -p /root/website
#echo "website page" >>  /root/website/index.html
#vi /etc/httpd/conf/httpd.conf
找到 DocumentRoot  "/var/www/html" 这一段   //apache的根目录
把/var/www/html 这个目录改到  /root/website
在找到  //定义apache /var/www/html这个区域
把  /var/www/html改成/root/website
这样我们就把apahce的默认路径改掉了
然后重启服务
#service httpd  restart  
//这里在你重启服务的时候,可能会报错,说找不到目录,这个主要是由于selinux导致的
那怎么解决呢?有2个办法,关掉selinux  
#setenforce  0
或者更改/root/website这个文件的selinux属性,让它匹配httpd这个服务器的要求
怎么改?我们可以复制/var/www/html这个目录的selinux属性
#chcon  -R --reference /var/www/html  /root/website
然后在重启服务,之后你就看到它没有报错了
不过你去访问localhost的时候,会发现访问拒绝  这是为什么呢?主要是因为你的/root的权限是750,ahache这个用户没有权限访问,你需要更改掉权限,可以这样改
#chmod -R 755  /root
然后去访问  发现正常了
2:基于名称的虚拟主机
需要两个域名解析到你的服务器,对应关系是
/var/www/server              server.example.com
/var/www/client                 client.example.com
当访问这两个域名时,可以分别显示出不同文件里面主页的内容
#echo "server page"  >> /var/www/server/index.html
#echo "client page" >>  /var/www/client/index.html
然后我们编辑一个配置文件
#vi /etc/httpd/conf.d/virtual.conf  //记住conf.d里面的内容也是apache的配置文件
添加如下内容:
NameVirtualHost  192.168.76.133:80

ServerName service.example.com
DocumentRoot  /var/www/server

ServerName client.example.com
DocumentRoot  /var/www/client
#service httpd  restart
这样基于名称的虚拟主机就配置好了
如果你没有DNS你可以再你的机器上hosts文件里加记录 linux在/etc/hosts这个文件  windows在C:\windows\system32\drivers\etc\hosts文件
加上这两行
192.168.76.133     server.example.com
192.168.76.133     client.example.com
这样你在去测试,就会发现访问不同的域名显示不同的内容了  这样基于名称的虚拟主机就配置好了!
3:基于IP地址的虚拟主机
先添加一个临时网卡
#ifconfig eth0:0  192.168.76.132 //临时使用,重启后就会消失
然后便捷virtual.conf文件
#vi  /etc/httpd/conf.d/virtual.conf
把内容修改为
#NameVirtualHost  192.168.76.133:80

ServerName service.example.com
DocumentRoot  /var/www/server

ServerName client.example.com
DocumentRoot  /var/www/client
让后你在用ip访问,发现也能显示不同的内容,或者你编辑hosts文件,用域名访问也没问题
这样基于IP地址的虚拟主机也成功了!
4:别名
在/etc/httpd/conf/httpd.conf里加入
Alias  /test "/root/website/"    // 别名 这样你用192.168.76.133/test访问  也会显示192.168.76.133的页面
这个地方需要注意的就是/test 还是/test/ 这个是用区别的 你用/test  那么你访问的时候只能用192.168.76.133/test访问   如果你用/test/  那么192.168.76.133/test/访问,而/test将不会放你访问
忘了这里你的先把/etc/httpd/conf.d目录里面刚刚设置的虚拟目录注释掉  不然没法访问,是因为做了虚拟目录,而httpd.conf里面的设置就无法访问  当然可以用localhost来访问,其他的访问都不行
5:实现网页的资源下载
首先添加别名
#vi  /etc/httpd/conf/httpd.conf
在Alias /test "/root/website/" 后面加入
Alias /down  "/var/ftp/pub"
让后对/var/ftp/pub区域设置参数
     Options Indexes  MultiViews
     AllowOverride None
     Order allow,deny
     Allow  from all
在Options 加入 MultiViews    //没有index时自动列出目录文档
然后重启服务,这样http://192.168.76.133/down/里面就可以列出/var/ftp/pub里面的文件了,试着点一个另存为,是否可以下载?  呵呵 成功!
6:.htpasswd的实现
#vi  /etc/httpd/conf/httpd.conf
我们针对刚刚做的/var/ftp/pub来做
加入如下信息
Alias /down  "/var/ftp/pub/"
     Options Indexes MultiViews
     AllowOverride  AuthConfig
     Order allow,deny
     Allow from all

AuthType  Basic
AuthName "this is test"
AuthUserFile /etc/httpd/htpasswd
Require  User test
然后重启httpd服务,
让后生成.htpasswd用户密码
htpasswd -c  /etc/httpd/htpasswd test
让后去访问192.168.76.133/down会需要密码
这样就成功了  原文:http://www.lupaworld.com/forum.php?mod=viewthread&tid=61210&page=1

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-93936-1-1.html 上篇帖子: apache的ab命令做压力测试 下篇帖子: apache 目录访问加密 简单
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表