上面3篇我们主要对系统进行了安装和配置,并且配置了yum包管理器,安装了几个常用的工具,这篇我们就来介绍如何来搭建lnmp环境.这里的LNMP环境是指Linux下搭建Nginx MySQL PHP.Nginx是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务
上面3篇我们主要对系统进行了安装和配置,并且配置了yum包管理器,安装了几个常用的工具,这篇我们就来介绍如何来搭建lnmp环境.这里的LNMP环境是指Linux下搭建Nginx MySQL PHP.Nginx是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。Nginx不仅可以作为web服务器,也可以作为负载均衡器,之前也有文章介绍,大家可以看一下.
MySQL是一款开源免费的数据软件,MySQL是一个小型关系型数据库管理系统,其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库.
PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛的运用。
nginx当前最新稳定版是nginx-1.0.13 首先我们下载nginx,在Linux下执行下面命令:
cd /usr/src # 一般软件源码放在这个目录下 wget http://nginx.org/download/nginx-1.0.13.tar.gz # 下载 nginx会有几个依赖包,我们首先安装依赖,不要安装过程中会报错: yum -y install zlib-devel pcre-devel openssl-devel
一般源代码安装分4个步骤(有人也会省去第一个步骤),解压
(tar命令)预编译
(执行源码包下的configure),编译
(make),编译安装
(make install)
首先我们解压源码包:
tar -zxvf nginx-1.0.13.tar.gz
这里解释下加压参数,z代表gzip(也就是后面的.gz文件)x代表加压,v表示显示详细信息,-f使用档案文件或设备(必选参数)
然后我们进行预编译,一般预编译会带上一些参数,已达到我们想要安装的效果,比如启用某个功能,禁用某个功能:
进入源码包目录进行预编译:
cd nginx-1.0.13 ./configure --prefix=/usr/local/nginx\ # 指定安装目录为/usr/local/nginx --with-openssl=/usr/include/openssl\ # 启用ssl --with-pcre\ # 启用正规表达式 --with-http_stub_status_module # 安装可以查看nginx状态的程序
其中./configure指执行当前目录下的configure
文件
预编译完成后我们就可以进行编译和安装:
make #编译
执行后make后会有大量输出,等待输出完成后如果没有报错就可以进行安装执行:
make install #安装
安装完成后我们可以到相应的目录查看安装的文件:
ls /usr/local/nginx/ conf html logs sbin
好了,下面我们启动nginx:
/usr/local/nginx/sbin/nginx
通过查看端口看nginx是否启动成功,nginx占用TCP的80端口,执行下面命令:
netstat -antlp | grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 5946/nginx
我们查看80端口是开放的
然后打开浏览器访问http://192.168.3.120,我们会看到Welcome to nginx(之前的版本是 It's Work):
nginx安装完毕后我们来安装MySQL ,我们使用MySQl-5.0.95版首先下载:
wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.95.tar.gz/from/http://mysql.cdpa.nsysu.edu.tw/
安装之前我们先做一些准备工作,
安装依赖:
yum -y install ncurses-devel
创建MySQL用户:
useradd -M -s /sbin/nologin mysql # -M不创建home目录,-s指定shell为不登录
然后进行安装:
tar -zxvf mysql-5.0.95.tar.gz cd mysql-5.0.95 ./configure --prefix=/usr/local/mysql \ --without-debug \ # 取消调试模式提高性能 --with-extra-charsets=utf8,gbk \ # 仅仅指定需要的默认字符集提高性能 --enable-assembler \ # 使用汇编模式提高性能 --with-mysqld-ldflags=-all-static \ # 以静态方式编译提高性能 --with-client-ldflags=-all-static \ --with-unix-socket-path=/tmp/mysql.sock \ # 使用unix socket提高性能 --with-ssl make make install
安装完成后复制配置文件和启动脚本:
cp support-files/my-medium.cnf /etc/my.cnf # 复制配置文件 cp support-files/mysql.server /etc/init.d/mysqld # 复制启动脚本 chmod +x /etc/init.d/mysqld # 给启动脚本执行权限
为了以后方便我们为所有的二进制可执行文件和动态链接库文件做一个软连接:
ln -s /usr/local/mysql/bin/* /usr/local/bin/ # 为可执行的二进制文件做软连接 ln -s /usr/local/mysql/lib/mysql/lib* /usr/lib/ # 为动态链接库做一个软连接
然后我们初始化数据库:
mysql_install_db --user=mysql # 用MySQL用户安装数据库
为了MySQL能正常使用我们需要更改一下MySQL安装目录和MySQL的数据库目录的属主和属组:
chown -R root.mysql /usr/local/mysql/ # 更改安装目录属主为root,属组为mysql chown -R mysql.mysql /usr/local/mysql/var/ # 更改数据库目录属主和属组都为mysql
这里的-R
参数用来应用到所有子目录和文件
配置完毕后我们启动mysql:
service mysqld start
现在我们查看MySQL是否启动成功,MySQL占用TCP的3306端口,我们查看端口是否被占用:
netstat -antlp | grep 3306 tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 32143/mysqld
然后我们通过mysql命令来连接mysql:
mysql
会显示如下内容表示已经成功启动MySQL并已经连接上
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.0.95-log Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
MySQL安装完毕下面我们就来安装PHP,安装PHP前首先要安装几个源码包依赖:libmcrypt
mhash
mcrypt
首先来安装几个源码包依赖:
wget http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download tar -jxvf libmcrypt-2.5.8.tar.bz2 # 这个包是bz2的 使用-j参数解压 cd libmcrypt-2.5.8 ./configure make make install #################################################### wget http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2/download tar -jxvf mhash-0.9.9.9.tar.bz2 cd mhash-0.9.9.9 ./configure make make install # 这两个包安装完成后要把动态链接库做一个软连接到/usr/lib,以为接下来的mcrypt依赖于这两个包 ln -s /usr/local/lib/libmcrypt* /usr/lib ln -s /usr/local/lib/libmhash.* /usr/lib/ ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config ########################################################### wget http://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz/download tar -zxvf mcrypt-2.6.8.tar.gz cd mcrypt-2.6.8 ./configure make make install
然后下载php:
wget http://cn2.php.net/get/php-5.4.0.tar.bz2/from/this/mirror
安装依赖:
yum –y install libxml2-devel curl-devel libpng-devel openldap-devel
我们使用nginx调用php的时候使用fpm的方式,在php 5.4中加入了对php-fpm的支持,所以就不需要打补丁了.安装PHP:
tar -jxvf php-5.4.0.tar.bz2 cd php-5.4.0 ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-zlib --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --with-curl --with-curlwrappers --enable-fpm --enable-fastcgi --with-mcrypt --with-gd --with-openssl --with-mhash --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc -enable-zip --enable-soap make make install
到这里整个LNMP已经安装完成.下面我们就配置php和nginx能运行php网站: 首先为php创建配置文件:
cp php.ini-production /usr/local/php/php.ini # 如果是开发就复制php.ini-development cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf ln -s /usr/local/php/bin/php /usr/bin/
配置php-fpm,编辑php-fpm.conf
vi /usr/local/php/etc/php-fpm.conf
找到listen那一行,修改成如下内容:
listen = /var/run/php-fpm/php-fpm.sock # 使用unix socket
启动php-fpm
mkdir /var/run/php-fpm /usr/local/php/sbin/php-fpm
然后配置nginx,编辑nginx配置文件
vi /usr/local/nginx/conf/nginx.conf
修改nginx配置文件支持php:
server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.php index.html index.htm; # 添加index.php的首页文件 } # 添加下面内容 location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; include fastcgi.conf; }
修改完毕后保存退出重启nginx:
pkill -9 nignx /usr/local/nginx/sbin/nginx
然后在/usr/local/nginx/html下创建index.php,
vi /usr/local/nginx/html/index.php
添加下面内容:
<?php phpinfo(); ?>
保存退出后访问http://192.168.3.120/index.php,看到下面页面表示已经安装配置成功:
到这里我们的LNMP环境就完全搭建成功,运行你的网站或者学习你的PHP吧.
原文地址:lnmp环境搭建完全手册(四)——lnmp搭建(源码安装), 感谢原作者分享。

Windows恢复环境(WinRE)是用于修复Windows操作系统错误的环境。进入WinRE后,您可以执行系统还原、出厂重置、卸载更新等操作。如果无法引导到WinRE,本文将指导您使用修复程序解决此问题。无法引导到Windows恢复环境如果无法引导至Windows恢复环境,请使用下面提供的修复程序:检查Windows恢复环境的状态使用其他方法进入Windows恢复环境您是否意外删除了Windows恢复分区?执行Windows的就地升级或全新安装下面,我们已经详细解释了所有这些修复。1]检查Wi

在本文中,我们将了解Python和Anaconda之间的差异。Python是什么?Python是一种开源语言,非常重视使代码易于阅读并通过缩进行和提供空白来理解。Python的灵活性和易于使用使其非常适用于各种应用,包括但不限于对于科学计算、人工智能和数据科学,以及创造和发展的在线应用程序。当Python经过测试时,它会立即被翻译转化为机器语言,因为它是一种解释性语言。有些语言,比如C++,需要编译才能被理解。精通Python是一个重要的优势,因为它非常易于理解、开发,执行并读取。这使得Pyth

Vue框架下,如何快速搭建统计图表系统在现代网页应用中,统计图表是必不可少的组成部分。Vue.js作为一款流行的前端框架,提供了很多便捷的工具和组件,能够帮助我们快速搭建统计图表系统。本文将介绍如何利用Vue框架以及一些插件来搭建一个简单的统计图表系统。首先,我们需要准备一个Vue.js的开发环境,包括安装Vue脚手架以及一些相关的插件。在命令行中执行以下命

php集成环境包有:1、PhpStorm,功能强大的PHP集成环境;2、Eclipse,开放源代码的集成开发环境;3、Visual Studio Code,轻量级的开源代码编辑器;4、Sublime Text,受欢迎的文本编辑器,广泛用于各种编程语言;5、NetBeans,由Apache软件基金会开发的集成开发环境;6、Zend Studio,为PHP开发者设计的集成开发环境。

CentOS7下搭建web服务器的网络安全加固技巧web服务器是现代互联网的重要组成部分,因此保护web服务器的安全性非常重要。通过加固网络安全,可以减少风险和避免潜在的攻击。本文将介绍在CentOS7上搭建web服务器时常用的网络安全加固技巧,并提供相应的代码示例。更新系统和软件首先,确保你的系统和软件是最新版本。可以使用以下命令更

在Windows11上设置环境变量可以帮助您自定义系统、运行脚本和配置应用程序。在本指南中,我们将讨论三种方法以及分步说明,以便您可以根据自己的喜好配置系统。有三种类型的环境变量系统环境变量–全局变量处于最低优先级,可由Windows上的所有用户和应用访问,通常用于定义系统范围的设置。用户环境变量–优先级越高,这些变量仅适用于在该帐户下运行的当前用户和进程,并由在该帐户下运行的用户或应用程序设置。进程环境变量–具有最高优先级,它们是临时的,适用于当前进程及其子进程,为程序提供

CentOS搭建web服务器的日志管理与监控技巧Web服务器是现代互联网应用的重要组成部分,而服务器的日志管理与监控是确保服务器稳定运行和故障排查的关键。本文将介绍在CentOS操作系统上如何搭建web服务器,并提供一些日志管理与监控的技巧。一、搭建Web服务器安装ApacheApache是一个流行的开源Web服务器软件。在CentOS上安装Apache很简

Laravel环境配置文件.env的常见问题及解决方法在使用Laravel框架开发项目时,环境配置文件.env是非常重要的,它包含了项目的关键配置信息,如数据库连接信息、应用密钥等。然而,有时候在配置.env文件时会出现一些常见问题,本文将针对这些问题进行介绍并提供解决方法,同时附上具体的代码示例供参考。问题一:无法读取.env文件当我们配置好了.env文件


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

Dreamweaver Mac版
视觉化网页开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),