LAMP以及各组件的编译安装
LAMP以及各组件的编译安装
一、LAMP
1. LAMP概述
LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。
2. 各组件的主要作用
组件 | 作用 |
---|---|
(平台)Linux | 作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台) 。 |
(前台)Apache | 作为LAMP架构的前端,是一款功能强大,稳定性好的Web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容。 |
(后台)MySQL | 作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息。 |
(中间连接)PHP/Perl/Python | 作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通Web服务器和数据库系统以协同工作,并提供Web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可以嵌入到HTML中,尤其适合于Web应用开发。 |
3. 平台环境的安装顺序
在构建LAMP平台时,各组件的安装顺序依次为Linux、Apache、MySQL、PHP。其中Apache和MySQL的安装并没有严格的顺序,PHP环境的安装一般放到最后安装,负责沟通 Web 服务器和数据库系统以协同工作。
二、编译安装apache httpd
1. 关闭防火墙,将安装apache所需软件包传到/opt目录下
- 关闭防火墙以及SELinux
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
setenforce: SELinux is disabled
- 将软件包传到/opt目录中
软件包有:
httpd-2.4.29.tar.gz
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
注:apr组件包用于支持Apache上层应用跨平台,提供底层接口库,能有效的降低并发连接数、降低进程和减少访问堵塞。
[root@localhost opt]# ls
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 rh
2. 安装环境依赖包
[root@localhost opt]# yum install -y \
> gcc \ #c语言的编译器
> gcc-c++ \ #c++的编译器
> make \ #源代码编译器(源代码转换成二进制文件)
> pcre \ #pcre是一个perl函数库,包括perl兼容的正则表达式库
> pcre-devel \ #perl的接口开发包
> expat-devel \ #用于支持网站解析html、xml文件
> perl #perl语言编译器
3. 配置软件模块
[root@localhost opt]# tar zxvf apr-1.6.2.tar.gz
[root@localhost opt]# tar zxvf apr-util-1.6.0.tar.gz
[root@localhost opt]# tar jxvf httpd-2.4.29.tar.bz2
[root@localhost opt]# ls
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2
[root@localhost opt]# mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util
[root@localhost opt]# ./configure \
> --prefix=/usr/local/httpd \ #指定httpd服务程序的安装路径
> --enable-so \ #启用动态加载模块支持,使httpd具备进一步扩展功能的能力
> --enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
> --enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面
> --enable-cgi #启用cgi(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力
4. 编译及安装
- make:
这一步就是编译,大多数的源代码包都经过这一步进行编译(当然有些perl或Python编写的软件需要调用perl或python来进行编译)。如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。make 的作用是开始进行源代码编译,以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能,比如 make install 一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。
make 是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。一般情况下,他所使用的 Makefile 控制代码,由 configure 这个设置脚本根据给定的参数和系统环境生成。 - make install:
这条命令来进行安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)
[root@localhost httpd-2.4.29]# make -j 2 #开2核同时进行编译
[root@localhost httpd-2.4.29]# make install
5. 优化配置文件路径、添加到PATH
- 优化配置文件路径,建立配置文件的软链接到/etc目录下,以方便我们对配置文件的增删改查。
- 把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别,因此我们需要建立软链接到PATH路径,这样就可以随时调用httpd
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
6. 添加httpd系统服务
- 方法一:
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.4.29]# chmod +x /etc/init.d/httpd
#!/bin/bash #在第一行前插入新行,添加此三行内容
# chkconfig: 35 85 21 #35级别自动运行 第85个启动 第21个关闭
# description: Apache is a World Wide Web server #添加描述信息
[root@localhost httpd-2.4.29]# chkconfig --add httpd
[root@localhost httpd-2.4.29]# service httpd start #也可使用systemctl start httpd来启动服务
- 方法二:
[root@localhost httpd-2.4.29]# vim /lib/systemd/system/httpd.service
[Unit]
Description=The Apache HTTP Server #描述
After=network.target #描述服务类别
[Service]
Type=forking #后台运行方式
PIDFile=/usr/local/httpd/logs/httpd.pid #PID文件位置
ExecStart=/usr/local/bin/apachectl $OPTIONS #启动服务
ExecReload=/bin/kill -HUP $MAINPID #根据PID重载配置
[Install]
WantedBy=multi-user.target
[root@localhost httpd-2.4.29]# systemctl start httpd.service
7. 修改httpd服务配置文件
[root@localhost httpd-2.4.29]# vim /etc/httpd.conf
Listen 192.168.122.10:80 #位于第52行,设置监听ip和端口号
ServerName www.test.com:80 #位于第199行,取消注释,设置服务器主机名和端口号
DocumentRoot "/usr/local/httpd/htdocs" #位于第223行,设置默认首页存放路径
DirectoryIndex index.html #位于第257行,设置默认首页文件名
[root@localhost httpd-2.4.29]# httpd -t #检查配置文件的配置项是否有误
Syntax OK
[root@localhost httpd-2.4.29]# systemctl restart httpd.service
注1:当没有指定ServerName时,服务器会尝试对IP地址进行反向查询来推断主机名。如果在ServerName中没有指定端口号,服务器会使用接受请求的那个端口。为了加强可靠性和可预测性,您应该使用ServerName显式的指定一个主机名和端口号。
注2:通过yum安装的httpd,默认的首页存放路径为“var/www/html”,而通过编译安装的httpd,默认的首页存放路径为“/usr/local/httpd/htdocs”
8. 浏览器访问验证
[root@localhost httpd-2.4.29]# netstat -anpt | grep 80 #查看80端口的网络连接情况
tcp 0 0 192.168.122.10:80 0.0.0.0:* LISTEN 38818/httpd
tcp 0 0 192.168.122.10:55632 117.18.237.29:80 ESTABLISHED 39764/firefox
tcp 0 0 192.168.122.10:50258 223.119.50.222:80 ESTABLISHED 39764/firefox
tcp 0 0 192.168.122.10:42574 203.208.40.66:80 ESTABLISHED 39764/firefox
tcp 0 0 192.168.122.10:42546 203.208.40.66:80 ESTABLISHED 39764/firefox
[root@localhost httpd-2.4.29]# echo "192.168.122.10 www.test.com" >> /etc/hosts
三、编译安装mysqld 服务
1. 将安装mysql所需软件包传到/opt目录下
软件包有:
mysql-boost-5.7.20.tar.gz
或
mysql-5.7.17.tar.gz
boost_1_59_0.tar.gz #支持c++的运行库
[root@localhost opt]# ls
apr-1.6.2.tar.gz httpd-2.4.29 mysql-boost-5.7.20.tar.gz
apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 rh
boost_1_59_0.tar.gz mysql-5.7.17.tar.gz
注:安装mysql-boost包和安装mysql包+boost包都是可以的,下文以安装mysql包+boost包举例说明安装步骤。
2. 安装环境依赖包
[root@localhost opt]# yum install -y \
> gcc \
> gcc-c++ \
> ncurses \ #字符终端下图形互动功能的动态库
> ncurses-devel \ #ncurses开发包
> bison \ #语法分析器
> cmake #mysql需要用cmake编译安装
3. 配置软件模块
[root@localhost opt]# tar zxvf mysql-5.7.17.tar.gz
[root@localhost opt]# tar zxvf boost_1_59_0.tar.gz
[root@localhost opt]# mv boost_1_59_0 /usr/local/boost #重命名
[root@localhost opt]# cd /opt/mysql-5.7.17/
[root@localhost mysql-5.7.17]# cmake \
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql的安装路径
> -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
> -DSYSCONFDIR=/etc \ #指定配置文件的存储路径
> -DSYSTEMD_PID_DIR=/usr/local/mysql \ #指定进程文件的存储路径
> -DDEFAULT_CHARSET=utf8 \ #指定默认使用的字符集编码,如 utf8
> -DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则
> -DWITH_EXTRA_CHARSETS=all \ #指定支持其他字符集编码
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装INNOBASE存储引擎
> -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安装ARCHIVE存储引擎
> -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安装BLACKHOLE存储引擎
> -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ #安装FEDERATED存储引擎
> -DMYSQL_DATADIR=/usr/local/mysql/data \ #指定数据库文件的存储路径
> -DWITH_BOOST=/usr/local/boost \ #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
> -DWITH_SYSTEMD=1 #生成便于systemctl管理的文件
存储引擎选项:
MYISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。
静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1
可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)
注:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧
4. 编译及安装
[root@localhost mysql-5.7.17]# make -j 2 && make install
5. 创建mysql用户
[root@localhost mysql-5.7.17]# useradd -M -s /sbin/nologin mysql
6. 修改mysql配置文件
[root@localhost mysql-5.7.17]# cat /etc/my.cnf
[client]
#客户端设置
port = 3306
socket = /usr/local/mysql/mysql.sock
[mysql]
#服务端设置
port = 3306
socket = /usr/local/mysql/mysql.sock
auto-rehash
#开启自动补全功能
[mysqld]
#服务全局设置
user = mysql
#设置管理用户
basedir=/usr/local/mysql
#指定数据库的安装目录
datadir=/usr/local/mysql/data
#指定数据库文件的存储路径
port = 3306
#指定端口
character-set-server=utf8
#设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid
#指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock
#指定数据库连接文件
bind-address = 0.0.0.0
#设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve
#禁用DNS解析
max_connections=2048
#设置mysql的最大连接数
default-storage-engine=INNODB
#指定默认存储引擎
max_allowed_packet=16M
#设置数据库接收的数据包大小的最大值
server-id = 1
#指定服务ID号
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
sql_mode常用值 | 说明 |
---|---|
NO_ENGINE_SUBSTITUTION | 如果需要的存储引擎被禁用或未编译,那么抛出错误。不设置此值时,用默认的存储引擎替代,并抛出一个异常 |
STRICT_TRANS_TABLES | 在该模式下,如果一个值不能插入到一个事务表中,则中断当前的操作,对非事务表不做限制 |
NO_AUTO_CREATE_USER | 禁止GRANT创建密码为空的用户 |
NO_AUTO_VALUE_ON_ZERO | mysql中的自增长列可以从0开始。默认情况下自增长列是从1开始的,如果你插入值为0的数据会报错 |
NO_ZERO_IN_DATE | 不允许日期和月份为零 |
NO_ZERO_DATE | mysql数据库不允许插入零日期,插入零日期会抛出错误而不是警告 |
ERROR_FOR_DIVISION_BY_ZERO | 在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。默认情况下数据被零除时MySQL返回NULL |
PIPES_AS_CONCAT | 将"||"视为字符串的连接操作符而非或运算符,这和Oracle数据库是一样的,也和字符串的拼接函数Concat相类似 |
ANSI_QUOTES | 启用ANSI_QUOTES后,不能用双引号来引用字符串,因为它被解释为识别符 |
7. 更改mysql安装目录和配置文件的属主属组
[root@localhost mysql-5.7.17]# chown -R mysql:mysql /usr/local/mysql/
[root@localhost mysql-5.7.17]# chown mysql:mysql /etc/my.cnf
8. 设置路径环境变量
[root@localhost mysql-5.7.17]# echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
[root@localhost mysql-5.7.17]# source /etc/profile
9. 初始化数据库
[root@localhost mysql-5.7.17]# cd /usr/local/mysql/bin/
[root@localhost bin]# ./mysqld \
> --initialize-insecure \ #生成初始化密码为空
> --user=mysql \ #指定管理用户
> --basedir=/usr/local/mysql \ #指定数据库的安装目录
> --datadir=/usr/local/mysql/data #指定数据库文件的存储路径
10. 添加mysqld系统服务
[root@localhost bin]# cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
#用于sysctmctl服务管理
[root@localhost bin]# systemctl start mysqld.service
#启动mysql服务
可使用操作 | 说明 |
---|---|
systemctl daemon-reload | 刷新识别 |
systemctl start mysqld.service | 开启服务 |
systemctl enable mysqld | 开机自启动 |
netstat -anpt | grep 3306 |
11. 修改mysql的登录密码
[root@localhost bin]# mysqladmin -u root -p password "abc123"
#给root账号设置密码为abc123,提示输入的是原始密码(为空)
Enter password:
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
12. 授权远程登录
[root@localhost bin]# mysql -u root -p
#使用root账户登录mysql
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.17 Source distribution
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> grant all privileges on *.* to 'root'@'%' identified by 'abc123';
#授予root用户可以在所有终端远程登录,使用的密码是abc123,并对所有数据库和所有表有操作权限
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> show databases;
#查看当前已有的数据库
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
四、编译安装PHP解析环境
1. 将安装PHP所需软件包传到/opt目录下
软件包为php-7.1.10.tar.bz2
[root@localhost opt]# ls
apr-1.6.2.tar.gz httpd-2.4.29 mysql-5.7.17.tar.gz rh
apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 mysql-boost-5.7.20.tar.gz
boost_1_59_0.tar.gz mysql-5.7.17 php-7.1.10.tar.bz2
2. 安装GD库和GD库关联程序,用来处理和生成图片
[root@localhost opt]# 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
3. 配置软件模块
[root@localhost opt]# tar jxvf php-7.1.10.tar.bz2
[root@localhost opt]# cd php-7.1.10/
[root@localhost php-7.1.10]# ./configure \
> --prefix=/usr/local/php7 \ #指定将 PHP 程序的安装路径
> --with-apxs2=/usr/local/httpd/bin/apxs \ #指定Apache httpd服务提供的apxs 模块支持程序的文件位置
> --with-mysql-sock=/usr/local/mysql/mysql.sock \ #指定mysql 数据库连接文件的存储路径
> --with-config-file-path=/usr/local/php7 \ #设置 PHP 的配置文件 php.ini 将要存放的位置
> --with-mysqli \ #添加 MySQL 扩展支持,mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
> --with-zlib \ #支持zlib功能,提供数据压缩
> --with-curl \ #开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
> --with-gd \ #激活gd 库的支持
> --with-jpeg-dir \ #激活jpeg 的支持
> --with-png-dir \ #激活png 的支持
> --with-freetype-dir \
> --with-openssl \
> --enable-mbstring \ #启用多字节字符串功能,以便支持中文等代码
> --enable-xml \ #开启扩展性标记语言模块
> --enable-session \ #会话
> --enable-ftp \ #文本传输协议
> --enable-pdo \ #函数库
> --enable-tokenizer \ #令牌解释器
> --enable-zip #ZIP压缩格式
4. 编译及安装
[root@localhost php-7.1.10]# make -j 2 && make install
5. 复制模版文件作为PHP 的主配置文件,并进行修改
[root@localhost php-7.1.10]# cp /opt/php-7.1.10/php.ini-development /usr/local/php7/php.ini
#在测试环境时使用php.ini-development文件,而在生产环境时使用php.ini-production文件
[root@localhost php-7.1.10]# vim /usr/local/php7/php.ini
mysqli.default_socket = /usr/local/mysql/mysql.sock #位于1170行
date.timezone = Asia/Shanghai #位于939行,取消注释,修改时区
6. 优化,把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别
[root@localhost php-7.1.10]# ln -s /usr/local/php7/bin/* /usr/local/bin
[root@localhost php-7.1.10]# php -m
#查看PHP 加载了哪些模块
[PHP Modules]
Core
ctype
curl
date
dom
fileinfo
filter
ftp
gd
hash
iconv
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib
[Zend Modules]
7. 修改httpd 服务的配置文件,让apache支持PHP
[root@localhost php-7.1.10]# vim /etc/httpd.conf
#393行插入以下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#255行修改首页文件名设置
DirectoryIndex index.html index.php
#检查支持php7的模块是否存在
LoadModule php7_module modules/libphp7.so
8. 验证PHP 测试页
[root@localhost php-7.1.10]# rm -rf /usr/local/httpd/htdocs/index.html
[root@localhost php-7.1.10]# vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
[root@localhost php-7.1.10]# systemctl restart httpd.service
五、安装论坛
1. 创建数据库,并进行授权
[root@localhost htdocs]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.17 Source distribution
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> CREATE DATABASE bbs;
#创建一个bbs数据库
Query OK, 1 row affected (0.00 sec)
mysql> GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';
#把bbs数据库里面的所有表的权限授予给bbsuser,并设置密码为admin123
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
#刷新数据库
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
#查看当前已有的数据库
+--------------------+
| Database |
+--------------------+
| information_schema |
| bbs |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
2. 解压论坛压缩包
[root@localhost opt]# ls
#压缩包为Discuz_X3.4_SC_UTF8.zip
apr-1.6.2.tar.gz httpd-2.4.29 php-7.1.10
apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 php-7.1.10.tar.bz2
boost_1_59_0.tar.gz mysql-5.7.17 rh
dis mysql-5.7.17.tar.gz
Discuz_X3.4_SC_UTF8.zip mysql-boost-5.7.20.tar.gz
[root@localhost opt]# unzip /opt/Discuz_X3.4_SC_UTF8.zip -d /opt/dis
#指定目录解压论坛压缩包
[root@localhost opt]# cd /opt/dis/dir_SC_UTF8/
[root@localhost dir_SC_UTF8]# cp -r upload/ /usr/local/httpd/htdocs/bbs
#上传站点更新包
访问bbs页面
安装bbs
发现./config、./data、./uc_client、./uc_server/data目录无操作权限
3. 更改论坛目录的属主
[root@localhost dir_SC_UTF8]# ps aux | grep "httpd"
#查看发现httpd进程的用户名是daemon
root 18494 0.0 0.3 271580 8096 ? Ss 20:03 0:00 /usr/local/httpd/bin/httpd -k start
daemon 18495 0.0 0.2 562628 6040 ? Sl 20:03 0:00 /usr/local/httpd/bin/httpd -k start
daemon 18496 0.0 0.2 562628 6040 ? Sl 20:03 0:00 /usr/local/httpd/bin/httpd -k start
daemon 18497 0.0 0.4 698492 9148 ? Sl 20:03 0:00 /usr/local/httpd/bin/httpd -k start
root 18874 0.0 0.0 112676 980 pts/2 R+ 20:32 0:00 grep --color=auto httpd
[root@localhost dir_SC_UTF8]# cd /usr/local/httpd/htdocs/bbs
[root@localhost bbs]# chown -R daemon ./config
[root@localhost bbs]# chown -R daemon ./data
[root@localhost bbs]# chown -R daemon ./uc_client
[root@localhost bbs]# chown -R daemon ./uc_server/data
4. 浏览器安装访问
注:本地架设时数据库服务器就用localhost,如果不是在本机上就要填写IP地址和端口号
5. 论坛后台管理
论坛后台管理员页面位于/bbs/admin.php
LAMP以及各组件的编译安装的更多相关文章
- Centos6.5下使用LAMP搭建discuz论坛(编译安装 PS :自学中 写的不好请见谅)
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.27.tar.gz 下载Apache软件包 wget http://downloads.my ...
- LAMP架构—源码编译安装 (爱情受过伤,为爱跳过鸭绿江)
LAMP架构--源码编译安装 1.LAMP架构概述 2.编译安装Apache httpd 服务 3.编译安装mysql 服务 4.编译安装PHP 解析服务 5.利用LAMP搭建论坛 1.LAMP架构概 ...
- 编译安装lamp环境
httpd 2.4.9 + mysql-5.5.33 + php-5.4.29编译安装过程: 准备好以下安装包: mysql-5.5.33-linux2.6-x86_64.tar.gz apr-uti ...
- 在centos6中编译安装httpd-2.4/搭建LAMP
首先确保centos6安装平台安装一下环境: #yum groupinstall "Development Tools" "Server Platform Develo ...
- FastCGI模式编译安装LAMP+Xcache
PHP的工作模式:php在lamp环境下共有三种工作模式:CGI模式.apache模块.FastCGI模式.CGI模式下运行PHP,性能不是很好.(已淘汰)FastCGI的方式和apache模块的不同 ...
- 源码编译安装LAMP
LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境.LAMP是一个缩写词,具体包括Linux操作系统.Apache网站服务器 ...
- ubuntu10.04编译安装LAMP
ubuntu10.04编译安装LAMP以及简单wordpress的使用 : http://linuxme.blog.51cto.com/1850814/971631 一.源码安装LAMP 网上有一堆关 ...
- CentOS 6编译安装lamp,并分别安装event模块方式和FPM方式的PHP
任务目标: 编译安装LAMP 要求(1) 安装一个模块化的PHP 要求(2) 安装一个FPM的PHP 注意PHP需要最后一个安装,因为需要前两者的支持. 所以这里的安装次序为 1.httpd 2.Ma ...
- CentOS6.3 编译安装LAMP(1):准备工作
卸载yum或rpm安装的amp软件 #在编译安装lamp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove htt ...
随机推荐
- python 面向对象:封装---对象的属性可以是另一个类创建的对象
# 对象封装:对象的属性可以是另一个类创建的对象 # 案例需求: # 1.士兵许三多有一把AK47 # 2.士兵用枪射击标靶 # 3.枪能装填和发射子弹 class Gun: # 分析: # 枪的属性 ...
- js 关于 data.xuNum = xuNum++; 赋值写法 的探讨
1 .源码 let xuNum = 0; let data = []; data.xuNum = xuNum++; console.log(data.xuNum) 2.打印结果 // 0 3.原因 ...
- Spring cloud 框架 --- Eureka 心得
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 (1)接触了spring cloud 框架 ,首先要知道Eureka是什 ...
- Java手动创建Web项目
原文链接:https://www.toutiao.com/i6495693288043971086/ 为了便于理解Web项目结构,我们手动创建整个过程. 先启动Tomcat 下载Tomcat7.0 解 ...
- lua中的三目运算符
开头先说结论 1.简单版三目运算符(需要自我保证"b"不为"false") a and b or c 2.通用版三目运算符 (a and {b} or {c}) ...
- linux 安装 elasticsearch 步骤及问题解决方案
1.下载安装包并上传至服务器 2.解压至当前文件夹 tar -xzvf xxx.tar.gz 3.配置JDK 如果服务器上已经配置了JDK,则在解压后的elasticsearch 文件夹的bin 目录 ...
- 《剑指offer》面试题14- II. 剪绳子 II
问题描述 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m.n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] .请问 k[0]*k[1]* ...
- 《剑指offer》面试题38. 字符串的排列
问题描述 输入一个字符串,打印出该字符串中字符的所有排列. 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素. 示例: 输入:s = "abc" 输出:["abc ...
- Scratch 3 矢量编辑器——“临摹”一只哆啦A梦
利用Scratch来制作一些小作品,常常需要到网上去找图片,而网上下载的图片一般都是位图,往往存在两个问题: 图片不够清晰,当图片放大后会出现"马赛克"现象: 图片中存在不必要的背 ...
- Hadoop 代码实现文件上传
本项目主要实现Windows下利用代码实现Hadoop中文件上传至HDFS 实现上传文本文件中单词个数的计数 1.项目结构 2.相关代码 CopyFromLocalFile 1 package com ...