欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

Linux下Apache+Mysql+PHP的安装与配置

程序员文章站 2022-03-28 14:16:12
...

(1)Apache的安装与配置 思路:首先在官网下载APACHE源码,本系统下载版本为httpd-2.2.17.tar.gz,下面几步为在终端的配置命令 tar zxvf httpd-2.2.17.tar.gz cd httpd-2.2.17 ./configure --prefix=/usr/local/apache make make install service httpd sta

(1) Apache的安装与配置

思路:首先在官网下载APACHE源码,本系统下载版本为httpd-2.2.17.tar.gz,下面几步为在终端的配置命令

tar zxvf httpd-2.2.17.tar.gz

cd httpd-2.2.17

./configure --prefix=/usr/local/apache

make

make install

service httpd start

如果出现:

Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 222.31.76.227 for ServerName

[ OK ]

说明安装成功!

如果希望apache开机自启动的话,可以通过以下命令在/etc/rc.d/rc.local加入自启动命令:

echo "service httpd start">>/etc/rc.d/rc.local

测试Apache

/var/www/html目录下建立index.html文件

Welcome to Apache!!


保存后,在浏览器上输入http://XXX.XXX.XXX.XXX(Web服务器的IP)查看结果

注意:iptables必须关闭或者将80端口加到iptables

(2) Mysql-client的安装与配置

思路:由于MYSQL没有源码包可以下载,所以本系统使用MYSQL的二进制安装包,使用版本为mysql-5.5.10-linux2.6-x86_64.tar.gz,下面几步为在终端的配置命令(可直接粘贴)

tar zxvf mysql-5.5.10-linux2.6-x86_64.tar.gz

cd /usr/local

ln -s /home/software/mysql-5.5.10-linux2.6-x86_64 mysql

cd mysql/

vi INSTALL-BINARY

看到以下部分为安装步骤

To install and use a MySQL binary distribution, the basic command

sequence looks like this:

shell> groupadd mysql

shell> useradd -r -g mysql mysql

shell> cd /usr/local

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

shell> chown -R mysql .

shell> chgrp -R mysql .

shell> scripts/mysql_install_db --user=mysql

shell> chown -R root .

shell> chown -R mysql data

# Next command is optional

shell> cp support-files/my-medium.cnf /etc/my.cnf

shell> bin/mysqld_safe --user=mysql &

# Next command is optional

shell> cp support-files/mysql.server /etc/init.d/mysql.server //开机自启动(后面还需几步)


如果已经安装在安装操作系统时已经安装过MYSQL,那么前6步(高亮部分)目前已经完成

(需要注意的是 data目录下存放的就是一个又一个数据库,所以,必须将权限设置为mysql,否则,mysql本身进不去,配置就会失败)

chown -R mysql.mysql .

scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/

chown -R root .

chown -R mysql data

cp support-files/my-medium.cnf /etc/my.cnf

bin/mysqld_safe --user=mysql &

service mysqld start

若显示:

Starting MySQL.. [ OK ]

则说明mysql已成功启用!

使用 mysql_install_db --user=mysql 创建新的MySQL授权表,使用者为mysql

使用 mysqld_safe --user=mysql & 以用户名user_name或数字用户ID user_id运行mysqld服务器。(本文中的“用户”指系统登录账户,而不是 授权表中的MySQL用户)

MYSQL自启动

cp support-files/mysql.server /etc/init.d/mysqld

chmod 700 /etc/init.d/mysqld

chkconfig --add mysqld

如果遇到以下问题:

启动MYSQL出错,提示:
Starting mysqld daemon with databases from /usr/local/mysql/data
STOPPING server from pid file /usr/local/mysql/data/xmcncn.pid
061103 15:25:32 mysqld ended
解决方法:
vi /etc/my.cnf
看看[mysqld]下有没有
port = 3306
添加上就可以了
touch /tmp/mysql.sock
killall -9 mysqld
/usr/local/mysql/bin/mysqld_safe -user=mysql &
成功启动

(3)php的安装与配置

首先,安装php前,以下包可能会需要安装:zlib-1.2.3.tar.gz、libpng-1.2.24.tar.gz、freetype-2.3.11.tar.gz、libtool-2.4.tar.gz、jpegsrc.v6b.tar.gz、autoconf-2.61.tar.gz、gd-2.0.35.tar.gz、libxml2-2.7.3.tar.gz

在官网下载php源码,本系统下载版本为php-5.3.6.tar,下面几步为在终端的配置命令(可直接粘贴)

cd /home/software/

tar -xvf php-5.3.6.tar

cd php-5.3.6

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-openssl-dir=/usr/lib/openssl --with-openssl

配置后若如下显示License,则说明成功,否侧可能还缺少上述的包。

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

creating libtool

appending configuration tag "CXX" to libtool

Generating files

updating cache ./config.cache

creating ./config.status

creating main/internal_functions.c

creating main/internal_functions_cli.c

+----------------------------------------------------------------------------------------+

| License: |

| This software is subject to the PHP License, available in this |

| distribution in the file LICENSE. By continuing this installation |

| process, you are bound by the terms of this license agreement. |

| If you do not agree with the terms of this license, you must abort |

| the installation process at this point. |

+-----------------------------------------------------------------------------------------+

Thank you for using PHP.


make

make test //可以不做

make install

cp php.ini-development /etc/php.ini

vi /usr/local/apache/conf/httpd.conf

加入一句话:

AddType application/x-httpd-php .php


cd /var/www/html

vi index.php

新建php测试代码为:

phpinfo();

?>


重启apache,重启前要先修改/etc/selinux/config,将SELINUX=enforcing 改成SELINUX=disabled:

vi /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=disabled

# SELINUXTYPE= type of policy in use. Possible values are:

# targeted - Only targeted network daemons are protected.

# strict - Full SELinux protection.

SELINUXTYPE=targeted


service httpd restart

出现以下语句说明重启成功:

Stopping httpd: [ OK ]

Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 222.31.76.227 for ServerName

[ OK ]


在浏览器输入http://XXX.XXX.XXX.XXX/index.php,若显示phpinfo信息说明php配置成功。

若能显示phpinfo信息,但发现无法连接数据库(没有MYSQL的信息),说明phpmysql相连的模块包没有安装成功,可尝试下载安装php-mysqlrpm(php-mysql-5.1.6-27.el5.x86_64.rpm),安装它还需先安装php-pdorpm(php-pdo-5.1.6-27.el5.x86_64.rpm)pdo就是专门用于连接phpmysql的。

在以后的web端配置安装时,若phpinfo的基本信息能正常显示,但缺少某个模块功能,可单独下载其对应的rpm包,安装即可。

在/var/www/html下新建一个test.php,用于测试连接远程数据库:

Web2

echo "Hello World!";

$db=mysql_connect("远程服务器IP","用户名","password") or die ("mysql connected failed! ");

mysql_select_db("数据库名",$db);

$sql="select * from users";

$result=mysql_fetch_row(mysql_query($sql));

print_r($result);

?>