LAMP  网站运行平台 Linux  Apache  MySQL   PHP

网站的网页文件用PHP语言开发的

网站服务器用apache软件实现

网站运行过程中产生的数据保存到数据库里,数据库软件用mysql

Php apache mysql安装在linux操作系统中。

Php apache mysql开源且跨平台。

用rpm包搭建lamp环境

Yum –y install  php  mysql-sever  httpd

用源码包搭建lamp环境。

安装前的准备工作

1、 配置固定IP地址

2、 安装开发工具和开发库软件包组

3、 准备安装需要的源码包

4、 把当前主机上rpm包提供的网站服务mysql数据库服务停止并设置开机不自启

安装apache源码包。PHP要最后安装,apache和mysql先安装。

[root@www LAMP]# tar zxvf httpd-2.2.25.tar.gz -C /usr/src/

[root@www src]# cd /usr/src/httpd-2.2.25/

--prefix  指定安装目录

--enable-so  支持动态加载模块

--enable-rewrite 支持网站地址重写

-- enalbe-cgi  支持CGI程序脚本

CGI 通用网关接口。可以通过页面执行操作。

--enable-charset-lite  支持多语言编码

--enable-ssl  支持ssl加密

--enable-suexec  支持setuid权限封装

--with-suexec-caller=daemon 指定suEXEC用户。源码包安装apache的进程所有者为daemon。

[root@www httpd-2.2.25]# grep daemon /etc/passwd

daemon:x:2:2:daemon:/sbin:/sbin/nologin

没有daemon用户需手动添加上

--with-suexec-docroot  指定suEXEC目录

[root@www httpd-2.2.25]# ./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-cgi --enable-charset-lite --enable-ssl

[root@www httpd-2.2.25]# make

[root@www httpd-2.2.25]# make install

[root@www apache]# cd /usr/local/apache/

[root@www apache]# ls

bin    cgi-bin  error   icons    logs  manual

build  conf     htdocs  include  man   modules

conf  配置文件目录。主配置文件httpd.conf.

logs  日志文件目录。

modules 模块目录。

bin   可执行脚本目录。

htdocs  网页目录

[root@www apache]# bin/apachectl start

[root@www apache]# netstat -antup | grep :80

tcp        0      0 :::80                       :::*                        LISTEN      24227/httpd         

[root@www apache]# elinks --dump http://localhost

                                   It works!

[root@www apache]# vim  /etc/init.d/myhttpd

[root@www apache]# cp bin/apachectl /etc/init.d/myhttpd

#chkconfig:35 85 15

# description: Apache is a World Wide Web server.

[root@www init.d]# chkconfig --add myhttpd

[root@www init.d]# chkconfig --list myhttpd

[root@www init.d]# service myhttpd stop

[root@www init.d]# elinks --dump http://localhost

ELinks: 拒绝连接

[root@www init.d]# service myhttpd start

[root@www init.d]# elinks --dump http://localhost

                                   It works!

进程名     httpd

监听端口   80

传输协议   tcp

进程所有者 daemon

安装mysql

[root@www ~]# useradd -M -s /sbin/nologin mysql

[root@www ~]# grep mysql /etc/passwd

mysql:x:501:501::/home/mysql:/sbin/nologin

[root@www mysql-5.1.62]# ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charset=gbk,gb2312

[root@www mysql-5.1.62]# make&&make install

[root@www local]# cd /usr/local/mysql/

[root@www mysql]# ls

bin  docs  include  lib  libexec  mysql-test  share  sql-bench

bin 启动脚本目录

创建主配置文件

[root@www support-files]# pwd

/usr/src/mysql-5.1.62/support-files

[root@www support-files]# cp my-medium.cnf /etc/my.cnf

初始化授权库

[root@www bin]# pwd

/usr/local/mysql/bin

[root@www bin]# ./mysql_install_db --user=mysql

[root@www mysql]# pwd

/usr/local/mysql

[root@www mysql]# ls

bin  docs  include  lib  libexec  mysql-test  share  sql-bench  var

var  数据库目录

启动服务

[root@www bin]# pwd

/usr/local/mysql/bin

[root@www bin]# ./mysqld_safe --user=mysql &

[root@www bin]# jobs

[1]+  Running                 ./mysqld_safe --user=mysql &

[root@www bin]# ./mysql -uroot -p

给源码的数据库服务添加启动脚本。

[root@www support-files]# pwd

/usr/src/mysql-5.1.62/support-files

[root@www support-files]# cp mysql.server /etc/init.d/mysql

[root@www init.d]# pwd

/etc/init.d

[root@www init.d]# chmod +x mysql

[root@www init.d]# chkconfig --add mysql 

[root@www init.d]# chkconfig --list mysql

[root@www bin]# netstat -antup | grep :3306

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      6688/mysqld         

[root@www bin]# PATH=$PATH:/usr/local/mysql/bin/

[root@www bin]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/usr/local/mysql/bin/

[root@www bin]# vim /etc/bashrc

export PATH=$PATH:/usr/local/mysql/bin/

连接数据库服务器:数据库管理员从本机登陆没有密码

[root@www bin]# mysql -uroot -p

将库文件和头文件链接到默认的系统目录下。

把源码包安装目录的库文件和头文件链接到系统默认的库文件头文件存放的目录。其他程序链接mysql服务需要库文件和头文件,所以需要做此操作。Apache是根据http协议进行链接的所以不需要。

两种方式均可。

第一种

[root@www bin]# ln -s /usr/local/mysql/lib/mysql/* /usr/lib64/

[root@www bin]# ln -s /usr/local/mysql/include/mysql/* /usr/include/

第二种

[root@www support-files]# vim /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/mysql/lib/mysql/

/usr/local/mysql/include/mysql/

[root@www support-files]# ldconfig -v

进程名

监听端口

传输协议

进程所有者

数据库目录

主配置文件

停止、启动源码mysql数据库服务

连接数据库服务器

安装源码PHP软件包

--prefix=  指定安装目录

--enable-mbstring   支持多字节字符

--with-apxs2     指定httpd的模块工具位置

--with-mysql   指定mysql 的安装位置

--enable-sockets  启用套接字支持

--with-config-file-path  指定配置路径

[root@www php-5.4.19]# pwd

/usr/src/php-5.4.19

[root@www php-5.4.19]# ./configure --prefix=/usr/local/php --enable-mbstring --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs   --with-mysql=/usr/local/mysql   --with-config-file-path=/usr/local/php/etc

[root@www php-5.4.19]# make&&make install

[root@www modules]# pwd

/usr/local/apache/modules

[root@www modules]# ls

httpd.exp  libphp5.so

[root@www conf]# pwd

/usr/local/apache/conf

[root@www conf]# vim httpd.conf

DirectoryIndex index.php index.html

AddType application/x-httpd-php .php

[root@www conf]# service myhttpd stop

[root@www conf]# service myhttpd start

PHP配置文件。文件名必须为php.ini

[root@www php-5.4.19]# pwd

/usr/src/php-5.4.19

[root@www php-5.4.19]# cp php.ini-production /usr/local/php/etc/php.ini

[root@www etc]# vim php.ini  给PHP程序员用

; Allow ASP-style <% %> tags.

; http://php.net/asp-tags

asp_tags = on

[root@www htdocs]# vim index.php

<%

        phpinfo();

%>

测试php能否连接mysql数据库。

[root@www htdocs]# vim linkdb.php

<?php                        

        $linkdb=mysql_connect("192.168.1.1","root","");

        if($linkdb){

                echo "echo ok";

            }

        else{

                echo "echo no";

            }

?>

$linkdb=mysql_connect("192.168.1.1","root","");

$linkdb 定义变量

(mysql服务器IP地址或主机名,连接mysql的用户名,用户连接mysql的密码)

PHP和apache必须装一台服务器上。但是也要安装mysql源码包。

mysql服务器可以分开。

[root@localhost ~]# yum install -y mysql-server mysql

[root@localhost ~]# /etc/init.d/mysqld restart

初始化 MySQL 数据库: Installing MySQL system tables...

授权

mysql> grant all on *.* to bbsuser@"192.168.1.1" identified by "123456";

apache服务器

[root@www ~]# /usr/local/mysql/bin/mysql -h192.168.1.30 -ubbsuser -p123456

使用LAMP发布论坛

[root@www Desktop]# unzip Discuz_X3.0_SC_UTF8.zip

[root@www Desktop]# ls

 readme    upload     utility

[root@www Desktop]# mv upload/ /usr/local/apache/htdocs/bbs

[root@www bbs]# pwd

/usr/local/apache/htdocs/bbs

[root@www bbs]# ls

admin.php    cp.php           home.php    portal.php  uc_client

api          crossdomain.xml  index.php   robots.txt  uc_server

api.php      data             install     search.php  userapp.php

archiver     favicon.ico      member.php  source

config       forum.php        misc.php    static

connect.php  group.php        plugin.php  template

[root@www bbs]# chown -R daemon config/ data/ uc_server/ uc_client/ template/

[root@svr5 bbs]# chown -R daemon  config/  data/  uc_server/

[root@svr5 bbs]# chown -R daemon  template/  uc_client/

安装Discuz

http://server_ip/bbs

mysql> grant all on bbsdb.* to bbsuser@"%" identified by "123456";