在lamp上简单部署应用程序
前言:上文中,说到了lamp的基本原理,apache与php的三种交互模式,php与mysql(mariadb)的交互,一次完整lamp的请求。
LAMP简单的部署之后,便能够简单的搭建自己的网站。
一:部署wordpress
基于LAMP环境来搭建wordpress。
它是一种使用PHP语言开发的开源博客平台,用户能够在支持PHP与mysql的服务器上架构自己的私有博客。wordpress通俗易懂,支持中文。
1.1添加数据库
mysql>GRANT ALL ON wpdb.*TO ‘wpdb’@‘localhost’ IDENTIFIED BY ‘wpasswd’; #赋予全部权限,并设置密码
mysql>GRANT ALL ON wpdb.*TO ‘wpdb’@‘127.0.0.1’ IDENTIFIED BY ‘wpasswd’;
mysql>GREATE DATABASES wpdb; #创建数据库
mysql>FLUSH PRIVILEGES; #让mysql重读数据库
mysql>exit;

这里有得一说,之所以执行两次GRANT命令是因为,在mysql上用户名是由用户加地址构成了,以上两种方式对于mysql而言是两种不同的方式。
1.2安装配置wordpress
wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.zip
unzip wordpress-4.9.-zh_CN.zip #解压
mv wordpress-4.9.-zh_CN.zip /var/www/html #移动到apache目录下
mv /var/www/html/wordpress/wp-config-smple.php /var/www/html/wordpress/wp-config.php #使用模版配置文件
vim /var/www/html/wordpress/wp-config.php

之后进行简易的安装。访问网站

二、部署phpmyadmin。
phpmyadmin是使用PHP语言开发的一种mysql的GUI界面,能够在GUI界面直接进行mysql操作。
部署phpmyadmin也十分的简单。只需到官网下载phpmyadmin,解压即可。
2.1安装php-mbstring
yum -y install php-mbstring
2.2布置phpmyadmin
wget https://files.phpmyadmin.net/phpMyAdmin/4.7.8/phpMyAdmin-4.7.8-all-languages.zip
unzip phpMyAdmin-4.7.8-all-languages.zip
cp -a phpMyAdmin-4.7.8-all-languages.zip /var/www/html
cd /var/www/html
ln -sv phpMyAdmin-4.7.8-all-languages.zip pma #建立链接,在生产环境中才必须,使用连接能在危机时刻回滚会旧版本
cd pma
cp config.sample.inc.php config.inc.php #同样是复制模版,然后修改
vim config.inc.php

phpmyadmin需要一个足够随机的随机数,这里使用创建随机数的方法是从熵池里读取
~]# tr -d 'a-zA-Z0-9' < /dev/urandom | head -30 |md5sum
e764bb8f49ab276bc72910e7e5225023 -
然后你会发现

这是因为php代码的变化,在php5.5之前empty()不能作为函数的返回参数,所以只要修改!empty(@ini_get('mbstring.func_overload')) 可以改成 $mbf = @ini_get('mbstring.func_overload'); !empty($mbf)便能结局问题
马上就会翻车,所以这里不推荐修改,而是使用原来的

其实只要php在5.5以上便没有以上的问题,最好也是直接升级php版本,因为,你马上知道了...重启httpd,然后再访问,emmmm

之后,手动更新php版本,在使用原始的配置文件!empty(@ini_get('mbstring.func_overload'))
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm #跟新prm包 yum remove php-common #卸载
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql
php56w-intl php56w-mbstring #重新安装
重启httpd,再访问

这里有一点说明,也需是我的电脑的问题,反正无论如何设置360急速浏览器都进不了这个页面,所以这里使用了谷歌。还记得phpmyadmin的配置文件吗?其中的一项allownopassword默认是拒绝使用空密码登入
mysql>SET PASSWORD FOR 'root'@'localhost'=PASSWORD('forest’);
mysql>SET PASSWORD FOR 'root'@'127.0.0.1'=PASSWORD('forest’);
mysql>FLUSH PRIVILEGES;
mysql>exit;
当然也是能够更改配置文件,允许空密码登录。

之后创建、修改、删除数据库便能够在此GUI界面完成。


在lamp上简单部署应用程序的更多相关文章
- 编写简单的Mapreduce程序并部署在Hadoop2.2.0上运行
今天主要来说说怎么在Hadoop2.2.0分布式上面运行写好的 Mapreduce 程序. 可以在eclipse写好程序,export或用fatjar打包成jar文件. 先给出这个程序所依赖的Mave ...
- Linux环境下部署完JDK后运行一个简单的Java程序
前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...
- IDEA调试服务器上部署的程序
提出问题: 一个程序,部署在自己的电脑上,debug调试,相信大家都会,但是,如果我想debug调试非本地部署的程序怎么办呢.比如测试服务器上部署的程序. 其实这样的需求也是经常有的,比如一个大型的项 ...
- 使用Nginx+uWSGI+Django方法部署Django程序(上)
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...
- weblogic上部署应用程序
weblogic上部署应用程序有三种方法: 一:修改配置文件config.xml在文件中加入如下代码片段: <app-deployment> <name>FAB</nam ...
- 教你一步一步部署.net免费空间OpenShift系列之三------上传ASP.net程序
接上回书,创建应用后,我们如何将自己的ASP.Net部署到应用空间呢,这里用WinSCP的SFTP协议进行上传和下载 上传ASP.net程序 下载WinSCP,并打开PuTTYGen 点击Genera ...
- Glue4Net简单部署基于win服务的Socket程序
smark 专注于高并发网络和大型网站架规划设计,提供.NET平台下高吞吐的网络通讯应用技术咨询和支持 Glue4Net简单部署基于win服务的Socket程序 在写一些服务应用的时候经常把要它部署到 ...
- 用python写个简单的小程序,编译成exe跑在win10上
每天的工作其实很无聊,早知道应该去IT公司闯荡的.最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅. 人的精力毕竟是有限的,所以 ...
- 06、部署Spark程序到集群上运行
06.部署Spark程序到集群上运行 6.1 修改程序代码 修改文件加载路径 在spark集群上执行程序时,如果加载文件需要确保路径是所有节点能否访问到的路径,因此通常是hdfs路径地址.所以需要修改 ...
随机推荐
- 插入排序实现&&选择排序实现
萌新刚刚开始学习算法,第一步是学习排序,毕竟算法的四大块"排序,查找,图,字符串"里面,排序是第一位的(PS:今天才知道算法提供的只是一个程序编写思路,一直以为是一个函数,难怪传入 ...
- Java经典编程题50道之二十九
求一个3*3矩阵对角线元素之和. public class Example29 { public static void main(String[] args) { int[][] ...
- String类为什么是final的
首先我们使用new创建一个String对象的时候比如: String str=new String("123"); 这句话里面创建了两个对象,第一个在系统中创建了一个"a ...
- Winform下去除MDI窗体边框
做项目中间遇到了MDI窗体内边框的问题,经过苦苦寻找,最终得到了解决方案 在Main窗体中调用API // Win32 Constants ; ; private const int WS_BORDE ...
- 02 浅析Spring的AOP(面向切面编程)
1.关于AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善.O ...
- Java集合框架(一)—— Collection、Iterator和Foreach的用法
1.Java集合概述 在编程中,常常需要集中存放多个数据.当然我们可以使用数组来保存多个对象.但数组长度不可变化,一旦在初始化时指定了数组长度,则这个数组长度是不可变的,如果需要保存个数变化的数据,数 ...
- POJ - 1062 昂贵的聘礼 Dijkstra
思路:构造最短路模型,抽象出来一个源点,这个源点到第i个点的费用就是price[i],然后就能抽象出图来,终点是1. 任意两个人之间都有等级限制,就枚举所有最低等级限制,然后将不再区间[min_lev ...
- MPEG2_TS流基本概念和数据结构
时对应network_PID,program_number等于其它值时对应program_map_PID. (3)PMT PMT数据结构如下: TS_program_map_section(){ ...
- (十七)java冒泡排序和compareto
java中的排序有:冒泡排序.快速排序.选择排序.插入排序和希尔排序,还有基数排序.鸡尾酒排序.桶排序.鸽巢排序.归并排序等. 冒泡排序法:利用双重for循环,重复走访要排序的数列,两两比较大 ...
- Error creating bean with name 'com.you.user.dao.StudentDaoTest': Injection of autowired dependencies
1.错误描述 七月 13, 2014 6:37:41 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBean ...