LNMP及论坛搭建

这篇具有很好参考价值的文章主要介绍了LNMP及论坛搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

安装Nginx服务

1.安装依赖包

2.创建运行用户、组(Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限)

3.编译安装Nginx

4.优化路径

5.添加 Nginx 系统服务

安装 MySQL 服务

1、安装Mysql环境依赖包

2、创建运行用户

3、编译安装

4、修改mysql 配置文件

5、更改mysql安装目录和配置文件的属主属组

6、设置路径环境变量

7、初始化数据库

8、添加mysqld系统服务

9、修改mysql 的登录密码

10、授权远程登录

 安装配置 PHP 解析环境

1、安装环境依赖包

2、编译安装

3、路径优化

4、调整PHP配置文件

5、启动php-fpm

6、配置 Nginx 支持 PHP 解析

7、验证PHP 测试页

8、验证数据库工作是否正常

部署 Discuz!社区论坛 Web 应用

fpm参数优化 

部署wordpress


安装Nginx服务

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

1.安装依赖包

#nginx的配置及运行需要pcre、zlib等软件包的支持,因此需要安装这些软件的开发包,以便提供相应的库和头文件。
yum -y install pcre-devel zlib-devel openssl-devel.x86_64  gcc-c++ make

2.创建运行用户、组(Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限)

useradd -M -s /sbin/nologin nginx

 3.编译安装Nginx

cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/
 
cd nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \							#指定nginx的安装路径
--user=nginx \										#指定用户名
--group=nginx \										#指定组名
--with-http_stub_status_module						#启用 http_stub_status_module 模块以支持状态统计
操作
 
cd nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
 
 
 
make -j 4 && make install
 

4.优化路径

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/		#让系统识别nginx的操作命令

5.添加 Nginx 系统服务

vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
 
chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service

安装 MySQL 服务

 1、安装Mysql环境依赖包

yum -y install \
ncurses \
ncurses-devel \
bison \
cmake

2、创建运行用户

useradd -M -s /sbin/nologin  mysql

3、编译安装

cd /opt
tar zxvf mysql-boost-5.7.20.tar.gz
 
cd /opt/mysql-5.7.20/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
 
make -j 4 && make install

4、修改mysql 配置文件

vim /etc/my.cnf
[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
 
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

5、更改mysql安装目录和配置文件的属主属组

chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf

6、设置路径环境变量

echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile	
source /etc/profile

7、初始化数据库

cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
 

8、添加mysqld系统服务

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld

9、修改mysql 的登录密码

mysqladmin -u root -p password "lcm1314"

10、授权远程登录

mysql -u root -p
grant all privileges on *.* to 'root'@'%' identified by 'lcm1314';
#授予root用户可以在所有终端远程登录,使用的密码是lcm1314,并对所有数据库和所有表有操作权限
show databases;			#查看当前已有的数据库

 安装配置 PHP 解析环境

1、安装环境依赖包

yum -y install gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

2、编译安装

cd /opt
tar jxvf php-7.1.10.tar.bz2
 
cd php-7.1.10
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip
 
make -j 4 && make install

3、路径优化

ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/

4、调整PHP配置文件

hp有三个配置文件: 
php.ini			主配置文件  
php-fpm.conf	进程服务配置文件 
www.conf		扩展配置文件
 
#调整主配置文件:
cp /opt/php-7.1.10/php.ini-development /usr/local/php/lib/php.ini	
vim /usr/local/php/lib/php.ini
--1170行--修改
mysqli.default_socket = /usr/local/mysql/mysql.sock
--939行--取消注释,修改
date.timezone = Asia/Shanghai
 
php -m 					#验证安装的模块
 
#调整进程服务配置文件:
cd /usr/local/php/etc/
cp  php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
--17行--去掉";"注释
pid = run/php-fpm.pid
 
#调整扩展配置文件:
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf

 5、启动php-fpm

/usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini
netstat -anpt | grep 9000
#PHP-FPM(FastCGI Process Manager:FastCGI 进程管理器)是一个 PHPFastCGI 管理器, 由于Nginx服务器不能处理动态页面,需要由 Nginx 把动态请求交给 php-fpm 进程进行解析。
 
cd /opt/php-7.1.10/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/php-fpm.service
systemctl restart php-fpm.service

6、配置 Nginx 支持 PHP 解析

vim /usr/local/nginx/conf/nginx.conf
--65行--取消注释,修改
location ~ \.php$ {
	root           html;
	fastcgi_pass   127.0.0.1:9000;
	fastcgi_index  index.php;
	fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;	#将 /scripts 修改为nginx的工作目录
   #fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;  #$document_root 代表当前请求在root指令中指定的值
	include        fastcgi_params;
}
 
systemctl restart nginx.service

7、验证PHP 测试页

vim /usr/local/nginx/html/index.php
<?php
phpinfo();
?>
 
浏览器访问
http://192.168.142.22/index.php

LNMP及论坛搭建,linux,nginx,mysql,php

  8、验证数据库工作是否正常

mysql -u root -p
CREATE DATABASE bbs;
GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'lcm1314';
GRANT all ON bbs.* TO 'bbsuser'@'localhost' IDENTIFIED BY 'lcm1314';
flush privileges;
 
vim /usr/local/nginx/html/index.php      		#替换原来的测试页内容
<?php
$link=mysqli_connect('192.168.142.22','bbsuser','lcm1314');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>
 
浏览器访问
http://192.168.142.22/index.php

部署 Discuz!社区论坛 Web 应用

cd /opt
unzip Discuz_X3.4_SC_UTF8.zip  -d /opt/dis
cd /opt/dis/dir_SC_UTF8/
cp -r upload/ /usr/local/nginx/html/bbs/
 
调整论坛目录的权限:
cd /usr/local/nginx/html/bbs/
chown -R nginx ./config/
chown -R nginx ./data/
chown -R nginx ./uc_client/
chown -R nginx ./uc_server/
或
chmod -R 777 ./config/
chmod -R 777 ./data/
chmod -R 777 ./uc_client/
chmod -R 777 ./uc_server/
 
论坛页面访问
http://192.168.142.22/bbs/install/index.php
----------------------------------------------------------------------------------------------------------
数据库服务器:localhost     ###本地架设就用localhost,如何不是在在本机上就要填写IP地址和端口号
数据库名字:bbs
数据库用户名:bbsuser
数据库密码:lcm1314
管理员账号:admin
管理员密码:lcm1314
----------------------------------------------------------------------------------------------------------
访问论坛页面:
http://192.168.142.22/bbs/index.php
http://192.168.142.22/bbs/admin.php

报错时,可能是由于Nginx的配置文件有问题

修改配置文件vim /usr/local/nginx/conf/nginx.conf


LNMP及论坛搭建,linux,nginx,mysql,php文章来源地址https://www.toymoban.com/news/detail-655108.html

fpm参数优化 

Nginx的PHP解析功能实现如果是交由FPM处理的,为了提高PHP的处理速度,可对FPM模块进行参数的调整
根据服务器的内存与服务负载,调整FPM模块参数
 
vim /usr/local/php/etc/php-fpm.conf 
pid = run/php-fpm.pid
 
vim /usr/local/php/etc/php-fpm.d/www.conf
--96行--
pm = dynamic				#fpm进程启动方式,动态的
--107行--
pm.max_children=20			#fpm进程启动的最大进程数
--112行--
pm.start_servers = 5		#动态方式下启动时默认开启的进程数,在最小和最大之间
--117行--
pm.min_spare_servers = 2	#动态方式下最小空闲进程数
--122行--
pm.max_spare_servers = 8	#动态方式下最大空闲进程数
 
 
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`			#重启php-fpm
netstat -anpt | grep 9000
ps -elf | grep php-fpm

部署wordpress

cd /opt
tar xf wordpress-4.9.4-zh_CN.tar.gz
cp -r wordpress /usr/local/nginx/html/
chown -R nginx wordpress/
 
 
 
创建数据库
mysql -u root -p
 
CREATE DATABASE bbs;
#创建一个数据库
GRANT all ON wordpress.* TO 'bbsuser'@'%' IDENTIFIED BY 'lcm1314';
GRANT all ON wordpress.* TO 'bbsuser'@'localhost' IDENTIFIED BY 'lcm1314';
flush privileges;
show databases;

访问:http://192.168.142.22/wordpress/index.php

到了这里,关于LNMP及论坛搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LNMP搭建及论坛搭建

    LNMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件, 能够提供动态Web站点服务及其应用开发环境。LNMP是一个缩写词,具体包括Linux操作系统、nginx网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。 L:(平台)Linux, 作为L

    2024年02月14日
    浏览(37)
  • LNMP及论坛搭建

    目录 安装Nginx服务 1.安装依赖包 2.创建运行用户、组(Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限) 3.编译安装Nginx 4.优化路径 5.添加 Nginx 系统服务 安装 MySQL 服务 1、安装Mysql环境依赖包 2、创建运行用户 3、编译安装

    2024年02月12日
    浏览(34)
  • 基于LNMP架构搭建Discuz论坛

    LNMP: L----linux系统,操作系统。 N-----nginx网站服务(前端),提供前端的静态页面服务。同时具有代理、转发的作用。(转发就是转发后端请求,转发PHP),nginx没有处理动态资源的功能,他有可以支持准发动态请求的模块。 M----mysql 关系型数据库,用来保存用户的账户和密码。

    2024年02月13日
    浏览(51)
  • LNMP架构之搭建Discuz论坛

    组成部分 功能 Linux 作为操作系统的基础,提供稳定的环境。 Nginx 作为反向代理服务器,处理客户端的请求并将它们转发给后端的应用服务器。 MySQL 作为关系型数据库管理系统,用于存储和管理数据。 PHP 用来编写服务器端的动态网页代码,与数据库和其他服务进行交互。

    2024年02月11日
    浏览(52)
  • LNMP搭建以及Discuz论坛部署

    目录 LNMP 编译安装 LNMP搭建  Nginx 服务 MySQL 服务 PHP 解析环境 部署 Discuz社区论坛 目前成熟的企业网站的应用模式之一,指的是一套协同工作的系统和相关软件,能提供静态页面服务和动态web服务 L linux系统 N nginx网站服务,前端。提供前端的静态页面服务。同时具有代理和转

    2024年02月14日
    浏览(59)
  • mac arm 通过brew搭建 php+nginx+mysql+xdebug

            备份配置文件 cp nginx.conf nginx.back.conf        修改nginx.conf 配置     出现这个表示成功 然后修改php.ini(通过brew list php 找到php的安装路径)的配置文件(加入这个) zend_extension=\\\"xdebug.so\\\" xdebug.remote_handler=\\\"dbgp\\\" xdebug.client_host=localhost xdebug.client_port=9003 xdebug.idekey=phpstor

    2024年02月13日
    浏览(74)
  • Linux安装配置nginx+php搭建以及在docker中配置

    1.nginx源码包编译环境和安装相应的依赖 1.1 安装编译环境 1.2 安装pcre库、zlib库和openssl库 pcre(Perl Compatible Regular Expressions)是一个Perl库,是一个用C语言编写的正则表达式的函数库,是轻量级的函数库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库 zlib是一

    2024年02月01日
    浏览(55)
  • macOS搭建PHP开发环境(brew安装nginx、mysql 和多版本php,并配置多个php同时运行的环境)

    由于homebrew主库中没有PHP7.2 之前的版本,并且7.2,7.3版本也被标记成过时版本;所以需要先挂在第三方的扩展,具体操作如下: php5.6 php7.3 php7.4 php8.2 默认新版8以上直接安装 sudo vim /usr/local/etc/php/5.6/php-fpm.conf  下的: 注意:5.6版本的配置文件路径和其他版本不一样 listen = 127

    2024年02月04日
    浏览(68)
  • Docker搭建LNMP环境实战(08):安装php-fpm

    在文件夹:/mnt/hgfs/dockers/test_site/www目录下创建文件:test.php,内容为: 在文件夹:/mnt/hgfs/dockers/test_site/compose下创建文件:test_site_php.yml,内容如下: 注意:此文件中网络的名称和nginx配置文件中网络的名称是相同的,都是:test_site_network 注意:最后一段为新加的修改 图1 f

    2024年04月13日
    浏览(44)
  • 安装Apache、MySQL、PHP、论坛实操

    (1)准备源码包 httpd-2.4.29.tar.gz apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz (2)关闭安全机制 systemctl stop firewalld //关闭防火墙 systemctl disable firewalld //防火墙开机不自启 setenforce 0 //关闭selinux (3)安装环境依赖包 依赖包解释: gcc C语言的编译器 gcc-c++ C++的编译器 make 源代码编译器(源代

    2024年02月09日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包