### 安装目录
### 服务:/data/server
### 安装包:/usr/local/src
### configure:编译安装参数
### 所有程序安装前关闭防火墙
### systemctl stop firewalld
### setenforce 0
nginx安装过程
安装nginx依赖包
一.安装编译工具gcc
gcc是一个开源编译器集合,用于处理各种各样的语言:C、C++、Java、Ada等,在linux世界中是最通用的编译器,支持大量处理器:x86、AMD64、PowerPC、ARM、MIPS等。
首先确定系统是否安装gcc(显示已安装)
安装nginx过程
yum安装gcc:yum install gcc gcc-c++
二.安装PCRE库
nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式语法,因此nginx编译需要使用PCRE(Perl Compatible Regular Expression)库,需要安装pcre和pcre-devel,pcre提供编译版本的库,pcre-devel提供开发阶段的头文件和编译项目的源代码。
使用yum安装:yum -y install pcre pcre-devel
(系统已安装显示Nothing to do)
三.安装zlib库
zlib库提供了压缩算法,在nginx的各种模块中需要使用gzip压缩,因此需要安装zlib库和zlib-devel(zlib源代码)
yum -y install zlib zlib-devel
四.安装OpenSSL
OpenSSL项目是一个协作开发健壮的、商业级的、全功能的执行于安全套接层(SSL v2/v3)和传输层安全(TLS v1)的协议,也是一个完整强壮的通用加密库。在nginx中如果服务器需要提供安全网页则会用到OpenSSL库,因此需要安装它的库文件和它的开发安装包。
yum安装openssl和openssl-devel
yum -y install openssl openssl-devel
安装nginx
一.到官网下载http://nginx.org/ 各个版本的链接
cd /usr/local/src
下载并解压: wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar -zxvf nginx-1.16.0.tar.gz
二.探测目标环境 gcc等编译器是否可用生成Makefile
cd /usr/local/src/nginx-1.16.0
./configure --prefix=/data/server/nginx(参数为编译安装的路径,将服务都放在/data/server下)
三.按照生成的Makefile进行编译
make
make install : 将编译好的二进制文件
安装到系统,复位到响应的位置
make && make install
cd /data/server/nginx/sbin
./nginx
ifconfig得到自己的ip地址输入到浏览器
MySQL源码安装过程
一.wget 下载解压
cd /usr/local/src
yum -y install cmake bison git ncurses-devel gcc gcc-c++
wget http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm
rpm -ivh http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm
1.下载压缩包:cd /usr/local/src
(wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz)
2.解压:tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
(用alisql就直接解压):unzip AliSQL-AliSQL-5.6.32-9.zip
二. 添加用户组和用户
#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -g mysql mysql
三.创建文件夹
mkdir /data/server/mysql
mkdir /data/server/mysql/data
四.开始编译安装(cd mysql-5.6.22)/cd AliSQL-AliSQL-5.6.32-9/
cmake (同configure一样,生成makefile工具)
cmake -DCMAKE_INSTALL_PREFIX=/data/server/mysql -DMYSQL_UNIX_ADDR=/data/server/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/server/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1
make && make install
修改目录属主权限
chown -R mysql:mysql /data/server/mysql/data/
chown -R mysql:mysql /data/server/mysql/
五.数据库初始化
cd /data/server/mysql
scripts/mysql_install_db --defaults-file=./my.cnf --user=mysql
①cp support-files/mysql.server /etc/init.d/mysqld
②chmod 755 /etc/init.d/mysqld
③cp support-files/my-default.cnf /etc/my.cnf
六.修改my.cnf
vim my.conf
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
#port = .....
#server_id = .....
socket = /usr/local/mysql/mysql.sock
log-error= /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
user = mysql
tmpdir = /tmp
七.启动服务
cd /usr/local/mysql/support-files
./mysql.server start
mysql启动
cd /data/server/mysql/bin
./mysql -u root -p
回车(密码没有直接回车)
创建数据库
>create database wordpress;
>grant all on wordpress.* to wordpress@'localhost' identified by'123456';
>flush privileges;
>exit
support-files/mysql.server start mysql启动不了的话
这里会出现一个报错
Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).
#rm -rf /etc/my.cnf
#rm -rf my.conf
#cd data
#rm -rf *
#cd ..
#scripts/mysql_install_db --defaults-file=./my.cnf --user=mysql
#cd support-files/
#./mysql.server start
#cd ..
#cd bin
再次进交互环境
./mysql -u root -p
八.加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
vim /etc/profile
export PATH=$PATH:/data/server/mysql//bin
source /etc/profile(使配置立即生效)
PHP安装过程(nginx环境)
nginx环境下的php的安装步骤
系统环境:
CentOS 6.5 / 7.0 x86_64
Fedora 20 x86_64
一.yum安装依赖包程序包
yum -y install zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel openssl openssl-devel libxslt-devel
安装过显示Nothing to do
二.安装libiconv程序包
①wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
②tar zxf libiconv-1.15.tar.gz
③cd libiconv-1.15
④./configure --prefix=/data/server/libiconv(在libiconv-1.15目录下执行)
⑤make && make install
三.配置编译安装PHP-5.6.30.tar.gz
①wget http://tw1.php.NET/get/php-5.6.30.tar.gz/from/this/mirror (在/usr/local/src里下载)
②mv mirror php-5.6.30.tar.gz
③tar xzvf php-5.6.30.tar.gz
(tar zxvf php-5.6.32.tar.gz)这里直接解压
④(进到php-5.6.30解压后的目录里)
./configure \
--prefix=/data/server/php \
--enable-fpm \
--with-mysql=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-zlib \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-iconv=/data/server/libiconv \
--enable-short-tags \
--enable-sockets \
--enable-zend-multibyte \
--enable-soap \
--enable-mbstring \
--enable-static \
--with-curl \
--enable-ftp \
--with-libxml-dir
⑤make && make install
四.php.ini配置
首先我们需要配置的是php.ini这个文件
安装目录有2个文件:php.ini-development和php.ini-production
php.ini-production 线上版本使用
php.ini-development 开发版本使用
我们选择development进行配置
cp php.ini-development /data/server/php/lib/php.ini
五.php-fpm配置
①拷贝php-fpm配置文件
cp -R ./sapi/fpm/php-fpm.conf /data/server/php/etc/php-fpm.conf
②将php给我们准备好的init.d.php-fpm
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
③将php-fpm服务添加到chkconfig列表
chkconfig --add php-fpm
④设置开机自启动
chkconfig php-fpm on
⑤加权限
chmod +x /etc/init.d/php-fpm
⑥启动php-fpm
cd /data/server/php/sbin
service php-fpm start
成功显示Starting php-fpm done
六.创建用户
创建 www 用户
groupadd www
useradd -g www -s /sbin/nologin -M www
七.添加PHP命令到环境变量
①编辑 vim /etc/profile
②在最后一行添加PATH=$PATH:$HOME/bin:/data/server/php/bin
③source /etc/profile(使环境变量生效)
④查看PHP版本
php -v
⑤然后执行 vim /data/server/nginx/conf/nginx.conf 编辑nginx配置文件,具体路径根据实际的nginx.conf配置文件位置编辑,下面主要修改nginx的server{}配置块中的内容,修改location块,追加index.php让nginx服务器默认支持index.php为首页:
⑥然后配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:
这里面很多都是默认的,root是配置php程序放置的根目录,主要修改的就是fastcgi_param中的/scripts为$document_root
修改完上面的,回到nginx.conf第一行,默认是#user nobody; 这里要去掉注释改为user wwwdata;或者user www www;表示nginx服务器的权限为www
⑦接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:
修改完后保存退出
⑧vim /etc/hosts中添加ip映射关系
在windows上找到hosts文件,并将ip和域名添加进去
# 在菜单开始里找到记事本
# 右击 选择 以管理员身份打开
# Ctrl+O 选择打开文件
路径为——C:/windows/system 32/divers/etc/hosts
# 更改hosts文件
在下面添加 liunx的ip 域名 保存
在nginx目录里的sbin重启nginx
./nginx -t检查nginx配置文件是否正确
nginx已经启动过所以输入./nginx -s reload
然后打开浏览器输入对应的地址进行访问,看到输出页面,说明nginx和php都配置成功了
输入www.localhost.org 显示:
在域名后面加/test.php显示测试网页:
搭建WordPress
1.下载wordpress
wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
2.解压
tar xf wordpress-4.9.4-zh_CN.tar.gz -C /usr/local/src
3.进到/usr/local/src目录下
cd /usr/local/src
4.列出wordpress详细信息
ll -d wordpress*
5.将wordpress文件复制到网页目录下
cp -r wordpress /data/server/nginx/html
6.修改Wordpress配置文件
# 进到wordpress目录下
cd /data/server/nginx/html/wordpress
# 拷贝配置文件
cp -r wp-config-sample.php wp-config.php
# 修改wp-config.php
vim wp-config.php
在其中修改
数据库名字、账号、密码(这里修改的是mysql中创建的数据库名字、用户、密码)
再将主机改成127.0.0.1(设置自己可以访问)
7.访问网页
在网址栏输入192.168.124.73/wordpress/
8.成功
9.登录
10.再次访问时 能访问到自己的博客
输入 192.168.124.73/wordpress 或者 www.nautilus.org/wordpresss
解决报错:
1.访问时显示无法访问网页
解决办法:
将nginx,mysql,php全都重新启动
cd /data/server/nginx/sbin
./nginx -s reload
cd /data/server/mysql/support_files
./mysql.server stop
./mysql.server start
cd /data/server/php/bin
service php_rpm start
2.访问网页时404报错
解决办法:
vim /data/server/nginx/conf/nginx.conf
将loaction模块下的root栏 改成 html(也就是将html/www后面的www删掉)
3.建立数据库连接时出错
解决方法:
第一种:
vim /data/server/nginx/html/wordpress/wp-config.php
将主机下面改成 127.0.0.1
再重启mysql
cd /data/server/mysql/support-files
./mysql.server stop
./mysql.server start
第二种:
进到/data/server/mysql/bin
去进到mysql交互环境
cd /data/server/mysql/bin
./mysql -u root -p
重新在wordpress数据库中创建用户及密码
>grant all on wordpress.* to wordpress@'localhost' identified by'123456';
>flush privileges;
>exit
再重启mysql
cd /data/server/mysql/support-files
./mysql.server stop
./mysql.server start