Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx

上传人:b****5 文档编号:11739480 上传时间:2023-03-31 格式:DOCX 页数:14 大小:17.50KB
下载 相关 举报
Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx_第1页
第1页 / 共14页
Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx_第2页
第2页 / 共14页
Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx_第3页
第3页 / 共14页
Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx_第4页
第4页 / 共14页
Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx

《Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx》由会员分享,可在线阅读,更多相关《Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx(14页珍藏版)》请在冰豆网上搜索。

Linux + Apache + MySQL + PHP LAMP环境搭建推荐教程.docx

Linux+Apache+MySQL+PHPLAMP环境搭建推荐教程

一、系统约定

软件源代码包存放位置:

/usr/local/src

源码包编译安装位置(prefix):

/usr/local/software_name

脚本以及维护程序存放位置:

/usr/local/sbin

MySQL数据库位置:

/var/lib/MySQL(可按情况设置)

Apache网站根目录:

/home/www/wwwroot(可按情况设置)

Apache虚拟主机日志根目录:

/home/www/logs(可按情况设置)

Apache运行账户:

www:

www

二、系统环境部署及调整

1.检查系统是否正常

#more/var/log/messages(检查有无系统级错误信息)

#dmesg(检查硬件设备是否有错误信息)

#ifconfig(检查网卡设置是否正确)

#ping(检查网络是否正常)

2.关闭不需要的服务

#ntsysv

以下仅列出需要启动的服务,未列出的服务一律推荐关闭:

atd

crond

irqbalance

microcode_ctl

network

sendmail

sshd

syslog

3.重新启动系统

#init6

4.配置vim

#vi/root/.bashrc

在aliasmv='mv-i'下面添加一行:

aliasvi='vim'保存退出。

#echo'syntaxon'>/root/.vimrc

5.使用yum程序安装所需开发包(以下为标准的RPM包名称)

#yuminstallntpvim-enhancedgccgcc-c++gcc-g77flexbisonautoconfautomakebzip2-develncurses-devellibjpeg-devellibpng-devellibtiff-develfreetype-develpam-develkernel

6.定时校正服务器时钟,定时与中国国家授时中心授时服务器同步

#crontab-e

加入一行:

1.*/30****ntpdate210.72.145.44

复制代码

7.源码编译安装所需包(Source)

(1)GD2

#cd/usr/local/src

#tarxzvfgd-2.0.34.tar.gz

#cdgd-2.0.34

#./configure--prefix=/usr/local/gd2

#make

#makeinstall

(2)LibXML2

#cd/usr/local/src

#tarxjvflibxml2-2.6.30.tar.bz2

#cdlibxml2-2.6.30

#./configure--prefix=/usr/local/libxml2

#make

#makeinstall

(3)LibMcrypt

#cd/usr/local/src

#tarxjvflibmcrypt-2.5.8.tar.bz2

#cdlibmcrypt-2.5.8

#./configure–prefix=/usr/local/libmcrypt

#make

#makeinstall

(4)Apache日志截断程序

#cd/usr/local/src

#tarxzvfcronolog-1.7.0-beta.tar.gz

#cdcronolog-1.7.0-beta

#./configure–prefix=/usr/local/cronolog

#make

#makeinstall

8.升级OpenSSL和OpenSSH

#cd/usr/local/src

#tarxzvfopenssl-0.9.8e.tar.gz

#cdopenssl-0.9.8e

#./config--prefix=/usr/local/openssl

#make

#maketest

#makeinstall

#cd..

#tarxzvfopenssh-4.7p1.tar.gz

#cdopenssh-4.7p1

#./configure\

"--prefix=/usr"\

"--with-pam"\

"--with-zlib"\

"--sysconfdir=/etc/ssh"\

"--with-ssl-dir=/usr/local/openssl"\

"--with-md5-passwords"

#make

#makeinstall

(1)禁用SSHV1协议

找到:

#Protocol2,1

改为:

Protocol2

(2)禁止root直接登录

此处先建立一个普通系统用户:

#useraddusername

#passwdusername

找到:

#PermitRootLoginyes

改为:

PermitRootLoginno

(3)禁用服务器端GSSAPI

找到以下两行,并将它们注释:

GSSAPIAuthenticationyes

GSSAPICleanupCredentialsyes

(4)禁用DNS名称解析

找到:

#UseDNSyes

改为:

UseDNSno

(5)禁用客户端GSSAPI

#vi/etc/ssh/ssh_config

找到:

GSSAPIAuthenticationyes

将这行注释掉。

最后,确认修改正确后重新启动SSH服务

#servicesshdrestart

#ssh-v

确认OpenSSH以及OpenSSL版本正确。

三、编译安装L.A.M.P环境

1.下载软件

#cd/usr/local/src

httpd-2.2.6.tar.bz2

MySQL-5.0.45-linux-i686-glibc23.tar.gz

php-5.2.4.tar.bz2

ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz

2.安装MySQL

#tarxzvfMySQL-5.0.45-linux-i686-glibc23.tar.gz

#mvMySQL-5.0.45-linux-i686-glibc23/usr/local/

#ln-s/usr/local/MySQL-5.0.45-linux-i686-glibc23/usr/local/MySQL

#useraddMySQL

#chown-RMySQL:

root/usr/local/MySQL/

#cd/usr/local/MySQL

#./scripts/MySQL_install_db--user=MySQL

#cp./support-files/MySQL.server/etc/rc.d/init.d/MySQLd

#chownroot:

root/etc/rc.d/init.d/MySQLd

#chmod755/etc/rc.d/init.d/MySQLd

#chkconfig--addMySQLd

#chkconfig--level35MySQLdon

#cp./support-files/my-f/etc/f

#mv/usr/local/MySQL/data/var/lib/MySQL

#chown-RMySQL:

MySQL/var/lib/MySQL/

#vi/etc/f

修改以下内容:

(1)在[MySQL]段增加一行:

default-character-set=GBK|latin1|utf8|BIG5

(2)在[MySQLd]段增加或修改:

1.datadir=/var/lib/MySQL

2.--skip-innodb

3.default-character-set=GBK|latin1|utf8|BIG5

4.--wait-timeout=3|5|10

5.max_connections=256|384|512

6.max_connect_errors=10000000

7.thread_concurrency=CPU个数×2

复制代码

将log-bin注释

#bin/MySQLadmin-urootpassword'password_for_root'

3.编译安装Apache

#cd/usr/local/src

#tarxjvfhttpd-2.2.6.tar.bz2

#cdhttpd-2.2.6

#./configure\

"--prefix=/usr/local/apache2"\

"--with-included-apr"\

"--enable-so"\

"--enable-deflate=shared"\

"--enable-expires=shared"\

"--enable-rewrite=shared"\

"--enable-static-support"\

"--disable-userdir"

#make

#makeinstall

#echo'/usr/local/apache2/bin/apachectlstart'>>/etc/rc.local

4.编译安装PHP

#cd/usr/local/src

#tarxjvfphp-5.2.4.tar.bz2

#cdphp-5.2.4

#./configure\

"--prefix=/usr/local/php"\

"--with-apxs2=/usr/local/apache2/bin/apxs"\

"--with-config-file-path=/usr/local/php/etc"\

"--with-MySQL=/usr/local/MySQL"\

"--with-libxml-dir=/usr/local/libxml2"\

"--with-gd=/usr/local/gd2"\

"--with-jpeg-dir"\

"--with-png-dir"\

"--with-bz2"\

"--with-freetype-dir"\

"--with-iconv-dir"\

"--with-zlib-dir"\

"--with-openssl=/usr/local/openssl"\

"--with-mcrypt=/usr/local/libmcrypt"\

"--enable-soap"\

"--enable-gd-native-ttf"\

"--enable-ftp"\

"--enable-mbstring"\

"--enable-exif"\

"--disable-ipv6"\

"--disable-cgi"\

"--disable-cli"

#make

#makeinstall

#mkdir/usr/local/php/etc

#cpphp.ini-dist/usr/local/php/etc/php.ini

5.安装ZendOptimizer

#cd/usr/local/src

#tarxzvfZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz

#./ZendOptimizer-3.3.0-linux-glibc21-i386/install.sh

安装ZendOptimizer过程的最后不要选择重启Apache。

6.整合Apache与PHP

#vi/usr/local/apache2/conf/httpd.conf

找到:

AddTypeapplication/x-gzip.gz.tgz

在该行下面添加

1.AddTypeapplication/x-httpd-php.php

复制代码

找到:

DirectoryIndexindex.html

将该行改为

1.DirectoryIndexindex.htmlindex.htmindex.php

复制代码

找到:

1.#Includeconf/extra/httpd-mpm.conf

2.#Includeconf/extra/httpd-info.conf

3.#Includeconf/extra/httpd-vhosts.conf

4.#Includeconf/extra/httpd-default.conf

复制代码

去掉前面的“#”号,取消注释。

注意:

以上4个扩展配置文件中的设置请按照相关原则进行合理配置!

修改完成后保存退出。

#/usr/local/apache2/bin/apachectlrestart

7.查看确认L.A.M.P环境信息、提升PHP安全性

在网站根目录放置phpinfo.php脚本,检查phpinfo中的各项信息是否正确。

确认PHP能够正常工作后,在php.ini中进行设置提升PHP安全性。

#vi/etc/php.ini

找到:

1.disable_functions=

复制代码

设置为:

1.disable_functions=phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

复制代码

四、服务器安全性设置

1.设置系统防火墙

#vi/usr/local/sbin/fw.sh

将以下脚本命令粘贴到fw.sh文件中。

1.#!

/bin/bash

2.

3.#Stopiptablesservicefirst

4.serviceiptablesstop

5.

6.#LoadFTPKernelmodules

7./sbin/modprobeip_conntrack_ftp

8./sbin/modprobeip_nat_ftp

9.

10.#Initalchainsdefaultpolicy

11./sbin/iptables-F-tfilter

12./sbin/iptables-PINPUTDROP

13./sbin/iptables-POUTPUTACCEPT

14.

15.#EnableNativeNetworkTransfer

16./sbin/iptables-AINPUT-ilo-jACCEPT

17.

18.#AcceptEstablishedConnections

19./sbin/iptables-AINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT

20.

21.#ICMPControl

22./sbin/iptables-AINPUT-picmp-mlimit--limit1/s--limit-burst10-jACCEPT

23.

24.#WWWService

25./sbin/iptables-AINPUT-ptcp--dport80-jACCEPT

26.

27.#FTPService

28./sbin/iptables-AINPUT-ptcp--dport21-jACCEPT

29.

30.#SSHService

31./sbin/iptables-AINPUT-ptcp--dport22-jACCEPT

复制代码

#chmod755/usr/local/sbin/fw.sh

#echo'/usr/local/sbin/fw.sh'>>/etc/rc.local

#/usr/local/sbin/fw.sh

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1