LNMP之php,nginx源码编译以及论坛搭建

用PHP做一个校园论坛源代码,php校园BBS论坛网站 【实例简介】论坛在HTML+DIV+CSS设计的基础上,用当今比较流行的网站开发技术PHP语言进行开发,用当今世界上最流行的Apache作为本站开发的服务器。论坛将采用B/S体系结构,人们通过浏览器就可以访问论坛网站的所有页面,保证的服务器的安全。数据库采用免费,小巧,易用的MySQL数据库。该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,... 阅读详情

实验环境:

rhel6.5,selinx 和 iptables均为disabled状态

主机环境:

server1  172.25.254.1

####php源码编译####

PHP概念介绍:

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

下载php源码包进行解压

tar jxf php-5.6.35.tar.bz2

cd php-5.6.35

./configure --help | grep mysql   ##过滤出与mysql相关的模块

./configure --prefix=/usr/local/lnmp/php # php安装的位置 --with-config-file-path=/usr/local/lnmp/php/etc #php配置文件所在的位置
--with-mysql=mysqlnd
--enable-mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
--with-openssl
--with-snmp
--with-gd
--with-zlib
--with-curl
--with-libxml-dir
--with-png-dir
--with-jpeg-dir
--with-freetype-dir
--with-pear
--with-gettext
--with-gmp
--enable-inline-optimization
--enable-soap
--enable-ftp
--enable-sockets
--enable-mbstring
--enable-fpm  # 开启fpm模式(nginx等服务用的)
--with-fpm-user=nginx  # 对PHP服务的限制通过nginx用户来实现
--with-fpm-group=nginx  # PHP以nginx用户组身份运行
--with-mcrypt   # 提供了对多种块算法的支持 主要用来实现加密等算法
--with-mhash    # 加密算法

有错误,此时要解决依赖性

yum install libxml2-devel -y

yum install openssl-devel -y

yum install curl-devel -y

yum install gmp-devel -y

yum install net-snmp-devel -y

此时要下载gd-devel-2.0.35-11.el6.x86_64.rpm,libmcrypt-devel-2.5.8-9.el6.x86_64.rpm libmcrypt-2.5.8-9.el6.x86_64.rpm,

re2c-0.13.5-1.el6.x86_64.rpm  

yum install -y gd-devel-2.0.35-11.el6.x86_64.rpm -y

yum install libmcrypt-devel-2.5.8-9.el6.x86_64.rpm libmcrypt-2.5.8-9.el6.x86_64.rpm -y

rpm -ivh re2c-0.13.5-1.el6.x86_64.rpm  

重新设置

编译安装

make && make install  

拷贝文件配置文件

vim /usr/local/lnmp/php/etc/php-fpm.conf   将第25行注释去掉(pid)

cd /usr/local/lnmp/php/etc/

vim php.ini     ##修改时间为Asia/Shanghai

useradd -M -d /usr/local/lnmp/nginx -s /sbin/nologin nginx

id nginx   ##查看用户

cd php-5.6.35/  

cd sapi/fpm

cp init.d/php-fpm /etc/init.d/php-fpm     ##将php服务脚本做好

chmod +x /etc/init.d/php-fpm       ##增加权限

/etc/init.d/php-fpm start  

netstat -antlp    ##查看端口

ps ax   ##查看 进程是否开启

####nginx源码编译#####

nginx介绍:

nginx是一款高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。其源代码以类BSD许可证的形式发布,因它的稳定性。丰富的功能集,示例配置文件和低系统资源的消耗而闻名。是一款轻量级的web服务器/反向代理服务器及电子邮件代理服务器,同时nginx也是一个非常优秀的邮件代理服务器。其特点为占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站的用户有:百度,京东,新浪,腾讯,网易,淘宝等。
在连接高并发的情况下,nginx是apache服务不错的代替品:nginx在美国是做虚拟主机老板们经常选用的软件平台之一。能够支持高达50000个并发连接数的响应,感谢nginx为我们选择epoll and kqueue作为开发模型。
四:ngixnx和apache对比
1.nginx相对于apache的优点
轻量级,同样的web服务器,比apache占有更少的资源和内存
抗并发,nginx处理请求是异步非阻塞式,而apache则是阻塞式。在高并发下,nginx能保持弟子员,低消耗,高性能
高度模块化设计,编写高性能模块资源丰富
代理功能强大
2.apache对于nginx的优点
比nginx的rewrite(服务其的重写脉冲技术,支持URL重写)更强大
模块超多,现有的模块基本能满足所有需求
比nginx稳定,bug较少
3.nginx于apache应用场景对比
apache适合跑动态,而nginx时和跑静态和反向,但若静态文件较少,apache的select模块比nginx的epoll模块更好
nginx适用于IO米即型服务,apache适合与CPU密集型服务
最好两者结合,例如,lnmp架构,nginx做前端服务器,处理静态文件请求,apache做后端服务器,当客户发出动态文件请求时,nginx的反向代理功能将请求转发到apache.
4.轻量级,高并发原因:
对于apache,每个请求都独占一个工作线程,并发数在几千,占用内存,CPU,降低性能
对于nginx,一个进程只有一个主线程,通过异步非阻塞式时间处理机制,实现了循环处理多个准备好的事件,从而实现轻量级,高并发。
5.直接说明
apache属于专一性服务
nginx属于分阶段进行,节省时间
五.nginx服务器的搭建及配置
在server1中做如下操作

源码安装:

加压源码包

tar zxf nginx-1.10.1.tar.gz

cd nginx-1.10.1/

cd src/core/

vim nginx.h     ##去掉版本号

cd ..

cd auto/cc

vim gcc     ##注释掉debug一行

开始预编译

cd nginx-1.10.1 ./configure --help ###查看要添加的模块帮助

./configure --prefix=/usr/local/lnmp/nginx

--with-http_ssl_module
--with-http_stub_status_module
--user=nginx
--group=nginx
--with-threads
--with-file-aio

出现报错,解决依赖性安装

yum install pcre-devel -y   

重新设置,如下便是设置成功

make && make install    ##编译及安装

配置nginx服务

cd /usr/local/lnmp/nginx/conf

vim nginx.conf

vim /etc/security/limits.conf

nginx   -    nofile     65536          ##扩大nginx用户内存

vim /root/.bash_profile     ##将编译生成的mysql二进制命令放进系统环境变量中,保证可以直接调用该二进制命令

source .bash_profile   ##刷新

cd /usr/local/lnmp/nginx/sbin/

nginx -t      ##语法检测

nginx       ##器用nginx命令

cd /usr/local/lnmp/nginx/html     ##默认发布目录

vim index.php

测试:

在firefox上访问172.25.254.1 和172.25.254.1/index.php,会得到如下不同效果

为了方便测试,再次编辑nginx.conf

vim nginx.conf

nginx -s reload   ##刷新

重新访问172.25.254.1

####论坛的搭建#####

 

yum install unzip -y   ##做好解压的准备

unzip Discuz_X3.2_SC_UTF8.zip -d /usr/local/lnmp/nginx/html/

cd /usr/local/lnmp/nginx/html

mv upload bbs    ##更改目录名

cd bbs/

chmod 777 config/ data/ uc_server/ uc_client/ -R     ##修改目录权限

此处的数据库密码便是当初设置的密码(应该是WESTOS1234)

输入密码

 

cd /usr/local/lnmp/php/etc/

vim php.ini

这个时候安装还会报错,这是因为连接数据库的权限不够

/etc/init.d/php-fpm reload ###重新加载配置文件

cd /usr/local/

ll ###查看里面目录权限

cd lnmp/

ll ###查看里面目录权限

cd mysql/

ll ###查看里面目录权限

chmod 755 data/ ###将data目录权限修改

/etc/init.d/mysqld start

此次登陆会成功

进入管理中心,有要求,删除install中的index.php

cd /usr/local/lnmp/nginx/html/bbs/install/

rm -fr index.php

刷新一次,就可以了

 

 

 

 

 

 

 

LNMP----论坛搭建(mysql,nginx,php源码编译) MYSQL源码编译 下载mysql源码安装包 tar zxf mysql-boost-5.7.17.tar.gz yum install cmake-2.8.12.2-2.el7.x86_64.rpm -y cd mysql-5.7.17/ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql ##安装目录 -DMYSQL_DATA... 阅读详情

相关推荐

利用lnmp架构搭建论坛Discuz

实验环境:rhel6.5 实验主机:server1 172.25.70.1 一、mysql源码安装 1.安装编译mysql的cmake工具 所需软件包:cmake-2.8.12.2-4.el6.x86_64.rpm [root@server1 ~]# yum install cmake-2.8.12.2-4.el6.x86_64.rpm -y 2.安装mysql源码包 所需软件包:m...

zxy15771771622的博客 2024

nginx的LNMP构建+discuz论坛

P:PHP,是一种开发动态页面的编程语言,解析动态页面,起到中间件的作用(在nginx和数据库的中间),在中间沟通nginx和数据库,以请求数据库上的信息。M:mysql数据库,保存用户的密码,以及论坛的相关内容。3.设置环境变量,申明/宣告mysql命令便于系统识别。二、创建数据库及安装php、discuz论坛。vim /etc/my.cnf的配置文件。7.进入数据库:建立用户并且创建密码。N:nginx前端页面的web服务。5.设置系统识别,进行操作。L:linux 操作系统。6. 初始化数据库密码。

Alone8046的博客 635

php论坛源代码(适合初学者学习使用)

php论坛源代码(原创,附带mysql数据库文件,适合初学者学习使用);

Docker系列---dockerfile方式 | 编写镜像 | 参考模板 | 说明详细

镜像模板mysql 模板nginx 模板Tomcat 模板ssh 模板 mysql 模板 在 root目录里面创建mysql目录 创建dockerfile my.cnf 文件 #Dockerfile文件 FROM centos:7 MAINTAINER dark RUN yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake make RUN useradd -M -s /sbin/nologin mysql ADD mysql-5

Dark_Tk的博客 445

校园BBS论坛系统

本论坛总共分游客、普通会员、管理员 一、游客:可以直接进入前台首页面,只有浏览帖子的权限 二、普通会员:以自己注册的ID和密码进入前台首页面,可以浏览帖子、发表帖子、回复帖子、查看和修改个人资料 三、管理员:ID:1,密码:123456 享有普通会员的所有权限并且能进入后台对论坛进行管理

php校园BBS论坛网站

论坛在HTML+DIV+CSS设计的基础上,用当今比较流行的网站开发技术PHP语言进行开发,用当今世界上最流行的Apache作为本站开发的服务器。论坛将采用B/S体系结构,人们通过浏览器就可以访问论坛网站的所有页面,保证的服务器的安全。数据库采用免费,小巧,易用的MySQL数据库。该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的知识。该论坛还有一些特殊的功能,如在线人员显示、强大的搜索功能。本网站严格按照软件项目开发的流程进行开发,对于网站开发的可行性分析、需求分析、概要设计、详细设计以及对网站的测试与维护都有详细的论述和实现过程。 本套论坛的优点在于它具有强大的可扩展性和可维护性,非常适合校园师生使用的校园网论坛!

基于PHP下的大学生校园交流论坛的设计与实现毕业设计源码101634

用户注册:游客进入该论坛后若想发帖或者回复帖子得输入个人信息进行注册。 用户登录:用户注册后,用注册账号与密码进行登录。 忘记账号和密码:当用户忘记自己的账号和密码时,可以通过关键信息的回答,问题全部回答成功可重新设置密码。 收藏:在主页面中看到喜欢或者感兴趣的帖子添加到收藏(添加到收藏的帖子不喜欢了可以取消收藏)帖子收藏与未收藏要有状态显示。 个人中心:登录后的用户可以修改自己的个人密码,个人信息(性别,年龄,网名,头像,个性签名,电子邮箱),我关注的博主,我的帖子收藏。 发布帖子...

高级程序源的博客 2713

基于PHP的商城系统

采用PHP开发的水果商城,将页面html和php代码分离,商城的基本功能都有实现,页面简洁明了,易操作。

计算机毕业设计php_thinkphp_vue的校园论坛网站(源码+系统+mysql数据库+Lw文档)

在各学校的校园论坛中,交流是一项非常重要的事情。随着计算机多媒体技术的发展和网络的普及。采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的可以校园论坛的平台,这样可以有效地解决论坛交流混乱的局面。本文首先介绍了校园论坛技术的发展背景与发展现状,然后遵循软件常规开发流程,首先针对系统选取适用的语言和开发平台,根据需求分析制定模块并设计数据库结构,再根据系统总体功能模块的设计绘制系统的功能模块图,流程图以及E-R图。...

QQ1039692211的博客 430

校园社区管理系统

这是一个简单的管理系统,适合初学者的参考!里面涉及到数据库,不难的,下载来参考吧!

WorkBuddy驱动SolidWorks实测:AI建模流程、参数化与许可排查指南

AI辅助三维建模正在改变工程师的重复劳动方式。其核心理念不是替代人的设计决策,而是通过AI智能体接管CAD软件中的草图绘制、特征创建、尺寸修改等高频操作,让工程师从繁琐的GUI交互中解放出来。在SolidWorks这类主流CAD平台上,这类AI助手的落地依赖环境稳定、需求描述清晰和参数化建模规范。通过将外径、孔距等关键尺寸定义为全局变量并用方程式驱动,可实现改一个数、模型自动更新的高效流程;同时,遇到“无法获得许可”等环境故障时,需要按服务状态、安全软件隔离、干净卸载的顺序排查。以WorkBuddy驱动So

weixin_28559803的博客 370

LNMP论坛搭建---(mysql,php,nginx源码编译)

nginx介绍: nginx是一款高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。因它的稳定性。丰富的功能集,示例配置文件和低系统资源的消耗而闻名。是一款轻量级的web服务器/反向代理服务器及电子邮件代理服务器,同时nginx也是一个非常优秀的邮件代理服务器。其特点为占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用ngin...

一颗红小豆 442

手把手教你用STM32F103C8T6驱动HUB75 LED点阵屏(附74HC595级联代码)

本文详细介绍了如何使用STM32F103C8T6开发板驱动HUB75接口的LED点阵屏,包括硬件连接、74HC595级联代码、时序控制及灰度显示实现。通过实战案例展示动态文字显示和性能优化技巧,帮助开发者快速掌握LED点阵屏驱动技术。

weixin_42623010的博客 342

源码编译构建lnmp架构(Linux + Nginx + MySQL + PHP)实现论坛的搭建

lnmp: 1.mysql的源码编译 安装包: cmake-2.8.12.2-4.el6.x86_64.rpm mysql-boost-5.7.17.tar.gz 1.下载安装包并解压 #1.在官网上下载安装包 [root@server1 ~]# ls cmake-2.8.12.2-4.el6.x86_64.rpm mysql-boost-5.7.17.tar.gz #2.解压 [root...

lilygg的博客 691

戴尔笔记本装Ubuntu 20.04,别急着分区!先搞定这个BIOS设置(Intel RST避坑指南)

本文详细介绍了在戴尔笔记本上安装Ubuntu 20.04时遇到的Intel RST技术兼容性问题及解决方案。通过安全切换至AHCI模式,避免安装过程中找不到硬盘的常见问题,并提供双系统分区策略和安装后的优化建议,确保Ubuntu与Windows 10双系统稳定运行。

weixin_31315567的博客 272

Mac用户必看:Typora最新版永久激活+弹窗屏蔽保姆级教程(附崩溃解决方案)

本文为Mac用户提供了一份详尽的Typora最新版永久激活与弹窗屏蔽教程。通过修改关键JS文件,实现软件激活状态并彻底关闭成功提示弹窗。文章深入剖析了操作原理,并重点提供了解决由此引发的多文档崩溃问题的实用临时方案,同时客观讨论了该方法的局限性与潜在风险。

wine的专栏 2367

源码编译安装LNMP平台(使用Linux, Nginx,MySQL与PHP搭建论坛)

编译安装NGINX 安装依赖包 yum -y install pcre-devel zlib-devel gcc gcc-c++ make 新建用户 组便于管理(nginx 服务程序默认 以 nobody 身份运行,建议为其创建专门的用户账户,以便更准确的控制访问权限) useradd -M -s /sbin/nologin nginx #-M(不创建主目录) -s(不允许登录) 编译安装Nginx cd /opt/ 准备好的 tar包解压 到 /opt/ 目录 tar z...

Liangheng32的博客 3573

探索Vortex开源GPGPU:RISC-V SIMT架构(4-1),Execute SFU(1)

本文详细分析了Vortex RISC-V内核6级流水线中Execute阶段的SFU(特殊功能单元)模块。重点介绍了SFU的数据流结构,包含dispatch_unit、pe_switch、csr_unit、wctl_unit和gather_unit五个子模块。文章深入解析了warp控制指令wspawn和tmc的实现机制:wspawn用于激活指定数量的warp并设置新PC值,tmc则用于控制线程掩码和warp状态。通过C代码和汇编指令的对照分析,阐明了这些指令在并行计算中的关键作用,包括线程激活、状态切换和执行

weixin_55313207的博客 1363

源码编译构建LNMP架构(Linux + Nginx + MySQL + PHP)实现论坛的搭建

概述: 1.lnmp架构 LNMP架构:Linux系统下Nginx+MySQL+PHP,是一组搭建动态网站的开源软件架构,本身是各自独立的软件服务,放在一起使用拥有很高的兼容性,共同组成了一个强大的WEB应用程序平台。 (1)Linux:是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。 (2)Ng...

luxunlx123的博客 635

最新小旋风蜘蛛池X6.21解密版+绕过授权带教程

介绍: 1.站群管理:用你的域名在这里添加网站 2.站点优化:站点互链,内容优化 2.系统设置:开启蜘蛛池 3.采集管理(可开启自动采集) 4.缓存设置:推荐开启tkd缓存 其他的用户根据自己的实际情况后台进行配置,通常以下: 1.后台首页(这里显示系统的大致概况) 2.系统设置:蜘蛛池的基本设置(访问开关、跳转、统计等等) 3.站群管理: 1.网站管理(用你的域名在这里添加网站) 2.模型管理(可构建不同类型站点:电影、文章、论坛等等) 3.TKDB调用模板(即:title、keywords、descri

百度SEO程序下载 2937

R语言caret拟合模型:train函数构建xgBoost Dart模型、模型调优、自定义设置trainControl函数和tuneLength参数

R语言caret拟合模型:train函数构建xgBoost Dart模型、模型调优、自定义设置trainControl函数和tuneLength参数

statistics+insight+vista+power 530

LNMP架构

一、了解LNMP架构 LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。 (1)Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。 (2)Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。 (3)Mysql...

qq_42711214的博客 4358

Swin Transformer注意力计算复杂度为何比全局注意力少那么多?

本文对比分析了Vision Transformer(ViT)和Swin Transformer的计算复杂度。ViT采用全局注意力机制,计算复杂度为4[hwc^2]+2[(hw)^2C],当图像尺寸较大时计算量显著增加。而Swin Transformer采用窗口注意力机制,将图像划分为M×M的窗口(如7×7),计算复杂度降为4[hwc^2]+2[(hw)(M*M)*C]。以224×224图像为例,Swin Transformer的计算量比ViT减少约900倍,大幅节省了计算资源。文章通过矩阵乘法运算详细推导了

人工智能研究所的博客 62

源码编译安装 LNMP服务器环境配置(linux+nginx+mysql+php)+Discuz论坛的搭建

一:Mysql安装 解压mysql软件包,源码编译前安装cmake 下载编译过程中需要的依赖包 首先保证磁盘的存储空间有20G,源码解压完成后会占用10G,内存1024M 时间有点长,编译完成后会在/usr/local/lnmp/ 有一个文件夹 /mysql/cd mysql-5.7.17/ 查看占用空间 ...

gc034319的博客 456

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

LNMP的平台搭建及源码编译

mysql的源码编译 [root@server6 ~]# ls cmake-2.8.12.2-4.el6.x86_64.rpm mysql-boost-5.7.17.tar.gz [root@server6 ~]# tar zxf mysql-boost-5.7.17.tar.gz [root@server6 ~]# ls cmake-2.8.12.2-4.el6.x86_64.rpm ...

Logbook的博客 1128

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: LNMP架构之Mysql源码编译
下一篇: nginx+tomcat+memcached
weixin_42731856
博客等级 码龄8年 22粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值