lamp平台搭建论坛网站(Discuz论坛)
1、 安装Apache
1) 安装apr
[root@www lamp]# yum install zlib-devel gcc gcc-c++ openssl-devel pcre-devel -y
[root@www lamp]# tar -jxf apr-1.4.6.tar.bz2
[root@www lamp]# cd apr-1.4.6
[root@www apr-1.4.6]# ./configure --prefix=/usr/local/apr
[root@www apr-1.4.6]# make && make install
2) 安装apr-util
[root@www lamp]# tar -jxf apr-util-1.5.1.tar.bz2
[root@www lamp]# cd apr-util-1.5.1
[root@www apr-util-1.5.1]# ./configure --prefix=/usr/local/apr-util —with-apr=/usr/local/apr/
[root@www apr-util-1.5.1]#make && make install
3) 安装httpd并启动Apache
[root@www lamp]# tar -zxf httpd-2.4.3.tar.gz
[root@www lamp]# cd httpd-2.4.3
[root@www httpd-2.4.3]#./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-module=so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-cache --enable-file-cache --enable-mem-cache --enable-disk-cache --enable-static-support --enable-static-ab --disable-userdir --with-mpm=prefork --enable-nonportable-atomics --disable-ipv6 --with-sendfile
[root@www httpd-2.4.3]# make && make install
[root@www local]#/usr/local/apache/bin/apachectl -k start
[root@www local]# lsof -i:80
释义:
--enable-module=so 启用模块
--enable-defalte=shared 传输时启用压缩支持
--enable-expires=shared 支持HTTP控制
--enable-rewrite=shared 支持URL重写
--enable-cache 支持缓存
--enable-file-cache 支持文件缓存
--enable-mem-cache 支持内存缓存
--enable-disk-cache 支持磁盘缓存
--enable-static-support 支持静态链接(库文件),静态编译到Apache中会大大优化Apache的功能
--enable-static-ab 使用静态链接编译ab工具页面
--disable-userdir 禁止用户从自己的主目录中提供
--with-mpm=prefork 让Apache使用prefork模式运行
--enable-nonportable-atomics 支持原子操作
--disable-ipv6 禁用ipv6
--with-sendfile 零拷贝,节省系统开销
apachectl –k start “-k”测试配置文件是否有语法错误
4) 测试
Firefox---localhost---“It Works”
2、 安装MySQL
1)安装cmake(编译MySQL的工具_32位的系统)
如果是64位的系统,用yum直接安装cmake即可!!!
如果是32位的系统,如下操作来安装cmake:
cmake-3.5.2-Linux-i386.tar.gz 软件包,解压缩就能用
[root@www lamp]# tar -zxf cmake-3.5.2-Linux-i386.tar.gz -C /usr/local/cmake
修改环境变量,让root可以直接使用cmake命令
[root@www lamp]# vim ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/cmake/cmake-3.5.2-Linux-i386/bin
[root@www lamp]# source ~/.bash_profile
[root@www lamp]# which cmake
/usr/local/cmake/bin/cmake
注:如果在其他终端无法使用该命令,重启系统即可
2) 安装MySQL
脚本如下:
#!/bin/bash
yum remove mariadb-server mariadb mysql-server mysql mysql-devel -y && yum install gcc gcc-c++ ncurses-devel libtool openssl-devel && useradd -s /sbin/nologin -r mysql && mkdir -pv /usr/local/mysql/data && tar zxf mysql-5.5.29.tar.gz && cd mysql-5.5.29 && cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data/ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DWITH_INNODBBASE_STORAGE_ENGINE=1 \
-DENABLE_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_EMBEDED_SERVER=0 && make && make install && cp support-files/my-innodb-heavy-4G.cnf /etc/my.cnf && cp support-files/mysql.server /etc/init.d/mysqlsource && chmod 755 /etc/init.d/mysqlsource && chown mysql.mysql /usr/local/mysql/ -R && sh scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ && ln -s /usr/local/mysql/bin/* /usr/bin/ && ln -s /usr/local/mysql/lib/* /usr/lib/ && ln -s /usr/local/mysql/libexec/* /usr/local/libexec && ln -s /usr/local/mysql/share/man/man1/* /usr/share/man/man1 && ln -s /usr/local/mysql/share/man/man8/* /usr/share/man/man8
启动MySQL
[root@localhost lamp_software]# /etc/init.d/mysqlsource start
Starting MySQL............. [确定]
[root@localhost lamp_software]# lsof -i:3306
如果mysql无法启动,查看其错误日志文件,如下:
[root@www mysql]# tailf /usr/local/mysql/data/localhost.localdomain.err
[ERROR] Can't start server : Bind on unix socket: Permission denied 这样的字样
该错误是由于本机MySQL客户端与服务器端通信使用的是mysql.sock文件,如果mysql不能往该文件中写入,就 会报错说权限拒绝!解决方案如下:
去配置文件查看mysql.sock文件存放路径,然后修改该目录权限
[root@www mysql]# ll -d /usr/local/mysql/
drwxr-xr-x 13 root mysql 4096 10月 18 13:21 /usr/local/mysql/
[root@www mysql]# chmod g+w /usr/local/mysql/
3) 测试安装,访问mysql
[root@localhost lamp]# mysql
3、 安装PHP —>严格按照下列的安装顺序安装各个软件包!
1)安装libiconv---实现字符编码的转换
[root@www lamp]# tar -zxf libiconv-1.14.tar.gz
[root@www lamp]# cd libiconv-1.14
[root@www libiconv-1.14]# ./configure && make && make install
2)安装libmcrypt ---mcrypt的链接库
[root@www lamp]# tar -zxf libmcrypt-2.5.8.tar.gz
[root@www lamp]# cd libmcrypt-2.5.8
[root@localhost libmcrypt-2.5.8]# ./configure && make && make install
***[root@www libmcrypt-2.5.8]# cd libltdl/ 用来加载运行库的库
[root@localhost libltdl]# ./configure --enable-ltdl-install && make && make install 安装
[root@www mhash-0.9.9.9]# ln -s /usr/local/bin/libmcrypt-config /usr/bin/
[root@www mhash-0.9.9.9]# ln -s /usr/local/lib/* /usr/lib 创建链接库文件
报错:
_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point
*** to the installed location Also, make sure you have run ldconfig if that
*** is required on your system
***
*** If you have an old version installed, it is best to remove it, although
*** you may also be able to get things to work by modifying LD_LIBRARY_PATH
***
configure: error: *** libmcrypt was not found
[root@Apache_Server mcrypt-2.6.8]#
解决方法:
****环境变量****
export LD_LIBRARY_PATH=/usr/local/lib:LD_LIBRARY_PATH
3)安装mhash
[root@www lamp]# tar -zxf mhash-0.9.9.9.tar.gz
[root@www lamp]# cd mhash-0.9.9.9
[root@www mhash-0.9.9.9]# ./configure && make && make install
4)安装mcrypt ---PHP支持加密的程序
[root@www lamp]# tar -zxf mcrypt-2.6.8.tar.gz
[root@www lamp]# cd mcrypt-2.6.8
[root@www mcrypt-2.6.8]# ./configure && make && make install
5)安装PHP
[root@www lamp]# yum install libxml2-devel libpng-devel bzip2-devel curl-devel libjpeg-devel freetype-devel net-snmp-devel -y
[root@www lamp]# tar -jxf php-5.4.11.tar.bz2
[root@www lamp]# cd php-5.4.11
[root@www php-5.4.11]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-iconv-dir=/usr/local/ --enable-fpm --with-fpm-user=apache --with-fpm-group=apache --with-pcre-regex --with-zlib --with-bz2 --enable-calendar --disable-phar --with-curl --enable-dba --with-libxml-dir --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-mhash --enable-mbstring --with-mcrypt --enable-pcntl --enable-xml --disable-rpath --enable-shmop --enable-sockets --enable-zip --enable-bcmath --with-snmp --disable-ipv6 --disable-rpath --disable-debug --with-apxs2=/usr/local/apache/bin/apxs
[root@Lamp php-5.4.11]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/local/lib/ 避免编译安装时找不到libmysqlclient.so.18库文件
[root@www php-5.4.11]# make ZEND_EXTRA_LIBS='-liconv' && make install
如果遇到报错如下:
/usr/src/lamp/php-5.4.11/sapi/cli/php: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
make[1]: *** [install-pear-installer] 错误 127
make: *** [install-pear] 错误 2
解决方法:
[root@www php-5.4.11]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/
上面的可能仍然无法解决问题,看下面:
因为之前增加了****环境变量**** LD_LIBRARY_PATH,故php的加载libmysqlclient.so.18时会从该变量指定的路径去找,所以执行下面的命令:
[root@Lamp php-5.4.11]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/local/lib/
6)配置PHP和Apache
拷贝php的配置文件
[root@www php-5.4.11]# cp php.ini-production /usr/local/php/etc/php.ini
修改Apache配置文件,设置php的索引页
[root@www php-5.4.11]# vim /usr/local/apache/conf/httpd.conf
AddType application/x-httpd-php .php
<IfModule dir_module>
DirectoryIndex index.php
</IfModule>
写一个PHP页面
[root@www php-5.4.11]# vim /usr/local/apache/htdocs/index.php
<?php phpinfo(); ?> //勿用“显示时间页面”演示,否则报错—PHP语法报错—不期望的”,”
修改Apache文档根目录下的索引页
[root@www php-5.4.11]# cd /usr/local/apache/htdocs/
[root@www htdocs]# mv index.html index.html.bak
重启Apache
[root@www php-5.4.11]# killall httpd
[root@www php-5.4.11]# /usr/local/apache/bin/apachectl -k start
7)测试:
地址栏—>localhost(回车)—>php首页
4、 将PHP制作成服务
PHP-5.4之前版本,使用fastCGI做服务
PHP-5.4以后版本,使用fpm做服务
php-fpm:FastCGI Process Manager(FastCGI进程管理器)
1)设置启动管理脚本
[root@www mysql]# cd /usr/src/lamp-software/php-5.4.11
[root@www php-5.4.11]# cd sapi/
[root@www sapi]# cd fpm/
[root@www fpm]# cp init.d.php-fpm /etc/init.d/php-fpm 启动管理脚本
[root@www fpm]# chmod 755 /etc/init.d/php-fpm
2)设置fpm配置文件
[root@www fpm]# cd /usr/local/php/etc/
[root@www etc]# cp php-fpm.conf.default php-fpm.conf
listen = 0.0.0.0:9000 监听端口
access.log = /tmp/fpm.access.log 访问日志
error_log = /tmp/fpm.err.log 错误日志
[root@www etc]# /etc/init.d/php-fpm start 启动PHP服务
5、安装Discuz论坛
1)解压缩软件包
[root@www lamp]# mkdir Discuz
[root@www lamp]# mv Discuz_7.2_FULL_SC_UTF8.zip Discuz
[root@www lamp]# cd Discuz
[root@www Discuz]# unzip Discuz_7.2_FULL_SC_UTF8.zip
[root@www Discuz]# mv upload/* /usr/local/apache/htdocs/
mv:是否覆盖"/usr/local/apache/htdocs/index.php"? y
2)安装配置
浏览器中输入http://localhost/install进行安装
报错:“对不起,请将 php.ini 中的 short_open_tag 设置为 On,否则无法继续安装”
[root@www Discuz]# vim /usr/local/php/etc/php.ini
short_open_tag = On //php语法有关。开启后可以使用<? =替代<? echo
重启Apache使修改生效
[root@www Discuz]# killall httpd
[root@www Discuz]# /usr/local/apache/bin/httpd
刷新页面---权限不可写,操作如下:
[root@www Discuz]# cd /usr/local/apache/htdocs/
[root@www htdocs]# chmod 777 -R * 线上注意:只改那些需要改的文件
再次刷新页面—下一步,下面是需要填写的项目:
数据库用户名:root
数据库密码:空
管理员密码:123456
重复密码:123456
其他项目默认值即可
下一步,改善计划---跳过---完成
lamp平台搭建论坛网站(Discuz论坛)的更多相关文章
- 用wamp5和ZendOptimizer搭建环境运行Discuz论坛
用wamp5和ZendOptimizer搭建环境运行Discuz论坛 用wamp5和ZendOptimizer搭建环境运行Discuz论坛 一: 环境: 1:Windows操作系统(Linu ...
- LAMP平台搭建菜鸟入门级实验
LAMP平台搭建(菜鸟入门级) mysql 安装: (1)二进制安装 二进制安装 ,执行解压配置即可.无须执行三布安装. (2)源码编译安装 安装准备工作: (1)查看系统配置:#uname -a/ ...
- 基于DigitalOcean+LAMP+WordPress搭建个人网站
1. 注册DigitalOcean并新建主机 为了搭建个人网站首先需要一个可以在公网范围访问的主机,可以选用国内如阿里云.国外如DigitalOcean的各种云主机提供商,这里选用DigitalOce ...
- 部署LAMP环境搭建一个网站论坛平台
修改主机名 Hostname openstack-001 Hostname Login 修改本地域名解析 Vi /etc/hosts 最后一行添加 192.168.1.56 openstack-001 ...
- LAMP平台搭建详解
准备工作 安装编译工具 # yum -y install gcc # yum -y install gcc-c++ 如果系统之前已经安装有rpm包的mysql和apache,那么可以: #servic ...
- LAMP环境搭建实现网站动静分离[转]
目录: 1.环境概述 2.动静分离拓扑图 3.各服务器功能规划 4.各服务器基础环境配置 5.httpd安装配置 6.php安装配置及启用opcache加速功能 7.mysql安装配置 8.wordp ...
- PHP LAMP环境搭建及网站配置流程(完整版)
心血来潮想做一个自己的博客网站,写一些文章做技术分享,平时遇到的一些问题的解决办法都记录下来,网站搭建成功,那么第一篇博客自然就是整个网站的搭建以及域名的注册.备案.解析流程,总共分为以下几步: 1. ...
- 【LAMP】搭建Web网站过程中的记录【Ubuntu18.04+Apache2.4+PHP7.2+MySQL5.7】
全文使用的环境如题,主机使用的是腾讯云主机. 内容应该会是linux和apache这些所有部分都有一点,因为是遇见一个问题就记录一个. 配置LAMP环境 这部分可以参考这篇文章:https://www ...
- 论坛数据转换discuz论坛?
http://www.bbstobbs.com/thread-397-1-1.html
随机推荐
- jQuery Validate Ajax 验证
jQuery Validate Ajax 验证 <script type="text/javascript"> $(function() { $('#formCityL ...
- TinyAdmin前端展现框架
一直在苦苦寻找一个合适的前端框架,少说也看了几十个. ext太重.并且有内存泄露,在IE下就是个悲剧. dhtmlx,速度比較好,开源是GPL不适合企业应用,商业的要钱,倒也不贵万把块钱,可是样式比較 ...
- LA 4329(树状数组)
算法竞赛入门经典 p197 题目大意: 一条大街上住着n个乒乓球爱好者.常常比赛切磋技术.每一个人都有一个不同的技能值a[i].每场比赛须要3个人:两名选手,一名裁判.他们有个奇怪的约定,裁判必须住在 ...
- Python游戏server开发日记(一)目标
到了新的环境.老大让我有空研究下一代server技术,作为一个长期任务. 新的server想达到的目标: 1.分布式系统,对象(Entity)之间的关系类似于Actor模型. 2.逻辑服务,是单进程. ...
- LeetCode——Valid Number
Validate if a given string is numeric. Some examples: "0" => true " 0.1 " =&g ...
- linux下获取按键响应事件【转】
本文转载自:https://my.oschina.net/u/157503/blog/91548 1.问题 通过一个死循环将读取键盘对应的设备文件将触发键盘事件在屏幕上打印出来,按esc退出程序 代码 ...
- 一个简单的JS日期挂历脚本
分享一个JS脚本做的日期挂历,在需要的时候可以引入你的程序. 如需单独引入这个脚本,请将它保存在一个文件中然后引入它:如这样 <script type="text/javascript ...
- [POJ 1745] Divisbility
[题目链接] http://poj.org/problem?id=1745 [算法] DP [代码] #include <algorithm> #include <bitset> ...
- 线性回归(最小二乘法、批量梯度下降法、随机梯度下降法、局部加权线性回归) C++
We turn next to the task of finding a weight vector w which minimizes the chosen function E(w). Beca ...
- Java插入中文到数据库中文变成问号解决
转自:https://blog.csdn.net/hellosweet1/article/details/81673152 之所以会出现乱码,就是编码方式不一致导致的 我们应该首先确定 ...