lamp搭建实例

实验环境是REDHAT的Fedora 2,安装系统时选定必须安装三个rpm:gcc、mysqld、vsftpd。gcc用于编译后面的源
码包;mysqld用于集成数据库环境;vsftpd用于将脚本(论坛、文章系统什么的...)传送到服务器上。

/* 安装Apache2与PHP */
#cd /usr/local/sbin
#wget http://apache.justdn.org/httpd/httpd-2.0.52.tar.gz
#wget http://www.php.net/get/php-4.3.10.tar.gz/from/a/mirror
#ll
-rw-r--r--   1 root root  6918995 Sep 28 08:00 httpd-2.0.52.tar.gz
-rw-r--r--   1 root root  4892209 Dec 15 01:59 php-4.3.10.tar.gz
#tar -zxvf httpd-2.0.52.tar.gz
#cd httpd-2.0.52
#./configure --enable-so
#make
#make install
#make clean
#tar -zxvf php-4.3.10.tar.gz
#cd php-4.3.10
#./configure --with-apxs2=/usr/local/apache2/bin/apxs
#make
#make install
#make clean

/* 配置Apache2挂起PHP */
在PHP安装包的解压目录下:
#cp php.ini-dist /usr/local/lib/php.ini
#cd /usr/local/apache2/conf
#vi httpd.conf
:/AddType/找到AddType放置的区域,加上
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
:wq保存退出
#vi /etc/vsftpd.ftpusers
找到root的一行,用“x”键把root字段删除。如法炮制/etc/vsftpd.user_list。
#/etc/init.d/vsftpd start
启动vsftpd服务以后,用FTP客户端连上服务器(用root的帐号),把脚本传输过去httpd服务的目录下(别忘了用ch-
own命令把传送过去了的文件的所有者改为httpd服务组的成员)。最后:
#/usr/local/apache2/bin/apachectl start
来到这里“安装”这个步骤基本上就算完成了。

/* 调试配置 */
编辑httpd.conf。
#vi /usr/local/apache2/conf/httpd.conf
:/index.html/找到DirectoryIndex选项,修改为:
DirectoryIndex index.html index.html.var index.php
为你添加或修改的目录加入相关的标签,如:我要在HTTP的根目录下添加一个名为bbs的目录,在httpd.conf的Direc-
tory区域中加入:

   Options FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all

还有一些问题,如apache默认编码的问题:
:/Charset/找到AddDefaultCharset选项,修改为:
AddDefaultCharset Off
剩下的一些小问题我就不多作介绍了...
:wq
#/usr/local/apache2/bin/apachectl restart
有时候有些程序需要调用到mysql数据库时是需要你手动建数据库的(phpwind论坛就是这样)。首先要确认你的mysq-
ld是正常运作的。
#mysqladmin ping
mysqld is alive
上面的回复说明mysqld是在正常运作的。如果没有启动,则:
#/etc/init.d/mysqld start
或者
#service mysqld start
启动mysqld服务。如果需要在系统启动时自动启动mysqld则:
#chkconfig --level 35 mysqld on
确保mysqld在正常运作以后,我们就要为自己添加一个数据库了:
#mysql
mysql>create database 数据库名;
mysql>exit
#mysqlshow
现在你可以从返回的显示信息中看到自己建立的数据库名了。所有的工作都完成后别忘了重启一次mysqld,让我们的
修改生效:
#service mysqld restart

/* 安全问题 */
安全问题我觉得主要是两方面:APACHE本身的配置及程序安全问题、脚本安全问题。
1)防止APACHE本身的配置及程序安全出现的问题:
APACHE本身的安全问题有不少来源于对httpd.conf的配置问题,这需要长时间的调试,调试的项目如:你的目录是否
启动了索引功能(如在上面bbs目录的例子中加入Options的参数是“Indexes FollowSymLinks”),这些问题的解决
方式还是要视乎你对httpd.conf语法的熟练程度了;至于程序本身的问题你可以通过一些长期自动更新漏洞库的审计
程序来做判断,如Retina等,解决的方法还是要更新APACHE程序或者定期打打补丁吧。
2)防止脚本安全问题的解决方法:
①使用最新版本的官方脚本程序。
②设置php.ini防止SQL注入攻击。
#vi /usr/local/lib/php.ini
magic_quotes_gpc=On
display_errors=Off
:wq
 

你可能感兴趣的:(apache,数据库,脚本,bbs,redhat,服务器)