Ubuntu系统下lnmp环境的搭建

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。

Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debiancentosubuntufedoragentoo等。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器

Mysql是一个小型关系型数据库管理系统

PHP是一种在服务器端执行的嵌入HTML文档的脚本语言

这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

(一)首先需要安装一个Ubuntu系统,我是在虚拟机上安装的,过程非常简单

安装好后就可以在系统上装nginx、mysql、php了。

我们先要配置系统的网卡,让他可以上网,并设置他的DNS

[email protected]:~# vim /etc/network/interfaces
[email protected]:~# vim /etc/resolv.conf

然后重启网卡,Ubuntu和centos重启网卡的命令并不相同

[email protected]:~# 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,不同版本的系统替换的单词不同,到官网查找即可

下载秘钥

[email protected]:~# wget http://nginx.org/keys/nginx_signing.key

下载后执行下面的这条命令

[email protected]:~# apt-key add nginx_signing.key

最后更新源,安装nginx,启动nginx

[email protected]:~# apt-get update 
[email protected]:~# apt-get install nginx
[email protected]:~# service nginx start

我们看一下80端口起来没有

[email protected]:~# netstat -ntpl | grep 80

设置一下防火墙允许80端口通过,ubuntu和centos命令也不同

[email protected]:~# ufw allow 80

用浏览器登录本机ip地址,就可以看到nginx的欢迎页面了

(三)

nginx装好后就可以安装mysql了

先建立mysql相关的用户、组、文件夹,将新建的目录递归设置属主mysql和属组mysql

[email protected]:~# groupadd mysql
[email protected]:~# useradd -g mysql mysql -s /bin/false
[email protected]:~# mkdir -p /Disk/data/mysql/var
[email protected]:~# chown -R mysql:mysql /Disk/data/mysql/var

解压mysql包。

[email protected]:~# tar zxvf mysql-5.5.35.tar.gz

安装一些程序包,否则后面会报错

[email protected]:~# apt-get install g++
[email protected]:~# apt-get install libaio1
[email protected]:~# apt-get install libncurses5-dev
[email protected]:~# apt-get install libncurses5
[email protected]:~# wget http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz
[email protected]:~# tar zxvf bison-2.5.1.tar.gz 
[email protected]:~# cd bison-2.5.1/
[email protected]:~/cd bison-2.5.1# ./configure

在配置过程中会出错,是因为没有安装m4

[email protected]:~/cd bison-2.5.1# apt-get install m4
Ubuntu中没有make命令,安装一下。在Ubuntu中用apt-get命令
[email protected]:~/cd bison-2.5.1# apt-get install make
[email protected]:~/cd bison-2.5.1# make && make install

然后进行mysql的安装

[email protected]:~# cd mysql-5.5.35/
[email protected]:~/mysql-5.5.35# cmake . -DCMAKE_INSTALL_PREFIX=/Disk/local/mysql-DMYSQL_DATADIR=/Disk/data/mysql/var -DSYSCONFDIR=/etc

你会看到Ubuntu上cmake命令也没有

[email protected]:~/mysql-5.5.35# apt-get install cmake

再cmake一下,如果还报错,就rm CMakeCache.txt

成功后编译安装

[email protected]:~/mysql-5.5.35# make && make install

mysql安装好后就可以进行配置了,一定要在安装目录下进行

[email protected]:~# cd /Disk/local/mysql
[email protected]:~/Disk/local/mysql# cp ./support-files/my-huge.cnf /etc/my.cnf

修改配置文件,做好备份

[email protected]:~/Disk/local/mysql# vim /etc/my.cnf
[email protected]:~/Disk/local/mysql# mv /etc/my.cnf /etc/my.cnf.bak
[email protected]:~/Disk/local/mysql# vim /etc/my.cnf.bak
[email protected]:~/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

新建日志文件,并设置属主和属组

[email protected]:~/Disk/local/mysql#kdir -p /Disk/log/mysql
[email protected]:~/Disk/local/mysql# chown -R mysql:mysql /Disk/log/mysql

初始化数据库

[email protected]:~/Disk/local/mysql# /Disk/local/mysql/scripts/mysql_install_db --user=mysql

把mysql加入系统启动,他会告诉你找不到/etc/rc.d/init.d/mysqld文件

[email protected]:~/Disk/local/mysql# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

此时进入当前目录下的support-files/目录

[email protected]:~/Disk/local/mysql/support-files# ./mysql.server restart

这样就将mysql启动起来了

mysql使用3306端口,将3306端口加入防火墙

 [email protected]:~# ufw allow 3306

查看防火墙状态

[email protected]:~# ufw status

最后就是给MySQL数据库里的root账号一个密码,这个MySQL的root不是指操作系统的root,而是指这个数据库管理系统的root

[email protected]:~/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

[email protected]:~# mysql -u root -p

再输入密码就能登录进行数据库的操作了

我们用windows下的Natcivat连接服务器Mysql,出现1130错误提示,是因为远程服务器无权限登录MySQL

对root用户授权并设置密码

mysql> grant all on *.* to ‘root‘@‘%‘ identified by ‘888888‘;

(四)安装php,php的安装比较简单

[email protected]:~# apt-get install php5
[email protected]:~# apt-get install php5-fpm
[email protected]:~# apt-get install php5-curl
[email protected]:~# apt-get install libmcrypt4 php5-mcrypt
[email protected]:~# apt-get install php5-gd
[email protected]:~# apt-get install php5-xmlrpc
[email protected]:~# apt-get install libapache2-mod-php5
[email protected]:~# apt-get install php5-mysql
[email protected]:~# /etc/init.d/php5-fpm start

然后将PHP和nginx进行整合,修改默认配置文件 ,将下面的代码取消注释

 [email protected]:/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

对网站根目录设置权限

[email protected]:~# chmod -R 777 /usr/share/nginx/html/

用浏览器访问http://主机地址/upload/install/index.php

进入discuz安装首页进行安装,填写主机名,数据库密码,管理员密码

安装成功后用管理员登录就可以了

时间: 2024-11-06 21:14:57

Ubuntu系统下lnmp环境的搭建的相关文章

Ubuntu系统下lnmp环境搭建和Nginx多站点配置

最近需要使用Ubuntu作为服务器搭建Lnmp环境,顺便将操作过程写下来,与大家分享.如有不足之处,欢迎大家提出不同意见.(本文默认读者已经熟悉相关linux命令的使用,比如创建文件和文件夹,编辑文件的命令等.) 操作系统:Ubuntu 15.10 本系统是新装的,所以没有Nginx.mysql和php环境.如果之前有装过这些环境的还得先把之前的软件先卸载. 一.安装MySQL 直接输入命令:sudoapt-get install mysql-server mysql-client 中间需要你输

linux下LNMP环境的搭建

lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 他们的区别在于apache和nginx和php结合的模式不同,我们讲的这两个架构中,php在编译的时候以一个模块的形式和apache成为了一个整体,这种情况下我们是可以把php的安装目录/usr/local/php删除的.而lnmp中的php启动了一个服务php-fpm,这种模式相当于nginx处理php脚本时,直接把请求转发给了php-fpm,说白了就是一个代理.这个php的安装目录

centos7.X下LNMP环境的搭建

系统:CentOS 7 x86_64 NGINX:nginx-1.7.12 数据库:mariadb-10.0.13 PHP:php-5.5.23 首先做一些准备工作,先把centos7的防火墙更换成iptables,可以参见如下链接 centos7防火墙改为iptables 修改成iptables之后就可以清空iptables里面的过滤规则了,然后再关闭selinux服务.记得不要忘了先安装gcc gcc-c++ wget net-tools等功能哦. 首先安装mariadb 应为数据库编译需要

Ubuntu系统Java开发环境的搭建

操作系统:Linux x64 / Ubuntu 14.04 Java JDK版本:jdk-8u65-linux-x64.tar.gz 声明:转载请注明出处及本文链接 1. 前往ORACLE官网下载最新版本的Java JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html,默认下载到Downloads文件夹. 2. 在合适的路径下创建文件夹用来存储Java JDK,本例选择在/opt目录下新建JVM子文件夹.操作

windows系统下Python环境的搭建

1.首先访问http://www.python.org/download/去下载最新的python版本. 2.安装下载包,一路next. 3.为计算机添加安装目录搭到环境变量,如图把python的安装目录添加到pth系统变量中即可. 4.测试python安装是否成功,cmd打开命令行输入 python 命令,如下图即成功了 5.Hello World! 按照很多资料上写的,输入 print 'Hello World!' 居然是不成功,说语法错误!这是一个坑了,很多资料是都是python 1.*/

windows系统下Python环境的搭建及Selenium的安装

1.首先访问http://www.python.org/download/去下载最新的python版本: 2.下载安装包,一路安装完毕: 3.为计算机添加安装目录搭到环境变量,如图把python的安装目录添加到path系统变量中即可: 4.测试python安装是否成功,cmd打开命令行输入 python 命令: 装的是3.4.3版本,要采用这种写法 print ('Hello World!'),需要用括号把字符串包含: 5.查看安装的版本: 备注:以上表示,python安装成功,且path配置也

Windows 64 位系统下 Python 环境的搭建

Windows 64 位开发环境 注意:本教程适用于 Windows 7 64 位操作系统 及 Windows 10 64 位操作系统,其他系统尚未经过校验. 安装 IDE PyCharm 下载:https://www.jetbrains.com/pycharm/ 安装 Python 环境 Python2.7 下载:https://www.python.org/downloads/ Python2.7 的默认安装目录在 C:/Python27/,安装目录请勿转移到其他盘!有C盘洁癖症的患者请特别

RedHat6.4系统下LAMP环境的搭建---(源码包编译安装)---

(一)httpd(源码包安装) 安装准备: 1 安装htppd软件所依赖的软件包 yum -y install gcc gcc-c++ pcre pcre-devel apr apr-devel apr-util apr-util-devel zlib zlib-devel openssl openssl-devel 安装完成显示如下: Installed: apr.x86_64 0:1.3.9-5.el6_2 apr-devel.x86_64 0:1.3.9-5.el6_2 apr-util.

RedHat6.4系统下LAMP环境的搭建---(yum搭建)

一:配置本地yum源 : 1 创建一个文件夹用于存放挂载光盘的文件 mkdir /mnt/cdrom 2 将光驱挂载在创建的文件夹中 mount /dev/cdrom /mnt/cdrom 3 当然我们也可以设置为开机自动挂载光驱:用vi编辑/etc/rc.local文件,因为在系统启动过程中,完成初始化脚本的执行后,会执行这个脚本文件添加命令如下: vi /etc/rc.local mount /dev/cdrom /mnt/cdrom #后面挂载点可以自己选择 4 配置本地yum源的文件: