Centos7 LNMP 环境搭建及个人博客发布

个人博客发布

  • 工具准备
  • 安装LAMP 或LNMP
  • 创建虚拟主机与配置ip与域名

一、工具准备

  1. 阿里云服务器centos7一个,或其他品牌的服务器一个 ,国内需要备案,备案可能有点麻烦,但请耐心! file
  2. 域名一个:zhaocrazy.top 需要实名验证,具体操作在阿里云,花钱下单就可以
  3. 一套博客源码 例如白俊遥

二、 安装LAMP 或LNMP

一键安装

  1. LAMP LNMP 宝塔
  2. 请自行阅读并进行安装 ===检查:在浏览器输入你的公网ip 若返回lamp/lnmp图标便是安装成功!
  3. 虽然安装很方便 但是不推荐,可能有漏洞,被当肉鸡,被攻击,慎用,新手可以拿来玩!

编译安装

先确保有一个干净的linux环境,检测是否有已经安装的服务器 数据库 php

  • rpm -qa | grep httpd
  • rpm -qa | grep mysql
  • rpm -qa | grep php

如果存在就卸载

  • rpm -e –nodeps httped
  • rpm -e –nodeps mysql
  • rpm -e –nodeps php

安装mysql

  • 安装依赖包:yum -y install make gcc-c++ cmake bison-devel ncurses-devel
  • 下载并解压

wget http://mysql.com/Downloads/MySQL-5.7/mysql-5.7.14.tar.gz

tar -zxvf mysql-5.7.14.tar.gz

cd mysql-5.7.14

  • 5.7版本mysql需要 下一个步骤
wget http://119.90.16.195:9999/jaist.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
tar -xf boost_1_59_0.tar.gz
cd boost_1_59_0
./bootstrap.sh
./b2 install
  • 编译
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1
-DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

 make && make install
  • 创建用户

groupadd mysql

useradd -g mysql mysql

  • 修改权限

chown -R mysql:mysql /usr/local/mysql

  • 初始化数据库
cd /usr/local/mysql
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
  • 复制配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

  • 复制mysql服务启动脚本及加入PATH路径

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

vim /etc/profile

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH export PATH

  • 修改后让profile立即生效

source /etc/profile

  • 启动mysql服务并加入开机自启动

service mysqld start

chkconfig --level 35 mysqld on

  • 检查mysql服务是否启动

netstat -tulnp | grep 3306

  • 修改Mysql的root密码 (先登录mysql)
  1. 方法1

set password for root@localhost = password('peter');

  1. 方法二

use mysql

update user set password=password('peter') where user='root' AND host='localhost';

flush privileges;

  • 允许远程连接

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;-

  • 刷新缓存区

FLUSH PRIVILEGES

安装Apache

  • 下载解压 编译安装
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.2.31.tar.gz
 tar -zxv -f httpd-2.2.32.tar.gz
 cd httpd-2.2.32
./configure --prefix=/usr/local/apache/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
make & make install
  • 创建用户,组

groupadd apache

useradd -g apache apache

  • 修改配置
vi /etc/httpd/httpd.conf
User apache
Group apache
chown -R apache.apache /usr/local/apache
vi /usr/local/apache/bin/apachectl
在第二行添加
#chkconfig: 2345 10 90
#description: Activates/Deactivates Apache Web Server
  • 设置apache的自启动及运行等级
cd /etc/rc.d/init.d
cp /usr/local/apache/bin/apachectl httpd
chmod 755 httpd
chkconfig --add httpd
chkconfig --level 345 httpd on
chkconfig --level 0126 httpd off
  • 启动

service httpd start

编译安装PHP
  • yum安装所需要的依赖包
yum install libxml2 libxml2-devel curl curl-devel libjpeg libjpeg-devel libpng libpng-devel libmcrypt libmcrypt-devel libtool-ltdl-devel gd openssl openssl-devel
  • 安装freetype
tar -zxvf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype/
make & make install
  • 解压缩php源码包

tar -zxvf php-5.3.10.tar.gz cd php-5.3.10

  • 编译
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --with-libxml --with-png --with-jpeg-dir=/usr/lib --with-curl --with-mcrypt --enable-mbstring --with-freetype-dir=/usr/local/freetype --with-gd --with-mcrypt --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-sockets
make & make install
  • 复制配置文件

cp php.ini-production /usr/local/php/etc/php.ini

  • 配置apache支持php解析
#AddType text/html .shtml 后添加
AddType application/x-httpd-php .php .phtml
#index.html 前添加index.php
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

编译安装nginx

可能很多人喜欢用精悍的nginx,可以先卸载Apache,以下以阿里云服务器为例子 卸载:

rpm -e --nodeps httped

安装:

yum search nginx
yum -y install nginx
service nginx start
systemctl enable nginx
curl 127.0.0.1     成功的话会返回html

安装后记

编译安装(推荐用yum)到很多各种问题,需要耐心。遇到问题不要怕,多百度多搜索多尝试。本人是先安装了lamp 后续又卸载Apach安装nginx,升级了mysql.如果安装成功,访问ip或绑定的域名最后会显示 Apach 或者nginx 的 Welcome 页面,下一步将是将是上传php代码,安装应用程序!

三、创建虚拟主机与配置ip与域名

  1. 一键安装的环境可以使用你搭建环境预留的命令 自行查找创建 例如:lamp add
  2. 服务器解析域名: 并配置*安全组 * 开启80端口,如果需要线下访问数据库还要开启3306端口
  • 不开启,不解析将访问不通,有时不是代码的问题,通常是权限或端口问题

  • 端口路径:控制面板-----> ECS云服务器------>阿里云左上角选择服务器所在区,不然找不到实例----->左侧栏 网络与安全----->安全组---》配置规则(手动添加)
    
  • 域名解析:控制面板—–> 域名—–>域名解析列表——->添加域名

  1. 配置nginx 或apache laravel 伪静态 完善访问链接 /etc/nginx/conf.d/pcity.conf 主要改以下中文地方
server {
  listen 80;
  server_name 填写你的域名;
  root 对应代码目录;

  add_header X-Frame-Options "SAMEORIGIN";
  add_header X-XSS-Protection "1; mode=block";
  add_header X-Content-Type-Options "nosniff";

  index index.php index.html index.htm;

  charset utf-8;

  location / {
      try_files $uri $uri/ /index.php?$query_string;
  }

  location = /favicon.ico { access_log off; log_not_found off; }
  location = /robots.txt  { access_log off; log_not_found off; }

  error_page 404 /index.php;

  location ~ \.php$ {
      root  项目根目录;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      include fastcgi_params;
  }

  location ~ /\.(?!well-known).* {
      deny all;
  }
}

4.执行php 安装命令最后成线上搭建。文章整理于本人笔记,如有误,请指出!

个人博客停止维护,部分博客转载到这

  • 彼特城
  • 2020-08-08 16:50:19
本作品采用《CC 协议》,转载必须注明作者和本文链接
滴水穿石,石破天惊----晓疯子
zhaocrazy
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!