nginx+LAMP(apache+php+mysql)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

 


nginx+LAMP(apache+php+mysql)


一、安装LAMP(apache+mysql+php)平台

 

1、安装apache

下载地址:http://sunsite.bilkent.edu.tr/pub/apache/httpd/httpd-2.2.9.tar.gz


# tar zxf httpd-2.2.9.tar.gz -C /usr/src
# cd /usr/src/httpd-2.2.9
# ./configure    --prefix=/usr/local/apache  --enable-so --enable-mods-shared=all  --enable-

rewrite --enable-ssl --with-ssl=/usr/lib  --enable-auth-digest --enable-cgi --enable-suexec --

with-suexec-caller=daemon --with-suexec-docroot=/usr/local/apache/htdocs 
# make && make install
# cd /usr/local/apache/conf
# ls
# cp httpd.conf httpd.conf.bak
# grep -v "#" httpd.conf.bak   | grep -v "^$" > httpd.conf
# cd /usr/local/apache/htdocs
# vi /usr/local/apache/conf/httpd.conf            (在最后编写)

NameVirtualHost  173.17.17.11
<VirtualHost 173.17.17.11>
        DocumentRoot         /usr/local/apache/htdocs
        ServerName           www.benet.com
        ErrorLog             logs/www.benet.com.error.log
        CustomLog            logs/www.benet.com.access.log     common
</VirtualHost>


2、安装mysql


http://down1.chinaunix.net/distfiles/mysql-5.0.56.tar.gz


# useradd -M -s /sbin/nologin  mysql
# tar zxf mysql-5.0.56.tar.gz -C /usr/src
# cd /usr/src/mysql-5.0.56
# ./configure --prefix=/usr/local/mysql
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# /usr/local/mysql/bin/mysql_install_db --user=mysql
# chown -R root.mysql /usr/local/mysql/
# chown -R mysql /usr/local/mysql/var
# echo "/usr/local/mysql/lib/mysql"  >> /etc/ld.so.conf
# ldconfig
# /usr/local/mysql/bin/mysqld_safe  --user=mysql &
# 回车(Enter键)
# netstat -ntpl | grep 3306
# cp support-files/mysql.server  /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --level 35 mysqld on
# export PATH=PATH:/usr/local/mysql/bin  # echo "PATH=PATH:/usr/local/mysql/bin  # echo "PATH=PATH:/usr/local/mysql/bin"   >>  /etc/profile
# mysqladmin -u root password "123456"
# mysql -u root -p

 

3、安装php


下载地址:http://www.php.net/downloads/


ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.30.tar.gz
http://prdownloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz
http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.gz  
http://www.dnaphp.com/downloads/server/linux/18-gd-2-0-35-tar   (gd)
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz
http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz
http://sourceforge.net/projects/libpng/files/libpng15/1.5.6/libpng-1.5.6.tar.gz  
http://www.imagemagick.org/download/delegates/jpegsrc.v7.tar.gz   
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz  
http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz

 

所需库文件安装:


# tar zxvf libxml2-2.6.30.tar.gz                 
# cd libxml2-2.6.30                            
# ./configure --prefix=/usr/local/libxml2
# make && make install                              


# tar zxvf libmcrypt-2.5.8.tar.gz                  
# cd libmcrypt-2.5.8                            
# ./configure --prefix=/usr/local/libmcrypt
# make && make install                             
# cd /usr/local/src/libmcrypt-2.5.8/libltdl 
# ./configure  --enable-ltdl-install    
# make && make install                                


# tar zxvf zlib-1.2.3.tar.gz                 
# cd zlib-1.2.3                             
# ./configure --prefix=/usr/local/zlib
# make && make install                                    
 

# tar zxvf libpng-1.2.31.tar.gz                
# cd libpng-1.2.31                           
# ./configure --prefix=/usr/local/libpng
# make && make install                       
                     
安装GD2库前所需的jpeg6库文件,需要自己手动地创建安装需要的目录,它们在安装时不能自动创建。

# mkdir /usr/local/jpeg7                      //建立jpeg6软件安装目录
# mkdir /usr/local/jpeg7/bin                  //建立存放命令的目录
# mkdir /usr/local/jpeg7/lib                  //创建jpeg6库文件所在目录
# mkdir /usr/local/jpeg7/include              //建立存放头文件目录
# mkdir -p /usr/local/jpeg7/man/man1          //建立存放手册的目录
# tar zxvf jpegsrc.v7.tar.gz                  
# cd jpeg-v7                               
# ./configure --prefix=/usr/local/jpeg7 --enable-shared --enable-static


注:
--enable-shared                                    //建立共享库使用的GNU的libtool
--enable-static                                    //建立静态库使用的GNU的libtool
 
# make && make install                                             
 

# tar zxvf freetype-2.3.5.tar.gz                           
# cd  freetype-2.3.5                                  
# ./configure --prefix=/usr/local/freetype
# make && make install                                   
 

# tar zxvf autoconf-2.61.tar.gz                         
# cd autoconf-2.61                                  
# ./configure                              
# make && make install                                  


# tar zxvf libiconv-1.13.tar.gz
# cd libiconv-1.13/
# ./configure --prefix=/usr/local/libiconv
# make && make install


# tar xzf gettext-0.17.tar.gz
# cd gettext-0.17
# ./configure
# make && make install


# tar zxvf gd-2.0.35.tar.gz                     
# cd gd-2.0.35                             
# ./configure --prefix=/usr/local/gd2 --with-zlib=/usr/local/zlib --with-jpeg=/usr/local/jpeg7 -

-with-png=/usr/local/libpng --with-freetype=/usr/local/freetype                        
# make && make install                                   


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

....

AddType  application/x-httpd-php  .php

....

DirectoryIndex    index.php    index.html 

:wq

# tar jxf php-5.2.6.tar.bz2 -C /usr/src
# cd /usr/src/php-5.2.6
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-

apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-libxml-

dir=/usr/local/libxml2 --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg7 --with-

freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd2 --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  
# make && make install
# cp php.ini-dist  /usr/local/php/etc/php.ini
# vi /usr/local/php/etc/php.ini

extension_dir="/usr/lib/php/modules"        (原为extension_dir="./" )

:wq

# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# /usr/local/apache/bin/apachectl restart
# setenforce 1


测试:

# vi /usr/local/apache/htdocs/test.php

<?php
phpinfo();
?>

:wq

# /usr/local/apache/bin/apachectl restart


访问:http://www.benet.com/test.php

 

二、安装nginx


下载地址:

http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.7.51.tar.gz
http://blog.s135.com/soft/linux/nginx_php/pcre/pcre-7.8.tar.gz
 
# tar zxvf pcre-7.9.tar.gz
# cd pcre-7.9
# ./configure
# make && make install

安装pcre成功后,继续安装nginx

# tar zxf nginx-0.7.51.tar.gz
# cd nginx-0.7.51
# ./configure
# make && make install

4、nginx安装成功后的安装目录为/usr/local/nginx

编辑安装目录下conf文件夹中的nginx.conf,输入如下内容 
 

3. 配置虚拟主机

 打开配置文件usr/local/nginx/conf/nginx.conf,可以看到http中包含多个server,注释掉配置中默认的

server,在http中加上server {
        listen       80;
        charset utf8;
        server_name  www.benet.com;
        root  /usr/local/nginx/html;
        location ~ \.php$
        {
         proxy_pass   http://127.0.0.1:8080;
}
    }


启动  /usr/local/nginx/sbin/nginx

停止  /usr/local/nginx/sbin/nginx -s stop

重启  /usr/local/nginx/sbin/nginx -s reload

本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/834926如需转载请自行联系原作者


yangzhimingg

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
90
分享
相关文章
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
50 18
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
176 25
PHP与MySQL动态网站开发:从基础到实践####
本文将深入探讨PHP与MySQL的结合使用,展示如何构建一个动态网站。通过一系列实例和代码片段,我们将逐步了解数据库连接、数据操作、用户输入处理及安全防护等关键技术点。无论您是初学者还是有经验的开发者,都能从中获益匪浅。 ####
php实现一个简单的MySQL分页
通过本文的详细步骤和代码示例,我们实现了一个简单的PHP MySQL分页功能。主要步骤包括计算总记录数、设置分页参数、查询当前页的数据以及生成分页链接。这种分页方式适用于大多数Web应用,能够有效提升用户体验和页面响应速度。
128 4
PHP与MySQL的高效协同开发策略####
本文深入探讨了PHP与MySQL在Web开发中的协同工作机制,通过优化配置、最佳实践和高级技巧,展示了如何提升数据库交互性能,确保数据安全,并促进代码可维护性。我们将从环境搭建讲起,逐步深入到查询优化、事务管理、安全防护及性能调优等核心环节,为开发者提供一套实战驱动的解决方案框架。 ####
PHP与MySQL的高效交互:从基础到实践####
本文深入探讨了PHP与MySQL数据库之间的高效交互技术,涵盖了从基础连接到高级查询优化的全过程。不同于传统的摘要概述,这里我们直接以一段精简代码示例作为引子,展示如何在PHP中实现与MySQL的快速连接与简单查询,随后文章将围绕这一核心,逐步展开详细讲解,旨在为读者提供一个从入门到精通的实战指南。 ```php <?php // 数据库配置信息 servername="localhost";username = "root"; password="password";dbname = "test_db"; // 创建连接 conn=newmysqli(se
132 0
PHP与MySQL的深度整合:构建高效动态网站####
在当今这个数据驱动的时代,掌握如何高效地从数据库中检索和操作数据是至关重要的。本文将深入探讨PHP与MySQL的深度整合方法,揭示它们如何协同工作以优化数据处理流程,提升网站性能和用户体验。我们将通过实例分析、技巧分享和最佳实践指导,帮助你构建出既高效又可靠的动态网站。无论你是初学者还是有经验的开发者,都能从中获得宝贵的见解和实用的技能。 ####
54 0
|
11月前
|
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
306 2

推荐镜像

更多