Linux中搭建LAMP平台及论坛服务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中搭建LAMP平台及论坛服务相关的知识,希望对你有一定的参考价值。

Linux搭建LAMP

什么是LAMP

什么是LAMP?
一种成熟的动态企业网站服务模式
Apache在最前端,负责接收HTTP访问请求

实验环境准备

  • 已经配置好yum仓库//没有搭建的看上一篇博客
  • 配好IP地址,能够与物理机ping通
  • 关闭防火墙,SELiunx
  • 能够使用Xshell远程登录linux

LAMP安装与应用

安装LAMP平台组件

[[email protected] svr7 ~] yum  -y  install  httpd  mariadb-server  mariadb  php  php-mysql

[[email protected] svr7 ~] yum  list  httpd  mariadb-server  mariadb  php  php-mysql

启用LAMP网站平台

开启httpd mariadb服务 设置开机自启

[[email protected] svr7 ~] systemctl  restart  httpd  mariadb   //启动服务
[[email protected] svr7 ~] systemctl  enable  httpd  mariadb   //设置开机自启

Created symlink from / etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

关闭防火墙服务

[[email protected] svr7 ~] systemctl  stop  firewalld   //立即停止防火墙
[[email protected] svr7 ~] systemctl  disable  firewalld   //以后开机不再启动防火墙

关闭SELinux保护机制

[[email protected] svr7 ~] setenforce  0 //立即切换为宽松模式
[[email protected] svr7 ~] getenforce //确认结果
Permissive        //disabled也可以
[[email protected] svr7 ~] vim  / etc/selinux/config //以后开机不再强制生效
SELINUX=permissive //宽松模式

测试LAMP网站平台

测试php网页解析

编写网页 /var/www/html/xx.php

[[email protected] ~] vim / var/www/html/xx.php
<?php
phpinfo();
?>

使用linux访问http://127.0.0.1/xx.php 是否会出现php环境信息

测试php访问数据库

编写网页 /var/www/html/oo.php
在web服务器的网页目录下新建另一个测试网页oo.php 其中本机的mariadb数据库服务未做配置,管理员账号为root,密码为空

[[email protected] ~] vim  / var/www/html/oo.php
<?php
$link=mysql_connect(‘localhost‘,‘root‘,‘‘);
if($link) echo "Success !!";       //成功则显示 Success !!
else echo "Failure !!";           //失败则显示 Failure !!
 mysql_close();                   //关闭数据库连接
?>

访问http://127.0.0.1/oo.php 可以看到数据库连接的反馈信息,正常结果显示为success

web网站基础配置

更改网站根目录

[[email protected] ~] mkdir  -p  / var/www/webroot   //创建网站根目录

修改httpd服务配置
将文件中的两个 /var/www/html 修改为 /var/www/webroot

[[email protected] ~] vim  / etc/httpd/conf/httpd.conf
.. ..
DocumentRoot  / var/www/webroot
<Directory  / var/www/webroot>

重启httpd服务 更新配置

[[email protected] ~] systemctl  restart  httpd

部署自定义网页文件

新建网站首页index.html

[[email protected] ~] vim  / var/www/webroot/index.html
<a  href="https://blog.51cto.com/14309999">blog.51cto</ a>

<a href="插入超链接 输入完整的网址">连接名</a>

测试网页效果

本机访问 http://127.0.0.1

配置虚拟主机

修改 /etc/hosts 文件

[[email protected] ~] vim  /e tc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.7 xx.cn  oo.cn

测试访问结果:
使用ping命令检测到两个域名的访问,确保可连通且对应到正确的IP地址

[[email protected] ~] ping xx.cn
[[email protected] ~] ping  oo.cn

配置httpd服务 实现两个不同的网站

为两个网站分别准备网页目录、测试网页index.html

[[email protected] ~] mkdir  / var/www/web1
[[email protected] ~] vim  / var/www/web1/index.html
Hello  Linux

[[email protected] ~] mkdir  / var/www/web2
[[email protected] ~] vim  / var/www/web2/index.html
Hello  PHP

添加新的Web配置,支持两个虚拟Web主机,分别指向不同的网页目录

[[email protected] ~] vim  / etc/httpd/conf.d/vhosts.conf 
<VirtualHost  *:80>
    ServerName  xx.cn
    DocumentRoot  / var/www/web1
</VirtualHost>
<VirtualHost  *:80>
    ServerName  oo.cn
    DocumentRoot  / var/www/web2
</VirtualHost>

语法检查

[email protected] ~] httpd  -t
....
Syntax OK

重启httpd服务:

[[email protected] ~] systemctl  restart  httpd

从浏览器分别访问两个虚拟Web主机,对比页面结果

部署论坛代码

部署Discuz论坛代码

提前下载好Discuz!论坛的代码包文件,比如 Discuz_X3.4_SC_UTF8.zip,通过Xshell工具将此文件上传到服务器的 /root/ 目录下,并在服务器上确认

[[email protected] ~] ls  -lh  /root/Discuz_X3.4_SC_UTF8.zip 
-rw-r--r--. 1 root root 11M 12月 20 15:01 /root/Discuz_X3.4_SC_UTF8.zip

解压此文件到临时目录tdir

[[email protected] svr7 ~] unzip  /root/Discuz_X3.4_SC_UTF8.zip  -d  tdir
.. ..
[[email protected] svr7 ~] ls  tdir/  //检查解压结果
readme  upload  utility

将论坛代码部署为 /var/www/bbs/,作为此站点的网页目录

[email protected] ~] cp  -rf  tdir/upload/  /var/www/bbs

[[email protected] ~] ls  /var/www/bbs     //检查部署结果
admin.php        data         m           source
api              favicon.ico  member.php  static
api.php          forum.php    misc.php    template
archiver         group.php    plugin.php  uc_client
config           home.php     portal.php  uc_server
connect.php      index.php    robots.txt
crossdomain.xml  install      search.php

添加虚拟主机 http://bbs.xxoo.cn/

调整/etc/hosts主机映射

[[email protected] ~] vim  /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.7  xx.cn  oo.cn  bbs.xxoo.cn

修改 httpd 服务配置,为 bbs.xxoo.cn 添加配置

[email protected] ~] vim  / etc/httpd/conf.d/vhosts.conf
.. ..
<VirtualHost  *:80>
    ServerName  bbs.xxoo.cn
    DocumentRoot  /var/www/bbs
</VirtualHost>

安装Discuz!论坛

访问安装程序

在 Firefox 浏览器访问 http://bbs.xxoo.cn/install/ ,确保可看到论坛安装页面,单击“我同意”按钮

根据网页提示完成 Discuz! 论坛系统安装

检查安装环境
单击底部“我同意”按钮,进入检查安装环境页面。此页面的最底部会显示“请将以上红叉部分修正再试”,无法继续,可能是目录权限问题

解决显示红叉方法

[[email protected] svr7 ~] cd  / var/www/bbs/    //进入论坛代码目录
[[email protected] svr7 bbs] chown  -R  apache  config/  data/  uc_server/  uc_client/ 
                                //修改相关子目录归属
[[email protected] svr7 bbs] ls  -ld  config/  data/  uc_server/  uc_client/   //确认结果
drwxr-xr-x.  2 apache root  90 12月 20 15:04 config/
drwxr-xr-x. 12 apache root 202 12月 20 15:04 data/
drwxr-xr-x.  7 apache root 106 12月 20 15:04 uc_client/
drwxr-xr-x. 14 apache root 256 12月 20 15:04 uc_server/

选择安装方式

接下来的设置运行环境接受默认的“全新安装”即可

设置数据库连接

然后会进入到数据库设置页面,根据页面提示正确填写好连接参数

完成安装

等待安装程序写入数据库信息,完成相关安装操作,成功后页面右下角会出现提示

总结

  • 如果在访问php文件或者搭建论坛的时候输入网址显示Testing123....的话
    解决方法如下:

    [[email protected] ~] vim /etc/httpd/conf.d/vhosts.conf 
    [[email protected] ~] mv /etc/httpd/conf.d/vhosts.conf /root/
    [[email protected] ~] systemctl restart httpd
    [[email protected] ~] firefox http://127.0.0.1
    [[email protected] ~] mv /root/vhosts.conf /etc/httpd/conf.d/
    [[email protected] ~] systemctl restart httpd
    [[email protected] ~] firefox http://bbs.xxoo.cn
  • 虚拟机中linux无法ping通物理机的常见原因
    IP地址不在同一网段
    虚拟机IP地址与VMNAT 8网段不一致
    没有关闭物理机和linux的防火墙

待续....

以上是关于Linux中搭建LAMP平台及论坛服务的主要内容,如果未能解决你的问题,请参考以下文章

Centos 7搭建LNMP架构及部署Discuz论坛

Linux基于LAMP架构搭建个人论坛网站

使用Lamp构架搭建论坛

初建LAMP架构搭建论坛

使用LAMP架构 搭建一个网站平台(论坛)

Linux中详细搭建lamp架构