因为不好找下载集成服务器工具,而且他们自己又打包了一份 php 之类的程序,本身系统就已经有 php 还有数据库什么的了再搞一份受不了,最后选择了手动配置……

这是一个在 Archlinux 上手动从服务器程序开始部署 DiscuzX2.5 的全过程。

有的配置文件比较长,编辑的时候善用搜索 = =。

环境准备

  • 系统:Linux 3.16.4-1-ARCH
  • 服务器与相关软件:
    • nginx 1.6.2-1
    • php 5.6.1-1
    • php-fpm 5.6.1-1
    • mariadb 10.0.14-2
    • discuz x2.5

Discuz 是在这里获取的:http://www.discuz.net/thread-2744369-1-1.html,我选择的是 X2.5 UTF8 简体中文版

其它软件直接全部 pacman -S nginx php php-fpm mariadb 安装即可。

配置 Nginx

配置文件:/etc/nginx/nginx.conf

http {
include mime.types;
default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; server {
listen 80;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; root /usr/share/nginx/html;
location / {
index index.html index.htm index.php;
#add_header Cache-Control privete;
} location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi.conf;
}

配置 PHP

配置文件: /etc/php/php.ini

open_basedir 中加上 nginx 服务器的根目录( /usr/share/nginx/html/ )。即告诉 php 程序要去解析那个目录下的 php 文件。

open_basedir = /usr/share/nginx/html/:/srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/

启用以下扩展。去掉那行开头的分号即可。

extension=curl.so
extension=gd.so
extension=gettext.so
extension=mysql.so
extension=mysqli.so
extension=pdo_mysql.so

配置 php-fpm

配置文件:/etc/php/php-fpm.conf

listen 的值与之前 nginx 配置中的 fastcgi_pass 值保持一致。

listen = /run/php-fpm/php-fpm.sock

配置数据库

设置数据库 root 密码

mysql_secure_installation

启动服务器

注意这些命令都需要 root 权限。

让服务器开机运行。

systemctl enable nginx.service
systemctl enable mysqld.service
systemctl enable php-fpm.service

启动服务器

systemctl start nginx.service
systemctl start mysqld.service
systemctl start php-fpm.service

安装 Discuz

将下载下来的 Discuz 程序包解压,将其中的 upload 文件夹复制到 nginx 服务器的目录下( /usr/share/nginx/html/ )。

打开浏览器,打开http://localhost/upload/install/

如果世界和平,你的配置一切正常的话,你应该会看到 Dizcuz 的使用协议页面,点击同意之后进入安装向导,向导会自动检测环境,如果你遇到了有 目录文件 没有权限或者找不到目录的话,使用 chmod 设置一下nginx 目录的文件权限。

chmod -R a+rwx /usr/share/nginx/html/

接下来一步创建数据库。大部分设置顾名思义即可。

数据库用户名:root
数据库密码:之前配置数据库的时候创建的root密码

下一步进行安装,世界和平。

之后会询问你是否开通 Discuz 云平台,直接点右边小字暂不开通。之后自动进入论坛。

接下来就随便你玩了。

Archlinux 上 Nginx + PHP + Mariadb + DiscuzX2.5 安装小记的更多相关文章

  1. centos7 部署 nginx+tomcat+MariaDB 环境并安装安全狗,使用natapp隧道

    jdk安装: -openjdk 参考:https://blog.csdn.net/dhr201499/article/details/81626466 tomcat安装: 使用版本:8.5.37 参考 ...

  2. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  3. CentOS 7 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php)

    原文 CentOS 7 下安装 LEMP 服务(nginx.MariaDB/MySQL 和 php) LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作 ...

  4. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Openssl 1.1.0e + Mariadb 10.1.22 + Nginx 1.12.0 + PHP 7.1.4 + Laravel 5.4 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  5. Centos7 编译安装 Nginx PHP Mariadb Memcache扩展 ZendOpcache扩展 (实测 笔记 Centos 7.0 + Mariadb 10.1.9 + Nginx 1.9.9 + PHP 5.5.30)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1503-01.iso 安装步骤: 1.准备 1.1 ...

  6. CentOS 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php)

    转载自:https://linux.cn/article-4314-1.html 编译自:http://xmodulo.com/install-lemp-stack-centos.html 作者: D ...

  7. Centos7 编译安装 Nginx、MariaDB、PHP

    前言 本文主要大致介绍CentOS 7下编译安装Nginx.MariaDB.PHP.面向有Linux基础且爱好钻研的朋友.技艺不精,疏漏再所难免,还望指正. 环境简介: 系统: CentOS 7,最小 ...

  8. 树莓派安装配置Nginx+PHP7+MariaDB

    原文地址:http://blog.sina.com.cn/s/blog_150f554f50102yhra.html 一.安装 Nginx 和 PHP7 1.安装Nginx sudo apt inst ...

  9. [转载]CentOS 下安装LEMP服务(Nginx、MariaDB/MySQL和PHP)

    LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作用.正如其名称所暗示的, LEMP 包是由 Linux.nginx.MariaDB/MySQL 和 P ...

随机推荐

  1. <fmt:formatDate>标签的输出格式:

    <fmt:formatDate>标签的输出格式:  d   月中的某一天.一位数的日期没有前导零.      dd   月中的某一天.一位数的日期有一个前导零.      ddd   周中 ...

  2. java 在linux环境下写入 syslog 问题研究

    1.Syslog 在Unix类操作系统上,syslog广泛应用于系统日志.syslog日志消息既可以记录在本地文件中,也可以通过网络发送到接收syslog的服务器.接收syslog的服务器可以对多个设 ...

  3. hive中rcfile格式(收藏文)

    首先声明,此文是属于纯粹收藏文,感觉讲的很不错. 本文介绍了Facebook公司数据分析系统中的RCFile存储结构,该结构集行存储和列存储的优点于一身,在MapReduce环境下的大规模数据分析中扮 ...

  4. hadoop环境搭建

    osubtu16.04(单机模式),存储空间25G,内存2G密码那啥(!!) 1:任务清单 参考书籍,(hadoop3权威指南) (环境(系统macos12,java18101 ,hadoop173, ...

  5. Qt窗口添加鼠标移动拖拽事件

    1. .h文件中添加 private:    QPoint dragPosition; 2. 在cpp文件中重写鼠标点击和拖拽函数 void ShapeWidget::mousePressEvent( ...

  6. Servlet学习五——流的分发

    在上一节中有提到,流的传输,可以考虑Stream,但如果需要同时分发流和其它信息,,就需要再考虑其它方式了. 在coding中,服务端查询结果都是以gson进行传输,当需要传输一个语音并且同时需要传输 ...

  7. asp.net Ajax和web services

    新建一个web服务 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...

  8. 介绍开源的.net通信框架NetworkComms框架之三 传递List

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  开源地 ...

  9. Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources解决

    解决方法 ruby -v rvm requirements brew install libyaml rvm pkg install openssl rvm install 2.3.1 --with- ...

  10. myeclipse 控制台打印空指针 ,黏贴控制台sql到plsql有结果集,异常处理

    信用公司框架,不够熟悉. 在完成嗲点登录后,写动态页面是遇到,了问题:myeclipse 控制台打印空指针 ,黏贴控制台sql到plsql有结果集,异常处理. 最后大神给看,在接口实现重写的方法里返回 ...