阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu系统下LNMP环境的搭建

216次阅读
没有评论

共计 5872 个字符,预计需要花费 15 分钟才能阅读完成。

LNMP 代表的就是:Linux 系统下 Nginx+MySQL+PHP 这种网站服务器架构。
Linux 是一类 Unix 计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、CentOS、Ubuntu、Fedora、gentoo 等。
Nginx 是一款轻量级的 Web 服务器 / 反向代理服务器及电子邮件(IMAP/POP3)代理服务器
Mysql 是一个小型关系型数据库管理系统。
PHP 是一种在服务器端执行的嵌入 HTML 文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
 
(一)首先需要安装一个 Ubuntu 系统,我是在虚拟机上安装的,过程非常简单
安装好后就可以在系统上装 nginx、mysql、php 了。
我们先要配置系统的网卡,让他可以上网,并设置他的 DNS
root@linuxidc:~# vim /etc/network/interfaces
root@linuxidc:~# vim /etc/resolv.conf

然后重启网卡,Ubuntu 和 centos 重启网卡的命令并不相同
root@linuxidc:~# ifdown eth0 && ifup eth0

查看一下网卡信息确认是否已经配置好
 
(二)
然后进行下一步,安装 nginx,可以到官网下载,找到稳定版
打开 /etc/apt/source.list 文件,将下面两行命令粘贴到文件的末尾,不要粘错了!!
deb http://nginx.org/packages/ubuntu/ codename nginx
 
deb-src http://nginx.org/packages/ubuntu/ codename nginx

然后将 codename 改成 trusty,不同版本的系统替换的单词不同,到官网查找即可
下载秘钥
root@linuxidc:~# wget http://nginx.org/keys/nginx_signing.key

下载后执行下面的这条命令
root@linuxidc:~# apt-key add nginx_signing.key

最后更新源,安装 nginx,启动 nginx
root@linuxidc:~# apt-get update 
root@linuxidc:~# apt-get install nginx
root@linuxidc:~# service nginx start

我们看一下 80 端口起来没有
root@linuxidc:~# netstat -ntpl | grep 80

设置一下防火墙允许 80 端口通过,ubuntu 和 centos 命令也不同
root@linuxidc:~# ufw allow 80

 用浏览器登录本机 ip 地址,就可以看到 nginx 的欢迎页面了
(三)
nginx 装好后就可以安装 mysql 了
先建立 mysql 相关的用户、组、文件夹,将新建的目录递归设置属主 mysql 和属组 mysql
root@linuxidc:~# groupadd mysql
root@linuxidc:~# useradd -g mysql mysql -s /bin/false
root@linuxidc:~# mkdir -p /Disk/data/mysql/var
root@linuxidc:~# chown -R mysql:mysql /Disk/data/mysql/var

解压 mysql 包。
root@linuxidc:~# tar zxvf mysql-5.5.35.tar.gz

安装一些程序包,否则后面会报错
root@linuxidc:~# apt-get install g++
root@linuxidc:~# apt-get install libaio1
root@linuxidc:~# apt-get install libncurses5-dev
root@linuxidc:~# apt-get install libncurses5
root@linuxidc:~# wget http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz
root@linuxidc:~# tar zxvf bison-2.5.1.tar.gz 
root@linuxidc:~# cd bison-2.5.1/
root@linuxidc:~/cd bison-2.5.1# ./configure

在配置过程中会出错,是因为没有安装 m4
root@linuxidc:~/cd bison-2.5.1# apt-get install m4
Ubuntu 中没有 make 命令,安装一下。在 Ubuntu 中用 apt-get 命令
root@linuxidc:~/cd bison-2.5.1# apt-get install make
root@linuxidc:~/cd bison-2.5.1# make && make install

然后进行 mysql 的安装
root@linuxidc:~# cd mysql-5.5.35/
root@linuxidc:~/mysql-5.5.35# cmake . -DCMAKE_INSTALL_PREFIX=/Disk/local/mysql-DMYSQL_DATADIR=/Disk/data/mysql/var -DSYSCONFDIR=/etc

你会看到 Ubuntu 上 cmake 命令也没有
root@linuxidc:~/mysql-5.5.35# apt-get install cmake

再 cmake 一下,如果还报错,就 rm CMakeCache.txt
成功后编译安装
root@linuxidc:~/mysql-5.5.35# make && make install

mysql 安装好后就可以进行配置了,一定要在安装目录下进行
root@linuxidc:~# cd /Disk/local/mysql
root@linuxidc:~/Disk/local/mysql# cp ./support-files/my-huge.cnf /etc/my.cnf

修改配置文件,做好备份
root@linuxidc:~/Disk/local/mysql# vim /etc/my.cnf
root@linuxidc:~/Disk/local/mysql# mv /etc/my.cnf /etc/my.cnf.bak
root@linuxidc:~/Disk/local/mysql# vim /etc/my.cnf.bak
root@linuxidc:~/Disk/local/mysql# vim /etc/my.cnf

将以下配置写到配置文件中
[client]
  port            = 3306
  socket          = /tmp/mysql.sock
  [mysqld]
  datadir = /Disk/data/mysql/var
  port            = 3306
  socket          = /tmp/mysql.sock
  skip-external-locking
  key_buffer_size = 256M
  max_allowed_packet = 20M
  sort_buffer_size = 2M
  read_buffer_size = 2M
  read_rnd_buffer_size = 8M
  myisam_sort_buffer_size = 64M
  #server-id      = 1
  #xzy
  thread_stack            = 192K
  thread_cache_size      = 64
  myisam-recover        = BACKUP
  max_connections        = 5000
  query_cache_limit      = 2M
  query_cache_size        = 256M
  #错误日志记录
  log_error = /Disk/log/mysql/error.log
  #慢查询日志
  #slow-query-log        = /Disk/log/mysql/mysql-slow.log
  #long_query_time = 5
  #log-queries-not-using-indexes
  #二进制文件日志
  log_bin                = /Disk/log/mysql/mysql-bin.log
  binlog_format    = row
  expire_logs_days        = 10
  max_binlog_size        = 100M
  #不区分大小写
  lower_case_table_names=1
  [mysqldump]
  quick
  max_allowed_packet = 16M
  [mysql]
  no-auto-rehash
  [myisamchk]
  key_buffer_size = 256M
  sort_buffer_size = 256M
  read_buffer = 2M
  write_buffer = 2M
  [mysqlhotcopy]
  interactive-timeout

新建日志文件,并设置属主和属组
root@linuxidc:~/Disk/local/mysql#kdir -p /Disk/log/mysql
root@linuxidc:~/Disk/local/mysql# chown -R mysql:mysql /Disk/log/mysql

初始化数据库
root@linuxidc:~/Disk/local/mysql# /Disk/local/mysql/scripts/mysql_install_db –user=mysql

把 mysql 加入系统启动,他会告诉你找不到 /etc/rc.d/init.d/mysqld 文件
root@linuxidc:~/Disk/local/mysql# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

此时进入当前目录下的 support-files/ 目录
root@linuxidc:~/Disk/local/mysql/support-files# ./mysql.server restart

这样就将 mysql 启动起来了
mysql 使用 3306 端口,将 3306 端口加入防火墙
root@linuxidc:~# ufw allow 3306

查看防火墙状态
root@linuxidc:~# ufw status

最后就是给 MySQL 数据库里的 root 账号一个密码,这个 MySQL 的 root 不是指操作系统的 root,而是指这个数据库管理系统的 root
root@linuxidc:~/Disk/local/mysql/bin# ./mysqladmin -u root password ‘666666’

接下来我们修改一下 /etc/profile 文件将这句话加到文件末尾,把 mysql 服务加入系统环境变量
export PATH=$PATH:/Disk/local/mysql/bin

使配置立即生效 source /etc/profile  这样我们就能 Tab 出 mysql 命令了
我们用账号密码登录下 mysql
root@linuxidc:~# mysql -u root -p

再输入密码就能登录进行数据库的操作了
我们用 windows 下的 Natcivat 连接服务器 Mysql,出现 1130 错误提示,是因为远程服务器无权限登录 MySQL
对 root 用户授权并设置密码
mysql> grant all on *.* to ‘root’@’%’ identified by ‘888888’;

(四)安装 php,php 的安装比较简单
root@linuxidc:~# apt-get install php5
root@linuxidc:~# apt-get install php5-fpm
root@linuxidc:~# apt-get install php5-curl
root@linuxidc:~# apt-get install libmcrypt4 php5-mcrypt
root@linuxidc:~# apt-get install php5-gd
root@linuxidc:~# apt-get install php5-xmlrpc
root@linuxidc:~# apt-get install libapache2-mod-php5
root@linuxidc:~# apt-get install php5-mysql
root@linuxidc:~# /etc/init.d/php5-fpm start

然后将 PHP 和 nginx 进行整合,修改默认配置文件 , 将下面的代码取消注释
12345678  root@ubuntu:/etc/nginx/conf.d# vim default.conf
 location ~ \.php$ {
          root          html;
          fastcgi_pass  127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
          include        fastcgi_params;
  }

如果更改了端口,记得设置防火墙!!!修改完配置文件后,记得重启 nginx 服务!!!
检查一下 9000 端口是否开启,如果没有的话
修改 /etc/php5/fpm/pool.d/www,conf,将文件中的 Listen 改为 9000
在网站根目录 /usr/share/nginx/html 下新建一个 index.php 文件,写入 <?php phpinfo();?>
记得重启 php5-fpm 服务!!!
在浏览器地址中输入 http:// 本机地址 /index.php 就能访问到 php 页面了
 
(五)现在讲 lnmp 环境搭建好了,接下来安装 discuz 论坛
将 Discuz_X3.3_SC_UTF8.zip 压缩包解压到网站根目录下 /usr/share/nginx/html
安装 unzip 命令 -d 指定解压目录
会得到三个文件夹 upload、readme、utility
对网站根目录设置权限
root@linuxidc:~# chmod -R 777 /usr/share/nginx/html/

用浏览器访问 http:// 主机地址 /upload/install/index.php
进入 discuz 安装首页进行安装,填写主机名,数据库密码,管理员密码
安装成功后用管理员登录就可以了

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-04/142610.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计5872字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中