lap+mysql+discuz部署

本文档详细介绍了如何在三个不同节点上部署LAMP环境(Linux, Apache, PHP, MySQL),并重点讲解了在192.168.2.112和192.168.2.111上部署Discuz论坛,以及在192.168.2.118上设置MySQL主库。首先确保所有环境的时间同步和主机名设置,然后依次安装Apache、PHP和MySQL。接着,在每个节点上配置Apache和PHP,创建Discuz的index.php文件,并设置MySQL数据库权限。最后,使用rsync同步Discuz目录,实现两台服务器上的Discuz部署,并确保所有服务器都能连接到118服务器上的MySQL。" 117047684,8237840,samtools工具详解:bam与sam操作,"['生物信息学', '数据处理', '序列分析']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 环境

192.168.2.112 lap+discuz
192.168.2.111 lap+discuz
192.168.2.118 mysql主

  • 依赖环境

yum install gcc gcc-c++ glibc glibc-devel cmake ncurses-devel ncurses libxml2 libxml2-devel apr apr-util -y

  • 时间保持一致

yum -y install ntp
ntpdate time.nist.gov

  • 设置主机名

vim /etc/hosts
127.0.0.1 node1
192.168.2.112 node1
192.168.2.111 node2

  • apache部署
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.34.tar.gz
tar -zxvf httpd-2.2.34.tar.gz
cd httpd-2.2.34
./configure  --prefix=/usr/local/apache2/  --enable-so  --enable-rewrite
make
make install
useradd apache

配置apache启动用户

User apache
Group apache

apache和php整合

sed -i '/AddType .*.gz .tgz$/a\AddType application\/x-httpd-php .php' /usr/local/apache2/conf/httpd.conf
sed -i 's/DirectoryIndex index.html/DirectoryIndex index.php index.html index.htm/' /usr/local/apache2/conf/httpd.conf

启动apache服务

/usr/local/apache2/bin/apachectl start

浏览器访问
这里写图片描述

  • mysql的yum安装
yum -y install mysql-clients mysql mysql-server
  • php部署
wget http://mirrors.sohu.com/php/php-5.3.28.tar.bz2
tar -xjf php-5.3.28.tar.bz2
cd php-5.3.28
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc   --with-apxs2=/usr/local/apache2/bin/apxs  --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
make
make install

在网页发布目录/usr/local/apache2/htdocs下创建index.php

<?php
        phpinfo();
?>

浏览器访问
这里写图片描述

至此lamp部署完成
在111服也通过上述方法部署lamp,也可以通过脚本一键部署

  • discuz部署

可以进官网http://www.discuz.net/thread-3796882-1-1.html下载安装包,

wget http://download.comsenz.com/DiscuzX/3.3/Discuz_X3.3_SC_UTF8.zip
unzip Discuz_X3.3_SC_UTF8.zip
cp upload/* /usr/local/apache2/htdocs/ -R

设置相关权限

cd /usr/local/apache2/htdocs
chown -R apache:apache .

设置118服mysql数据库权限

grant all on *.* to 'root'@'192.168.2.112' identified by '123456';
grant all on *.* to 'root'@'192.168.2.111' identified by '123456';

浏览器访问discuz
1)
这里写图片描述
2)
这里写图片描述
(主要权限)
3)
这里写图片描述
4)
这里写图片描述
5)
这里写图片描述
6)浏览器访问discuz首页
这里写图片描述

111服的discuz配置
直接把112配置好的discuz发布目录远程发送给111的发布目录下

scp -r htdocs/* root@192.168.2.111:/usr/local/apache2/htdocs/

在更新一些文件的时候,可以选择用rsync,只同步修改的部分

至此,112服和111服的lap+discus部署完成
两者同时连接118mysql服务器

备注:
1)在授权给其他主机登陆mysql的时候,执行完grant后,可以在发布目录下建立文件dbtest.php,添加下面内容

<?php
$link=mysql_connect("192.168.2.118","root","123456");
if(!$link) echo "FAILD!!the password is error";
else echo "OK!success!!";
?>

然后网址输入http://192.168.2.112/dbtest.php就可以看是否连接成功

2)discuz的用户表名为pre_common_member

select * from pre_common_member;
### 配置 Nginx 与 LAMP 堆栈集成 #### 安装必要的软件包 为了使Nginx能够与LAMP堆栈协同工作,需要安装Apache、MySQL以及PHP。通常情况下,这些组件可以通过Linux发行版自带的包管理器来安装。 对于基于Debian或Ubuntu系统的服务器而言: ```bash sudo apt update && sudo apt install nginx apache2 mysql-y ``` 而对于CentOS或其他Red Hat衍生版本,则可以执行如下命令: ```bash sudo yum install epel-release http://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum-config-manager --enable remi-php74 sudo yum install nginx mariadb-server php php-common php-opcache php-gd php-curl php-xmlrpc php-mbstring php-json php-fpm ``` #### 修改文件权限 由于MySQL程序是由`mysql`用户管理的,因此应当调整数据库目录的所有权设置以匹配该用户的预期需求[^2]。 ```bash sudo chown -R mysql:mysql /var/lib/mysql/ ``` 这一步骤确保了只有授权过的进程才能访问敏感数据存储区域。 #### 创建测试页面验证PHP功能正常 创建一个新的PHP脚本来检验Web服务端口上的解释引擎是否按计划启动并运行良好。此操作同样适用于确认其他语言绑定的有效性,比如通过编辑位于HTTP文档根路径下的简单`.php`文件实现[^1]。 ```bash echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/info.php ``` 此时应该能够在浏览器地址栏输入类似`http://your_server_ip_address_or_domain_name/info.php`这样的URL,并看到有关当前环境配置详情的信息页。 #### 调整PHP-FPM配置适应Nginx请求转发机制 为了让Nginx正确处理来自客户端发出的动态内容请求并将它们传递给FastCGI处理器(即PHP),需对默认站点定义做适当更改。打开相应位置处保存着虚拟主机设定模板的文本档进行编辑;具体取决于操作系统类型和个人偏好习惯而定。 针对大多数现代Linux发行板来说,默认情况下会在此处找到待修改的目标文件之一——`/etc/nginx/sites-available/default`: ```nginx server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; # 或者指向实际部署的应用程序所在的位置 index index.html index.htm index.php; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.x-fpm.sock; # 根据实际情况替换为对应的socket文件名 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } ``` 完成上述改动之后记得重启Nginx以便让新参数生效: ```bash sudo systemctl restart nginx.service ``` 另外还需保证PHP FastCGI Process Manager (FPM)处于活动状态并且已加载完毕所必需的服务模块: ```bash sudo systemctl enable php7.x-fpm sudo systemctl start php7.x-fpm ``` 以上步骤完成后便实现了基本意义上的Nginx同LAMP架构之间的融合互通效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值