CentOS 6.0下phpvod搭建教程(LAMP+phpvod)
之所以安装CentOS是因为之前试过RedHat,但是发现RedHat在安装时,无法获取安装源,原因是RedHat系统没有在RHN注册。
网上的很多教程都说可以直接换用CentOS的源,可我小搞里一会儿还是没有搞出来,还把yum搞没了,囧~
好把,干脆直接安装个CentOS吧,内网服务器有镜像,下起来那叫个快-->
我选的版本是:CentOS-6.0-i686.iso
1.安装CentOS 6.0服务器操作系统
这里跳过,不会的自行google
2.关闭SELinux
SELinux算是一个比较老的应用程序权限管理服务了,有兴趣打朋友可以了解下
以root用户编辑:(为了顺利安装,下面在使用命令时都以root执行)
# vim /etc/selinux/config
将"SELINUX=enforcing"改为“SELINUX=disabled“
将"#SELINUXTYPE=targeted"的注释#去掉
保存并退出。
3.配置防火墙,开启80、3306端口
编辑/etc/sysconfig/iptables文件:
# vim /etc/sysconfig/iptables
默认情况下,CentOS是开启SSH服务的,所以在/etc/sysconfig/itables下可以看到有相应的配置“-A INPUT -m state --state NEW -m tcp -p tcp --dprot 22 -j ACCEPT”,所以只需在这下面加上:
-A INPUT -m state --state NEW -m tcp -p tcp --dprot 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dprot 3306 -j ACCEPT
加好之后应该是下面这样的:
# Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
ps:我的服务器搭建了FTP以便于视频数据打传输,不搭建FTP的可以去掉这一行“-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT”.
关于iptables的配置,是有规则的,有些人,喜欢把上面所加的两行加到最后,这样会使iptables启动失败。
保存并退出,再重启:reboot
4.安装Apache
# yum install httpd
根据提示,输入Y安装即可成功安装,启动一下测试看看:
# service httpd start
Apache会启动成功,可以在浏览器的地址栏里输入“http://127.0.0.1”或者“http://localhost”,可以看到有如下图的Apache的默认首页,这表明Apache安装成功!
5.安装MySQL
1. 安装MySQL
# yum install mysql mysql-server
根据提示,输入Y继续安装,直到安装完成。
启动MySQL
# service mysqld start
拷贝配置文件(如果/etc/下有个默认的my.cnf,直接覆盖即可)
# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
启动MySQL,测试是否安装成功
2.为root用户设置密码
由于mysql默认没有设置root密码,故可以直接以root用户登录
# mysql -u root -p
可以看到mysql安装成功并且可以顺利启动!
为root用户设置密码,这里我设置为“linger”:
# mysqladmin -u root password linger
为mysqladmin修改密码:
# mysqladmin -u root -p[oldpass] password newpass
注意oldpass(老密码)可选,如果root默认密码为空,则不需要输入,如果需要更改老密码,请注意老密码与-p之间不要有空格,否则会报错,另外password和newpass(新密码)之间以空格分隔。
现在可以退出mysql,再重启并连接:
# service mysqld restart
# mysql -u root -p
输入刚才修改里的root密码,就可以登录了
当然,也可以为一般用户修改密码。先使用root进入mysql,执行以下语句:
UPDATE mysql.user SET password=PASSWORD('new_pwd') WHERE User='zhangsan';
6.安装PHP
1.安装PHP
# yum install php
根据提示,输入Y继续安装,直到安装成功。
2.安装PHP组件,以支持MySQL
# yum -y install php-mysql php-gd php-imap php-mbstring php-ldap php-odbc php-pear php-xml php-xmlrpc
检查PHP是否安装成功:
# cd /var/www/html # vim info.php //在上面打html目录下建立一个info.php文件
写入以下内容:
<?php
phpinfo();
?>
保存并退出,在浏览器地址栏输入“http://127.0.0.1/info.php”,显示以下内容,说明php安装成功:
当然在这个php的配置页面里还有php组件的配置信息,比如MySQL、GD、mbstring等模块
至此,Apache、MySQL、PHP就算全部安装完成了,再重启一下吧
# service httpd restart
# service mysqld restart
7.配置
Apache主配置文件:/etc/httpd/conf/httpd.conf
Apache主配置目录,可以将不同类型的配置分门别类放入这个目录中:/etc/httpd/conf.d/
Apache网站根目录:/var/www/html/
Apache日志文件目录:/var/log/httpd
MySQL的my.cnf配置文件:/etc/my.cnf
MySQL数据库文件位置:/usr/lib/mysql
1.设置Apache、开机自启动
# chkconfig --levels 2345 httpd on # chkconfig --levels 2345 mysqld on
2.Apache配置
编辑文件/etc/httpd/conf/httpd.conf文件:
# vim /etc/httpd/conf/httpd.conf
修改以下的配置:
ServerTokens OS //44行,修改为:ServerTokens Prod (在出现错误页的时候不显示服务器操作系统的名称) ServerSignature On //536行,修改为:ServerSignature Off (在错误页中不显示Apache的版本) 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 FollowSymLinks //554行,修改为:Options MultiViews FollowSymLinks(不在浏览器上显示树状目录结构) DirectoryIndex index.html index.html.var //402行,修改为:DirectoryIndex index.php index.html Default.php Default.html (设置默认首页)
KeepAlive Off //76行,修改为:KeepAlive On (允许程序性联机)
MaxKeepAliveRequests 100 //83行,修改为:MaxKeepAliveRequests 1000 (增加同时连接数)
重启httpd服务器:
# /etc/init.d/httpd restart
3.php配置
编辑文件/etc/php.ini文件:
# vim /etc/php.ini
修改以下的配置:
date.timezone = PRC //946行 把前面的分号去掉,改为date.timezone = PRC 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 //386行,列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。 expose_php = Off //432行,禁止显示php版本的信息 magic_quotes_gpc = On //745行,打开magic_quotes_gpc来防止SQL注入 short_open_tag = ON //229行,支持php短标签 open_basedir = .:/tmp/ //380行,设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果可以注销此行,或者 直接写上程序的目录/data/www.osyunwei.com/:/tmp
8.安装phpvod
出于安全的考滤,phpvod开源代码使用了Zend加密处理了,直接把phpvod源码放到Apache的虚拟目录下,再安装时会出现 Zend Guard Run-time support missing报错信息,根据页面上的提示信息,需要安装ZendGuardLoader.
1.安装ZendGuardLoader组件
ZendGuardLoader组件下载地址 http://www.zend.com/en/products/guard/downloads
选择Linux版的,不过貌似还得注册才能下载,但我已经找到里下载地址,可以直接下载^_^,目前,phpvod 最新版支持php 5.3
Zend Guard Loader (Linux for PHP 5.3) 64-bit:
http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
Zend Guard Loader (Linux for PHP 5.3) 32-bit:
http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
下载好之后,到下载的目录下解压
# tar -zxvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
进人解压后打文件目录,里面有一个php-5.3.文件夹,进人有个“ZendGuardLoader.so“文件,拷贝到/usr/lib/php/modules下(/usr/lib64/php/modules)
# cp ./ZendGuardLoader.so /usr/lib/php/modules
在/etc/php.d/目录下创建一个ZendGuard.ini文件
# vim /etc/php.d/ZendGuard.ini
写入以下内容:
; Enable Zend Guard extension zend_extension=/usr/lib/php/modules/ZendGuardLoader.so zend_loader.enable=1
对应64系统的为:
; Enable Zend Guard extension zend_extension=/usr/lib64/php/modules/ZendGuardLoader.so zend_loader.enable=1
保存并退出,重启Apache
# service httpd restart
检测是否安装成功,在浏览器地址栏输入“http://127.0.0.1/info.php”,如果有以下模块(注意能看到Zend Guard Loader的版本)就说明以安装成功
2.创建数据库
# mysql -h localhost -u root -p
输入root用户密码,连接MySQL数据库,新建数据库:
mysql> create database phpvod;
显示已安装的数据库
mysql> show databases;
可以看到刚才已经创建打数据库了,退出MySQL
3.安装phpvod
到PHPVOD官网下载源码:www.phpvod.com 选择for php5.3.x版本的
到对应打下载目录解压
# unrar x ./phpvod2.6_utf-8_php5.3.x.rar
再将phpvod目录下的全部东西拷贝到/var/www/html/目录下
# cp -r ./phpvod/* /var/www/html/
给/var/www/html目录添加权限
# chmod -R 777 /var/www/html
重启Apache,开始进人安装阶段
在浏览器里输入“http://127.0.0.1/install.php”,进人在线安装界面,输入数据库的用户名root(当然,也可以在mysql里新建一个用户的)和密码以及刚刚创建打数据库名,输入管理员账户信息,两下就可以OK了
至此,所有的工作都完成了。
教程写得比较详细,是希望帮助一些新手朋友们,会的可以略看就可以完成了,不会的可以留言..