开始搭建LAMP环境 redhat ,centos 6.2
搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按照
Apache->MySQL->PHP的顺序安装。但是在安装PHP之前,应先安装PHP5需要的最新版本库文件,例如libxml2、libmcrypt,以及GD2库等文件。安装GD2库是为了让PHP5支持 GIF、PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype 和jpegsrc等库文件。而且中间还会穿插安装一些软件。
1、解压tar.gz为后缀的压缩包软件
LAMP环境搭建所需要的每个软件的源代码文件,都是以.tar.gz提供给我们的打包压缩文件,所以我们必须将其解压再解包。可通过命令#tar zxvf tarfile.tar.gz达到目的。
2、在linux系统中源代码包安装过程
进行解压后的目录,LAMP环境搭建所需要的软件都使用C语言开发的,所以安装源代码文件最少需要配置(configure)、编译(make)、安装(make install)三个步骤。
安装libxml2最新库文件
step1:进入下载的软件源码包所在目录/usr/local/src/下,解压软件包
libxml2-2.9.0.tar.gz到当前目录libxml2-2.9.0下,并进入libxml2-2.9.0目录。命令如下行所示:
[root@localhost ~]# cd /usr/local/src //进入软件源码包所在目录
[root@localhost src]# tar zxvf libxml2-2.9.0.tar.gz //解包解压
[root@localhost src]# cd libxml2-2.9.0 //进入解包解压后的目录
step2:使用configure命令检查并配置安装需要的系统环境,并生成安装配置文件,命令行如下。
[root@localhost libxml2-2.9.0]# ./configure --prefix=/usr/local/libxml2
//选项--prefix=/usr/local/libxml2作用,是在安装时将软件安装到/usr/local/libxml2 目录下。
step3:使用make命令编译源代码文件并生成安装文件。命令行如下示。
[root@localhost libxml2-2.9.0]# make //对软件源代码文件进行编译
step4:使用make install命令安装编译过的文件。命令行如下。
[root@localhost libxml2-2.9.0]# make install //开始安装libxml2库文件
如果安装成功以后,在/usr/local/libxml2/目录下将生成bin,include,lib,share四个目录。在后面安装 PHP5源代码的配置时,会通过在configure命令的选项中加上
"--with-libxml-dir=/usr/local/libxml2"选项,用于指定安装libxml2库文件的位置。安装libmcrypt最新库文件
安装方法与上面安装libxml2方法相同,注意configure时的路径/usr/local/libmcrypt
如果安装成功就会在/usr/local/libmcrypt/目录下生成bin,include,lib,man,share五个目录。然后在安装PHP5源代码包的配置时,就可以通过configure命令加上
“--with-mcrypt-dir=/usr/local/libmcrypt” 选项,指定这个libmcrypt库文件的位置。如./configure时报错:configure: error: C++ compiler cannot create executables 。解决方案:
运行下面命令,然后重新configure(配置)
yum install gcc gcc-c++ gcc-g77
安装完成libmcrypt库以后,不同的linux系统版本有可能还要安装一下libltdl库。安装方法和前面的步骤相同,可以进入到解压缩的目录/usr/local/src/libmcrypt-2.5.8下,找到libltdl库源代码所在的目录libltdl,进入这个目录按照下面几个命令配置、编译、安装就可以了。
[root@localhost libltdl]# pwd
/usr/local/src/libmcrypt-2.5.8/libltdl //进入软件源代码目录
[root@localhost libltdl]# ./configure --enable-ltdl-install //配置ltdl库的安装
[root@localhost libltdl]# make //编译
[root@localhost libltdl]# make install //安装
安装最新库文件 ZLIB 库
安装方法与前面安装libxml2的方法相同,要注意的地方就是路径/usr/local/zlib/。如果安装成功将会在/usr/local /zlib目录下生成include,lib,share三个目录。在安装PHP5配置时,在configure命令的选项中加上“--with- zlib-dir=/usr/local/zlib”选项,用于指定zlib库文件位置。
安装libpng最新库文件
安装方法与前面安装libxml2的方法相同,要注意路径/usr/local/libpng/
在./configure --prefix=/usr/local/libpng这步最后会提示:configure: error: ZLib not installed
解决方法如下:
1.进入zlib的源文件目录,执行命令 make clean,清除zlib;
2.重新配置 ./configure,后面不要接--prefix参数;
3.make && make install;
4.进入libpng目录,执行命令 ./configure --prefix=/usr/local/libpng
5.make && make install;
6.安装成功.
如果安装成功将会在/usr/local/libpng目录下生成bin,include,lib和share四个目录。在安装GD2库配置时,通过在configure命令选项中加上
“--with-png=/usr/local/libpng”选项,指定libpng库文件的位置。
安装jpeg8最新库文件
step1:安装GD2库前所需的jpeg8库文件,需要自己手动创建安装需要的目录,它们在安装
时不能自动创建。命令行如下。
[root@localhost ~]# mkdir /usr/local/jpeg8 //建立jpeg8软件安装目录
[root@localhost ~]# mkdir /usr/local/jpeg8/bin //建立存放命令的目录
[root@localhost ~]# mkdir /usr/local/jpeg8/lib //创建jpeg8库文件所在目录
[root@localhost ~]# mkdir /usr/local/jpeg8/include //建立存放头文件目录
[root@localhost ~]# mkdir -p /usr/local/jpeg8/man/man1 //建立存放手册的目录
step2:configure有点不一样,如下命令行示:
[root@localhost jpeg-8b]# ./configure \
> --prefix=/usr/local/jpeg8/ \
> --enable-share \
> --enable-static
警告:configure: WARNING: unrecognized options: --enable-share
在安装GD2库配置时,可以在configure命令的选项中加上
“--with-jpeg=/usr/local/jpeg8”选项,指定jpeg8库文件的位置。安装PHP时也要指定该库文件的位置。
安装freetype最新库文件
step1:进入软件源码包所在目录/usr/local/src/中,解压软件包freetype-2.4.10.tar.gz 到当前目录freetype-2.4.10下,并进入freetype-2.4.10目录。命令行如下:
#cd /usr/local/src/ //进入软件源码包所在目录
#tar zxvf freetype-2.4.10.tar.gz //解压包到freetype-2.4.10目录
#cd freetype-2.4.10 //进入目录freetype-2.4.10中
step2:使用configure命令检查并配置安装需要的系统环境,并生成安装配置文件。命令行如下:
#./configure --prefix=/usr/local/freetype //选项--prefix=/usr/local/freetype,是在安装时将软件安装到/usr/local/freetype目录下
step3:使用make命令编译源代码文件并生成安装文件,命令行如下:
#make //对软件源代码文件进行编译
step4:使用make install命令进行安装,命令行如下:
#make install //开始安装freetype库文件
如果安装成功将会在/usr/local/freetype目录下存在bin,include,lib和share四个目录。并在安装GD2库时,通过configure命令选项中加上
“--with-freetype=/usr/l ocal/freetype/”选项,指定freetype库文件位置。
安装autoconf最新的库文件
其方法与上面安装freetype相同。唯一注意的地方是configure时,不用指定路径。
千万别指路径。
安装最新的GD库文件
安装方法大致与freetype相同。唯一注意的地方是configure时的路径,命令行如下:
#./configure \ //配置命令
>--prefix=/usr/local/gd \ //指定安装软件的位置
>--with-jpeg=/usr/local/jpeg8/ \ //指定去哪找jpeg库文件
>--with-png=/usr/local/libpng/ \ //指定去哪找png库文件
>--with-freetype=/usr/local/freetype/ //指定去哪找freetype 2.x字体库的位置
Make make install
如果安装成功会在/usr/local/gd/目录下存在bin、include和lib这三个目录。在安装PHP5时,通过在configure命令选项中加上“--with-gd=/usr/local/gd”选项,指定GD库文件的位置。
如果报错:
make[2]: *** [gd_png.lo] Error 1
make[2]: Leaving directory `/tmp/gd-2.0.35'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/gd-2.0.35'
make: *** [all] Error 2
解决方案:
vi gd_png.c 源文件
找到#include "png.h"改成#include "/usr/local/libpng/include/png.h"
安装新版本的apache服务器
1、卸载apr、apr-util
yum remove apr apr-util
Rpm -q apr
下载安装:
https://www.sodocs.net/doc/c75584416.html,/download.cgi
apr-1.4.6.tar.gz
./configure --prefix=/usr/local/apr-httpd/ && make && make install
下载安装:
https://www.sodocs.net/doc/c75584416.html,/download.cgi
apr-util-1.5.1.tar.gz
./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/ && make && make install
下载:https://www.sodocs.net/doc/c75584416.html,/projects/pcre
#unzip -o pcre-8.32.zip
#cd pcre-8.32
#./configure --prefix=/usr/local/pcre
#make
#make install
[root@localhost httpd-2.4.3]# ./configure \
> --prefix=/usr/local/apache243 \
> --enable-mods-shared=all \
> --enable-deflate \
> --enable-speling \
> --enable-cache \
> --enable-file-cache \
> --enable-disk-cache \
> --enable-mem-cache \
> --enable-so \
> --enable-expires=shared \
> --enable-rewrite=shared \
> --enable-static-support \
> --sysconfdir=/etc/httpd \
> --with-z=/usr/local/zlib/ \
> --with-apr=/usr/local/apr-httpd/ \
> --with-apr-util=/usr/local/apr-util-httpd/ \
> --with-pcre=/usr/local/pcre/ \
> --disable-userdir
#make && make install
安装完成后,进入/usr/local/apache243/目录下,检查是否有以下文件:
bin build cgi-bin error htdocs icons include logs man manual modules
启动Apache服务器,并查端口是否开启,启动Apache服务器的命令行如下:
#/usr/local/apache243/bin/apachectl start
提示信息:
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message
解决方案:
vi /etc/httpd/httpd.conf
加上下面一行,重启apache
ServerName localhost:80
查看端口命令行如下:
#netstat -tnl|grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LIST
测试安装结果,打开浏览器,在地址栏中输入URL为:http://192.168.146.129/
如果浏览器中出现It works!则表明Apache服务器可以使用。
每种服务器软件都有必要制成开机时自动启动,Apache服务器开机自动启动,只要在
“/etc/rc.d/rc.local”文件,加上 Apache服务器的启动命令即可。可以直接打开
“/etc/rc.d/rc.local”文件,在最后一行写入Apache启动命令,也可以用echo 命令追加进去,如下命令行示:
[root@localhost apache243]# echo "/usr/local/apache243/bin/apachectl start" >> /etc/rc.d/rc.local
安装MySQL数据库管理系统
1、增加用户名和用户组
#groupadd mysql
#useradd -g mysql mysql
2、进入源码包使用configure 检查并配置安装需要的系统环境,并生成安装配置文件
#./configure \
>--prefix=/usr/local/mysql \ //将软件安装在/usr/local/mysql目录下
>--enable-thread-safe-client \
>--with-extra-charsets=all //在安装mysql时安装所有字符集
如果遇到错误信息:
checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermcap... no
checking for termcap functions library... configure: error: No curses/termcap library found
原因:缺少ncurses安装包
解决方案:
执行下面三行命令,执行完之后重新./configure(配置)
yum list|grep ncurses
yum -y install ncurses-devel
yum install ncurses-devel
接着#make && make install
3、创建mysql数据库服务器的配置文件,可以使用源码包support-files目录中的
https://www.sodocs.net/doc/c75584416.html,f文件作为模板,将其复制到/etc/目录下,命名为https://www.sodocs.net/doc/c75584416.html,f文件即可。
[root@localhost mysql-5.0.18]# cp support-files/https://www.sodocs.net/doc/c75584416.html,f /etc/https://www.sodocs.net/doc/c75584416.html,f
4、如果还没安装过MySQL,必须创建MySQL授权表。进入到安装目录/usr/local/mysql下,执行bin目录下的mysql_install_db脚本,用来初始化MySQL数据库的授权表,其中存储了服务器访问允许。
[root@localhost mysql-5.0.18]#cd /usr/local/mysql
[root@localhost mysql]# bin/mysql_install_db --user=mysql //创建授权表
如果使用root用户运行上面的命令,应当使用--user选项,选项的值应当与你在第一步为
运行服务器所创建的登录账户(mysql用户)相同。如果用mysql用户登录来运行上面的命令,可以省略--user选项。用mysql_install_db创建mysql授权表后,需要手动重新启动服务器。
5、将程序二进制的所有权改为root用户,数据目录的所有权改为运行mysqld程序的mysql 用户。如果现在位于安装目录(/usr/local/mysql)下,命令行如下:
[root@localhost mysql]# chown -R root .(注意有点) //将文件的所有属性改为root用户
[root@localhost mysql]# chown -R mysql var //将数据目录的所有属性改为mysql用户
[root@localhost mysql]# chgrp -R mysql . //将组属性改为mysql组
[root@localhost mysql]# ls -l
total 40
drwxr-xr-x. 2 root mysql 4096 Feb 7 20:50 bin
drwxr-xr-x. 3 root mysql 4096 Feb 7 20:50 include
drwxr-xr-x. 2 root mysql 4096 Feb 7 20:50 info
drwxr-xr-x. 3 root mysql 4096 Feb 7 20:50 lib
drwxr-xr-x. 2 root mysql 4096 Feb 7 20:50 libexec
drwxr-xr-x. 3 root mysql 4096 Feb 7 20:50 man
drwxr-xr-x. 7 root mysql 4096 Feb 7 20:50 mysql-test
drwxr-xr-x. 3 root mysql 4096 Feb 7 20:50 share
drwxr-xr-x. 5 root mysql 4096 Feb 7 20:50 sql-bench
drwx------. 4 mysql mysql 4096 Feb 7 20:53 var
6、在所需要的东西被安装完成后,应当使用下面的命令启动MySQL服务了,命令行如下:
[root@localhost mysql]#/usr/local/mysql/bin/mysqld_safe --user=mysql &
报告信息(不理会):
[root@localhost mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
[1] 4720
[root@localhost mysql]# nohup: ignoring input and redirecting stderr to stdout
Starting mysqld daemon with databases from /usr/local/mysql/var
7、MySQL数据库服务器启动之后,查看一下它的端口3306是否打开,如果看到以下结果表明mysql服务启动成功。命令行如下
[root@localhost mysql]# netstat -tnl|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
8、使用mysqladmin验证服务器在运行中。以下命令提供了简单的测试,可检查服务器是否已经开启并能响应连接。命令行如下:
[root@localhost mysql]# bin/mysqladmin version
Enter password:
bin/mysqladmin Ver 8.41 Distrib 5.0.18, for pc-linux-gnu on i686
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 5.0.18-log
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysql.sock
Uptime: 18 min 59 sec
Threads: 1 Questions: 3 Slow queries: 0 Opens: 0 Flush tables: 1 Open tables: 6 Queries per second avg: 0.003
[root@localhost mysql]# bin/mysqladmin variables //查看所有mysql参数
9、设置访问权限,在mysql安装过程中,使用mysql_install_db程序安装了mysql数据库授权表,表定义了初始mysql用户账户和访问权限,所有初始化账户均没有密码。这些账户为超用户账户,可以执行任何操作。初始root账户的密码为空,因此任何人可以用root 账户不用任何密码来连接mysql服务器,并具有所有权限,这意味着mysql安装未受保护。如果你想要防止客户端不使用密码用匿名用户来连接,你应当为匿名账户指定密码或删掉匿名帐户,应当为mysql root账户指定密码。使用mysql -u root启动mysql客户端控制台,连接mysql服务器。命令行如下:
[root@localhost mysql]# bin/mysql -u root //没有密码可直接登录本机服务器
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 5.0.18-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
10、如果有匿名账户存在,它拥有全部的权限,因此删掉它可以提高安全,在mysql客户端执行SQL语如下:
mysql> delete from https://www.sodocs.net/doc/c75584416.html,er where host='localhost' and user='';
Query OK, 1 row affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
11、可以用几种方法为root账户指定密码,我们选择用其中的一种。在mysql客户端命令行上使用set password指定密码,一定要使用password()函数来加密密码。例如下面设
置localhost域的密码为ios100。其他域可以使用同样的语句,使用的SQL语句如下。
mysql> set password for 'root'@'localhost'=password('ios100');
Query OK, 0 rows affected (0.00 sec)
12、如果想退出mysql客户端,可以在mysql客户端提示符下输入命令exit或者quit,还可以按键盘ctrl+c组合键,都可以从 mysql客户端退出。因为已经给mysql服务器的root 账号设置了密码,所以再次登录mysql客户端就要提供密码才能进入。退出mysql客户端和重新启动mysql客户端的控制台命令如下。
mysql> exit
Bye
[root@localhost mysql]# bin/mysql -u root -h localhost -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6 to server version: 5.0.18-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
如果想关闭mysql服务器,在命令行使用mysql服务器的mysqladmin命令,通过-u参数给出mysql数据库管理员用户名root和通过-p参数给出密码,即可关闭mysql服务器。如下示:
[root@localhost mysql]# bin/mysqladmin -u root -p shutdown
Enter password:
STOPPING server from pid file /usr/local/mysql/var/localhost.pid
130207 21:27:05 mysqld ended
[1]+ Done /usr/local/mysql/bin/mysqld_safe --user=mysql
13、mysql服务器和apache服务器一样也有必要设置为开机自动运行,设置方法进入到mysql 源代码目录/usr/local/src /mysql-5.0.18,将子目录support-files下的mysql.server 文件复制到/etc/rc.d/init.d目录中,并重命名为mysqld,命令行如下。
[root@localhost mysql]# cd /usr/local/src/mysql-5.0.18
[root@localhost mysql-5.0.18]# cp support-files/mysql.server
/etc/rc.d/init.d/mysqld
修改一下权限
[root@localhost mysql-5.0.18]# chown root.root /etc/rc.d/init.d/mysqld
[root@localhost mysql-5.0.18]# chmod 755 /etc/rc.d/init.d/mysqld
把mysqld添加到chkconfig中
[root@localhost mysql-5.0.18]# chkconfig --add mysqld
在图形和字符集界面下自动启动mysqld
[root@localhost mysql-5.0.18]# chkconfig --level 3 mysqld on
[root@localhost mysql-5.0.18]# chkconfig --level 5 mysqld on
再使用chkconfig --list命令检查设置
[root@localhost mysql-5.0.18]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:off 5:on 6:off
安装最新版的PHP模块
进入php-5.4.11源码包编译
[root@localhost php-5.4.11]# ./configure \
> --prefix=/usr/local/php \
> --with-config-file-path=/usr/local/php/etc \
> --with-apxs2=/usr/local/apache243/bin/apxs \
> --with-mysql=/usr/local/mysql/ \
> --with-libxml-dir=/usr/local/libxml2/ \
> --with-png-dir=/usr/local/libpng/ \
> --with-jpeg-dir=/usr/local/jpeg8/ \
> --with-freetype-dir=/usr/local/freetype/ \
> --with-gd=/usr/local/gd/ \
> --with-zlib-dir=/usr/local/zlib/ \
> --with-mcrypt=/usr/local/libmcrypt/ \
> --with-mysqli=/usr/local/mysql/bin/mysql_config \
> --enable-soap \
> --enable-mbstring=all \
> --enable-sockets
配置时可能会出现下面的错误:
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
checking for MySQL UNIX socket location... no
configure: error: Cannot find libmysqlclient_r under /usr/local/mysql. Note that the MySQL client library is not bundled anymore!
其实这跟PHP没有关系,那是因为在编译APACHE的时候,使用--with-mpm模块,所以就必须在编译MYSQL的时候加上 --enable-thread-safe-client.参数
这是PHP5.2的一个改进,在PHP5.2.0之前的版本都不需要MYSQL启用安全线程。关于
--enable-thread-safe- client项的官方介绍如下:如何生成线程式客户端库总是线程安全的。最大的问题在于从套接字读取的net.c中的子程序并不是中断安全的。或许你可能希望用自己的告警中断对服务器的长时间读取,以此来解决问题。如果为SIGPIPE中断安装了中断处理程序,套接字处理功能应是线程安全的。 SupeSite/X-为了避免连接中断时放弃程序,MySQL将在首次调用mysql_server_init()、mysql_init()或 mysql_connect()时屏蔽SIGPIPE。如果你打算使用自己的SIGPIPE处理程序,首先应调用 mysql_server_init(),然后安装你的处理程序.
还有第二种解决方法比较方便:编译之前,先处理一下mysql的库,默认查找libmysqlclient_r.so,可是mysql默认为libmysqlclient.so,内容完全一样,做个链接即可
# cd /usr/local/mysql/lib/mysql/
# ln -s libmysqlclient.so.15.0.0 libmysqlclient_r.so
(以上解决方法来自互联网!)
make(配置)
提示信息:
Build complete.
Don't forget to run 'make test'.
解决方案:
不要make test 直接make install
还会报make: *** [ext/gd/gd.lo] error
解决方法如下:
好像说这个错误算是php5.4的bug,下面对应的两篇文章有对应的说明: https://https://www.sodocs.net/doc/c75584416.html,/bug.php?id=55224
https://https://www.sodocs.net/doc/c75584416.html,/bug.php?id=60108
解决方法:
vi
gdIOCtx结构中增加void *data;
格式如下
typedef struct gdIOCtx
{
int (*getC) (struct gdIOCtx *);
int (*getBuf) (struct gdIOCtx *, void *, int);
void (*putC) (struct gdIOCtx *, int);
int (*putBuf) (struct gdIOCtx *, const void *, int);
/* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */ int (*seek) (struct gdIOCtx *, const int);
long (*tell) (struct gdIOCtx *);
void (*gd_free) (struct gdIOCtx *);
void (*data);
}
gdIOCtx;
我的GD安装在/usr/local/gd2目录下,所以是#vi vi /usr/local/gd/include/gd_io.h libltdl.so.3: cannot open shared object file: No such file or directory make: *** [ext/phar/phar.php] Error 127
解决方法:
ln -s /usr/local/lib/libltdl.so.3 /usr/lib/libltdl.so.3
[root@localhost ~]# cd /usr/local/libpng/lib/
[root@localhost lib]# ls
libpng15.a libpng15.so libpng15.so.15.10.0 https://www.sodocs.net/doc/c75584416.html, pkgconfig
https://www.sodocs.net/doc/c75584416.html, libpng15.so.15 libpng.a libpng.so
可以看到libpng15.so.15
然后修改/etc/ld.so.conf 文件:vi /etc/ld.so.conf
在第一行下面追加/usr/local/libpng/lib这个路径。
然后重新配置编译安装即可。
从PHP的第一步配置开始,再来一遍。
解决方案:
不要make test 直接make install
安装完成后,需要建立PHP配置文件。在使用configure命令安装配置时使用
“--with-config-file-path=/usr /local/php/etc/”选项,指定了配置文件的位置。将源码包下面的php.ini-development 文件复制到/usr/local /php/etc/中,并改名为php.ini 即可,如下示:
[root@localhost php-5.4.11]# cp php.ini-development /usr/local/php/etc/php.ini
修改php.ini 把;date.timezone 前面的分号去掉,改成date.timezone ="PRC"
整合Apache与PHP,上面编译之前,我们使用configure命令安装配置时,使用
--with-apxs2=/usr/local /apache242/bin/apxs选项以使Apache 2将PHP作为功能模块使用。但我们还要修改Apahce配置文件,添加PHP的支持,告诉Apache将哪些后缀作为PHP 解析。例如,让Apache把.php或.phtml后缀名解析为PHP.使用vi打开Apache的配置文件 /etc/httpd/httpd.conf,找到AddType application/x-gzip .gz .tgz指令选项,并在其下方添加一条指令AddType application/x-httpd-php .php .phtml。也可以将任何后缀的文件解析为PHP,只要在添加的语句中加入并用空格分开,这里以多添加一个.phtml 来示例,如下示:
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .phtml
修改完成后必须重启Apache服务器,才能重新加载配置文件使修改生效。
[root@localhost php-5.4.11]#/usr/local/apache243/bin/apachectl stop
[root@localhost php-5.4.11]#/usr/local/apache243/bin/apachectl start
测试PHP环境是否可以正常运行,在/usr/local/apache243/htdocs目录下建一个test.php 或test.phtml的文件,内容如下示:
phpinfo();
?>
一、准备工作 在lamp环境中搭载网站 1.用winsp将网站目录copy到linux的php系统文件目录下/usr/local/apache2/htdocs 给runtime文件夹可写权限chmod 777 -R runtime 2.修改apache配置文件,修改网站首页 /usr/local/apache2/etc/http.conf 修改DirectoryIndex index.php index.html 重启apache:/usr/local/apache2/bin/apachectl restart 3.用小海豚(SQLyog) 文件/新建连接
将网页中的sql脚本导入到linux下的mysql数据库中启动mysql: 启动MySQL服务 1.用原本源代码的方式去使用和启动mysql /usr/local/mysql/bin/mysqld_safe --user=mysql & 2.重启以后还要生效: Vi /etc/rc.local /usr/local/mysql/bin/mysqld_safe --user=mysql & 进入mysql命令行 /usr/local/mysql/bin/mysql -u root -p550120
4.在windows下用浏览器访问192.168.1.1/网站目录 ============================================= 注意: 先创建/lamp文件夹 使用WinSCP 把要安装的压缩文件放到/lamp文件夹下 ./configure 执行的时候要注意不能有换行 Appche安装的时候一定要确认之前的安装已经卸载 http://192.168.255.1/index.html 这个地址要改成192.168.80.8 /usr/local/apache2/bin/apachectl start 有时候要用start有时候要用restart /usr/local/memcache/bin/memcached -umemcache & 中的-可能会有问题,要注意 1、安装编译工具gcc、gcc-c++、make 注意解决依赖关系,推荐使用yum安装,若不能联网可使用安装光盘做为yum源—— 1)编辑yum配置文件: Mount /dev/cdrom /media vi /etc/yum.repos.d/CentOS-Media.repo [c5-media] name=CentOS-$releasever - Media baseurl=file:///media * 修改为光盘挂载点 enabled=1 * 改为1意为启用 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 2)设置alias值: Vi /etc/bashrc alias yum="yum --disablerepo=\* --enablerepo=c5-media" 3)依次安装gcc、gcc-c++ Yum -y install gcc* 2、卸载系统Apache、MySQL和PHP的RPM安装包 下载前需关闭启动的服务,如httpd、mysqld service httpd stop service mysqld stop 卸载RPM包的Apache、MySQL、PHP yum remove httpd yum remove mysql 建议使用rpm –e http-1.2.3.rpm --nodeps (截断这个rpm包的依赖性) 3、关闭SELinux,允许防火墙80端口访问 1)关闭SELinux vi /etc/selinux/config SELINUX=disabled * 若安装时没有禁用SELinux ,将enforcing改为disabled 修改后需重新启动Linux方可生效! 2)关闭防火墙Netfilter/iptables 因尚未做防火墙讲解,直接简单的关闭所有防火墙设置: iptables -F * 如果没有禁用防火墙,默认80端口禁止访问 service iptables save 防火墙策略写到/etc/sysconfig/iptables,以后计算机重启再加载这个文件时,防火墙策略就会永久清空.
linux 环境搭建教程 [url=https://www.sodocs.net/doc/c75584416.html,]https://www.sodocs.net/doc/c75584416.html,[/url] 一、系统约定 软件源代码包存放位置:/usr/local/src 源码包编译安装位置(prefix):/usr/local/software_name 脚本以及维护程序存放位置:/usr/local/sbin MySQL 数据库位置:/var/lib/mysql(可按情况设置) Apache 网站根目录:/var/www/wwwroot(可按情况设置) Apache 虚拟主机日志根目录:/var/logs/httpd/(可按情况设置) Apache 运行账户:apache:apache 二、系统环境部署及调整 1. 检查系统是否正常 # more /var/log/messages(检查有无系统级错误信息) # dmesg(检查硬件设备是否有错误信息) # ifconfig(检查网卡设置是否正确) # ping [url=https://www.sodocs.net/doc/c75584416.html,]https://www.sodocs.net/doc/c75584416.html,[/url](检查网络是否正常) 2. 关闭不需要的服务 # ntsysv 以下仅列出需要启动的服务,未列出的服务一律推荐关闭: atd crond irqbalance microcode_ctl network sendmail sshd syslog 3. 重新启动系统 # init 6 4. 配置vim # vi /root/.bashrc 在alias mv='mv -i' 下面添加一行:alias vi='vim' 保存退出。 # echo 'syntax on' > /root/.vimrc 5. 使用yum 程序安装所需开发包(以下为标准的RPM 包名称) # yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel kernel 6. 定时校正服务器时钟,定时与中国国家授时中心授时服务器同步 # crontab -e 加入一行: */30 * * * * ntpdate 210.72.145.44 7. 源码编译安装所需包(Source) (1) GD2 # cd /usr/local/src
Linux牛逼命令大全 ?壹、底层辅助支持软件的安装 o1、安装OpenSSL o2、安装Curl库 o3、安装expat o4、安装libxml2 o5、安装libxslt o6、安装libmcrypt o7、安装mhash o8、安装mcrypt o9、安装zlib o10、安装libpng o11、安装jpeg o12、安装freetype o13、安装m4
o14、安装autoconf o15、安装libiconv o16、安装bzip2 o17、安装GD库 ?贰、安装Apache方法一 o18、安装apr o19、安装apr-util o20、安装pcre o21、安装apache方法一 ?叁、安装Apache方法二 o18、处理apr o19、处理apr-util o20、安装pcre o21、安装apache方法二 ?Apache启动管理方式 o I、手工管理apache o II、chkconfig管理apache ?肆、安装MySQL o22、安装cmake o23、安装bison o24、安装ncurses o25、安装MySQL ?MySQL启动管理方式 o I、手工管理MySQL o II、chkconfig管理MySQL ?伍、安装PHP o26、安装PHP o27、安装memcached服务器端 o28、安装php扩展功能memcache o29、安装php扩展memcached o30、安装Zend加速器 Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大 的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案. 本实验采用64位CentOS6.8进行部署,系统最小化安装,apache选用httpd-2.4.7,mysql选用mysql-5.6.32,php选用php-5.6.26。 软件包列表如下 ?1、openssl-1.0.2j.tar.gz2、curl-7.50.3.tar.gz3、expat-2.2.0.tar.bz2
Centos6.5下安装Apache_mysql_php源码包安装(LAMP环境搭建图文教程) Centos6.5_Apache_mysql_php(LAMP环境搭建图文教程)安装内容详细介绍: 编译安装过程介绍 一、解压tar.gz为后缀的压缩软件包 二、在Centos系统中源代码包安装过程 配置(configure) 编译(make) 安装(make install) 各个软件编译安装顺序 搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按 Apache->MySQL->PHP顺序安装。但在安装PHP之前,应先安装PHP5需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP5支持GIF、PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype 和jpegsrc等库文件。而且中间还会穿插安装一些软件。读者可以按照本节提供的顺序安装 检查安装时使用的编译工具是否存在 Gcc -v 如果发现gcc没有安装。可用下面三种方式进行安装: Gcc安装方法1: yum -y install gcc yum -y install gcc-c++ yum install make Gcc安装方法2: -- 或者 yum groupinstall "Development Tools" 一般用这个就好 Gcc安装方法3: -- 或者 yum install gcc gcc-c++ kernel-devel 卸载默认的低版本环境 目前发行的Centos操作系统版本中,如果选择默认全部安装,就已经安装了LAMP环境,但是版本相对都比较低。我们可以再安装一个LAMP环境和原来的并存,但是这样做没有必要,因为同时只能开启一个LAMP环境。所要我们要在安装之前,先应检查一下系统中是否已经安装了低版本的环境,如果已经安装过了,停止原来的服务运行,或者把原来的环境卸载掉。 检查make gcc gcc-c++是否安装: [root@WebSrv tools]# rpm -q make make-3.81-20.el6.i686 [root@WebSrv tools]# rpm -q gcc package gcc is not installed
先简要概述下本文要点:(操作系统采用CentOS6.5 x64) 1.分别安装搭建lamp服务环境; 2.采用lamp一键安装包搭建环境; 3.在lamp环境中初步搭建起一个网站; 一、分别安装搭建lamp服务环境 准备工作: 1、配置防火墙,开启80端口、3306端口 vi /etc/sysconfig/iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT #允许80端口通过防火墙 -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT #允许3306端口通过防火墙 将以上内容添加到 -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT 的下面 /etc/init.d/iptables restart #最后重启防火墙使配置生效 2、关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq #保存,关闭 shutdown -r now #重启系统 安装: 1、安装Apache 卸载自带httpd: yum remove httpd yum install httpd #根据提示,输入Y安装即可成功安装 /etc/init.d/httpd start #启动Apache
备注:Apache启动之后会提示错误: 正在启动 httpd:httpd: Could not reliably determine theserver’s fully qualif domain name, using ::1 for ServerName 解决办法: vi /etc/httpd/conf/httpd.conf #编辑 找到#ServerName https://www.sodocs.net/doc/c75584416.html,:80 修改为ServerName https://www.sodocs.net/doc/c75584416.html,:80 #这里设置为你自己的域名,如果没有域名,可以设置为localhost :wq! #保存退出 chkconfig httpd on #设为开机启动 /etc/init.d/httpd restart #重启Apache 2、安装MySQL 先卸载自带mysql: yum remove mysql mysql-server mysql-libs compat-mysql51 rm -rf /var/lib/mysql rm /etc/https://www.sodocs.net/doc/c75584416.html,f 安装: yum install mysql mysql-server #询问是否要安装,输入Y即可自动安装,直到安装完成/etc/init.d/mysqld start #启动MySQL chkconfig mysqld on #设为开机启动 cp /usr/share/mysql/https://www.sodocs.net/doc/c75584416.html,f /etc/https://www.sodocs.net/doc/c75584416.html,f#拷贝配置文件(注意:如果/etc目录下面默认有一个https://www.sodocs.net/doc/c75584416.html,f,直接覆盖即可) 为root账户设置密码: mysql_secure_installation 回车,根据提示输入Y 输入2次密码,回车 根据提示一路输入Y 最后出现:Thanks for using MySQL! MySql密码设置完成,重新启动 MySQL: /etc/init.d/mysqld restart #重启 /etc/init.d/mysqld stop #停止 /etc/init.d/mysqld start #启动
LinuxLamp环境源码包搭建详细教程 一:软件准备篇 Apache: httpd -2.4.7.tar.gz MySql: mysql-5.5.35.tar.gz PHP: php-5.5.7.tar.gz Apr : apr-1.5.0.tar.gz Apr-Util: apr-util-1.5.3.tar.gz Pcre :pcre-8.32.tar.gz 其他软件请apt-get install 安装: autoconf 、cmake 、libxml2-dev、build-essential 、bison 、build-depgcc、libncurses5-dev 注意:后续自动安装脚本将陆续退出,尽请期待。 二:说明篇 1、本次编译采用Linux Deepin,命令基于Ubuntu,编译过程在其他linux环境下依然可用,只是相应编译器和扩展包的安装方式不一样。 2、LAMP环境软件一般安装顺序,apache,mysql,php,但本次并非按照此顺序安装软件,而且本次教程为了凸显如何后期编译PHP 扩展,我们此次编译PHP时只采取默认编译方式,环境搭建完成后逐个编译PHP扩展。安装Mysql软件可能会出现各种不同的问题,笔者通过不同操作系统安装感知,主要是由于依赖包不能得到安装造成的,只要查看错误提示,网上GOOGLE 搜索即可。为了减少不必要的权限问题此次安装位置均安装在 /usr/local 目录中。 三:开始安装 1、安装apache 安装apache之前,首先要安装相应的关联包,apr,apr-util,pcre,其版本根据读者编译时确定即可。 将相应的apr,pcre 解包执行 ./configure --prefix = /usr/local/ 软件包名 如下: apr ./configure --prefix=/usr/local/apr make &sudo make insall Apr-util ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr make &sudo make insall Pcre ./configure --prefix=/usr/local/pcre
环境搭建 Linux + Apache + mysql + php + discuz! (使用root用户将所有tar.gz和rpm包上传到/temp目录下) 一安装linux 1.安装Red Hat Enterprise Linux 4 2.安装vmware tools,并修改/etc/profile文件,使/sbin目录添加到PATH环境变量中 3.使用虚拟机—快照—拍摄快照功能,将搭建好的环境备份。 二安装apache 1.安装 a.解压---tar zxvf httpd-2.2.4.tar.gz b.配置---cd httpd-2.2.4---在该路径下面执行命令---./configure
c.编译---make d.安装---make install
2.配置 apache默认安装路径:/usr/local/apache2 /usr/local/apache2下面关键目录说明 conf :apache服务器的配置目录 htdocs: 需要发布应用程序的目录 bin : apache服务器的可执行程序目录 修改/usr/local/apache2/conf/httpd.conf文件中的内容: 将#ServerName https://www.sodocs.net/doc/c75584416.html,:80中的“#”删掉,并将https://www.sodocs.net/doc/c75584416.html,改为本机的ip地址。 将” #ServerName https://www.sodocs.net/doc/c75584416.html,:80”改为” ServerName 192.168.5.136:80” 修改了httpd.conf配置文件后,应该重启apache服务。 补充说明:apache服务的启动、关闭、重启
Centos用yum搭建LAMP环境 1、安装APACHE Apache是作为一个CentOS的软件包,因此我们可以直接用下面命令安装它:#yum -y install httpd httpd-devel 配置系统在引导时启动Apache #chkconfig --levels 235 httpd on 启动Apache #/etc/init.d/httpd start 在浏览器中输入http://(IP),应该能看到Apache的测试页。若看不到测试页,有可能是防火墙未开启80端口。 使防火墙开放80端口:#vi /etc/sysconfig/iptables 必须在-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 保存退出 重启防火墙:#/etc/init.d/iptables restart 2、安装PHP 输入命令安装php: #yum -y install php 安装php扩展: #yum -y install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc 安装完重启Apache:#service httpd restart 此时可以在目录:/var/www/html/下建立一个PHP文件info.php,写入代码: 在浏览器中输入http://(IP)/info.php,就能看到PHP的一些配置信息。 3、安装Mysql 安装MySQL: #yum -y install mysql mysql-server 然后我们需要创建MySQL系统的启动键链接,这样以便于MySQL在系统启动时自动启动 #chkconfig --levels 235 mysqld on
一、Ubuntu搭建SSH的WEB环境所需软件: 1、ubuntu-9.10-server-i386.iso; 2、jdk-6u7-linux-i586.bin; 3、apache-tomcat-6.0.18.tar.gz。 二、安装Ubuntu: 具体步骤参考【Ubuntu9.04server.pdf】,安装是注意以下两个地方: 1、如下图所示,选择【Hong kong】; 2、如下图所示,选择【LAMP server】和【OpenSSH server】。 三、安装JDK: 注意:安装完Ubuntu之后先不要使用apt-get去更新任何东西; 1、将作者提供的【jdk-6u7-linux-i586.bin】传到服务器上;我们可以使用PSFTP传。 (1)、open 服务器地址; (2)、输入用户名和密码; (3)、进入你想要上传的目录,作者是在/root/upload底下。cd /root/upload (4)、put path\jdk-6u7-linux-i586.bin。
2、安装JDK: (1)、# chmod +x jdk-6u7-linux-i586.bin; (2)、# ./ jdk-6u7-linux-i586.bin;说明:安装JDK (3)、# mv jdk-6u7-linux-i586.bin /usr/local/ 说明:移动位置 (4)、# cd /usr/local/ 说明:切换目录 (5)、# mv jdk-6u7-linux-i586.bin jdk1.6 说明:文件夹改名 3、配置环境变量: (1)、# cp /etc/profile /etc/profile_back 说明:备份profile文件 (2)、# vi /etc/profile 说明:用vi打开profile文件 (3)、在末尾追加【注意此处是用“冒号”隔开而不是用“分号”】 #Java environm export JA V A_HOME=/usr/local/jdk1.6 export CLASSPATH=.:$JA V A_HOME/jre/lib:$JA V A_HOME/lib:$JA V A_HOME/lib/tools .jar (4)、输入【:wq】保存退出。 4、# source /etc/profile 说明:使配置生效 5、执行# java –version 命令,显示: java version "1.6.0_07" Java(TM) SE Runtime Environment (build 1.6.0_07-b06) Java HotSpot(TM) Server VM (build 10.0-b23, mixed mode) 如果显示信息如上,恭喜代表你的JDK安装成功! 四、安装Tomcat: 1、put path\apache-tomcat-6.0.18.tar.gz 说明:具体操作同【第三步第一点】 2、# 将文件移动到【/usr/local/】下 3、# tar zxvf apache-tomcat-6.0.18.tar.gz 4、# mv /usr/local/apache-tomcat-6.0.18 tomcat6 说明:文件夹改名 5、# /usr/local/tomcat6/bin/startup.sh 说明:启动Tomcat 配置到此结束,如无异常已成功配置好了WEB环境; 五、
阿里云web网站服务器安装配置(Lamp环境搭建图文教程) 说明:本教程是DrMeng本人在搭建阿里云web网站服务器安装配置时,一步一步记录下来的图文教程,教程几乎合适所有的linux版本的服务器的PHP环境搭建: Linux+apache+mysql+php,最所有lamp环境搭建,最稳定最好的一个版本。不论是你新手还是老手都能通过本教程搭100%搭建好你的阿里云web网站服务器的PHP运行环境。教程按四大部分详细讲解Lamp环境的搭建过程(配合图文) 第一部分:分区格式化及挂载数据盘 第二部分:上传LAMP安装源码包及解压 第三部分:LAMP环境必备编译工具和相关包安装 第四部分:LAMP环境安装(详细安装lamp环境带图文) 第一部分:分区格式化及挂载数据盘 [root@iZ940zra0cvZ ~]# cd /lamp/ [root@iZ940zra0cvZ lamp]# fdisk -l 1、查看数据盘 在没有分区和格式化数据盘之前,使用“df –h”命令,是无法看到数据盘的,可以使用“fdisk -l”命令查看。如下图: [root@iZ940zra0cvZ lamp]# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 20G 1.3G 18G 7% / tmpfs 947M 0 947M 0% /dev/shm [root@iZ940zra0cvZ lamp]# du -h 4.0K . 2、对数据盘进行分区 执行“fdisk /dev/xvdb”命令,对数据盘进行分区;
根据提示,依次输入“n”,“p”“1”,两次回车,“wq”,分区就开始了,很快就会完成。 [root@iZ940zra0cvZ lamp]# fdisk /dev/xvdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x4d77a78a. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-26108, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-26108, default 26108): Using default value 26108 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 3、对分区进行格式化 执行“mkfs -t ext3 /dev/xvdb1”命令,对分区进行格式化; mkfs.ext3 /dev/xvdb1 分别对磁盘进行格式化处理,格式化为ext3文件类型 [root@iZ940zra0cvZ lamp]# mkfs -t ext3 /dev/xvdb1
实 验 报 告 一 课程名称:网站系统开发(基于PHP ) 实验项目名称:配置PHP 开发环境及HTML 设计 实验时间: 班级: 姓名: 学号: 实 验 目 的: 1.掌握 Apache 、Mysql 以及PHP 的安装和配置。 2.掌握HTML 语法。 3.初步接触PHP 程序。 4.能够使用HTML 编写简单网页。 5.熟悉EclipsePHP Studio 3。 实 验 环 境: WAMP(Windows 下具有的Apache 、MySQL 和PHP 环境),或者LAMP (Linux 下具有的Apache 、MySQL 和PHP 环境) 实 验 内 容 及 过 程: 1.安装和配置Apache 服务环境。 2.安装和配置PHP 环境。 1,2可以根据“实验1 附件.doc ”进行安装。 也可以安装WampServer 作为集成环境,并在EclipseStudio3平台上进行项目的开发。 3.使用Eclipse Studio 3开发编写一个简单的PHP 程序来测试PHP 开发环境。 4.补充以下代码完成如图所示的页面效果:
彩电 | 冰箱 | 家电 |
---|---|---|
a | b |