centos6.5 开发环境部署(nignx1.7.10+php5.4.38+mysql+ftp)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 一些命令和规则以及准备 本次流程再 DigitalOcean上的vps上通过   查看是否已经安装 rpm -qa | grep nginx 删除安装 #普通删除模式 rpm -e nginx #强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除...

一些命令和规则以及准备

本次流程再 DigitalOcean上的vps上通过

 

查看是否已经安装

rpm -qa | grep nginx

删除安装

#普通删除模式
rpm -e nginx
#强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
rpm -e --nodeps nginx

查看端口是否被占用

netstat -ano|grep 80

目录

#源码
/usr/local/src
#安装目录
/user/local/

安装编译代码需要的包

yum -y install gcc automake autoconf libtool make gcc-c++ cmake bison-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel

#centos源不能安装libmcrypt-devel,要用第三方源
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
yum -y install php-mcrypt libmcrypt libmcrypt-devel


#有的平台默认没有wget ,手动安装
yum install wget

安装nginx

安装PCRE库(为了重写rewrite)

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz
tar -zxvf pcre-8.35.tar.gz
cd pcre-8.35
./configure
make
make install

安装zlib库(为了支持压缩)

cd /usr/local/src

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install

安装ssl

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -zxvf openssl-1.0.1c.tar.gz

安装nginx

cd /usr/local/src

wget http://nginx.org/download/nginx-1.7.10.tar.gz
tar -zxvf nginx-1.7.10.tar.gz
cd nginx-1.7.10

#--with-pcre=/usr/src/pcre-8.35 指的是pcre-8.35 的源码路径。
#--with-zlib=/usr/src/zlib-1.2.7 指的是zlib-1.2.7 的源码路径。
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/ openssl-1.0.1c

make #编译时间很长,可以去喝杯茶
make install

配置

#配置文件
/usr/local/nginx/nginx.conf

#开启php支持,只需要安装php后,打开nginx配置文件中加入以下部分,重启nginx
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# 原始的nginx配置是上面注释的部分,应该改成下面部分
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

#软连接到全局调用
ln -s /usr/local/nginx/nginx /usr/local/bin/nginx

启动
nginx
nginx -s reload #重启

安装 php


1 安装

cd /usr/local/src
wget http://am1.php.net/distributions/php-5.4.38.tar.gz
tar -zxvf php-5.4.38.tar.gz

cd php-5.4.38
./configure --prefix=/usr/local/php --enable-fpm --with-mcrypt --enable-mbstring --disable-pdo --with-curl --disable-debug --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-gd --with-jpeg-dir --disable-fileinfo
#内存小于1G 必须加 --disable-fileinfo

make all install

2 配置

cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf

#链到全局目录
ln -s /usr/local/php/sbin/php-fpm /usr/local/bin/php-fpm

# php.ini 位置

cp /etc/php.ini /usr/local/php/lib/php.ini
mv /etc/php.ini /etc/php.ini.bak

3 运行

php-fpm
#手动打补丁的启动方式:php-fpm start

4 手动打补丁,扩展

#扩展安装必须库
yum -y install php-pear
yum -y install php-devel

#ImageMagick安装
yum -y install ImageMagick
yum -y install ImageMagick-devel

#php扩展库增加 安装过程直接回车用默认选项
pecl install imagick
#安装完毕之后命令行会告诉你安装到的位置(我的位置):/usr/lib64/php/modules/imagick.so

#php.ini 中增加扩展项
vi /usr/local/php/lib/php.ini
extension=/usr/lib64/php/modules/imagick.so #增加项

#重启
killall php-fpm
php-fpm

 

安装 mysql


>编译安装mysql非常容易遇到各种问题,所以yum安装吧。。。默认安装的是5.1版本

1 安装

yum -y install mysql-server

2 设置开机启动

chkconfig mysqld on

3 启动MySql服务

service mysqld start

4 设置MySQL的root用户设置密码

mysql -u root
>use mysql;
>select user,host,password from mysql.user;
>set password for root@localhost=password('123456');
>exit;
#新密码登陆
mysql -u root -p

5 开放远程登录

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

 

安装ftp服务器

>自己开发的话直接使用ssh登陆ftp就能玩耍了。但是多人协作的话,还是安装一些ftp服务器做权限管理比较好

1 安装

#安装

yum install vsftpd

#设置开机启动

chkconfig vsftpd on

#启动|重启|停止

service vsftp start  #restart|stop

2 与vsftpd服务器有关的文件和文件夹

vsftpd服务器的配置文件的是: /etc/vsftpd/vsftpd.conf,参数意义:

anonymous_enable=NO            #禁止匿名

local_enable=YES                       #允许本地登录

write_enable=YES                       #允许写,如需上传,则必须

local_umask=027                        #将上传文件的权限设置为:777-local_umask

anon_upload_enable=YES          #允许虚拟用户和匿名用户上传

anon_other_write_enable=YES #允许虚拟用户和匿名用户修改文件名和删除文件

dirmessage_enable=YES           

xferlog_enable=YES                      #打开日志记录

connect_from_port_20=YES

xferlog_file=/var/log/vsftpd.log     #日志存放位置

xferlog_std_format=YES              #标准日志格式

idle_session_timeout=600        #空闲连接超时

data_connection_timeout=120

ftpd_banner=Welcome to ChinaRise FTP service       #欢迎信息

guest_enable=yes                       #允许虚拟用户

guest_username=vsftpdguest #虚拟用户使用的系统账号

virtual_use_local_privs=YES     #虚拟用户拥有本地系统权限

 

chroot_local_user=NO              

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 #以上两行将虚拟用户限制在其目录下,不能访问其他目录,或者直接调用。被限制的用户名在chroot_list中,一行一个,没有/etc/vsftpd/chroot_list文件需要手动建立            

 

 

listen=yes                #监听/被动模式

listen_port=21        #监听端口

vsftpd服务器的根目录,即FTP服务器的主目录:

more /etc/passwd|grep ftp

#下面是输出

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

3 添加FTP本地用户

#增加ftpuser用户,指向/var/www目录,属于ftp用户组  禁止登陆系统

/usr/sbin/adduser -d /var/www -g ftp -s /sbin/nologin ftpuser

#设置用户口令

passwd ftpuser

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
前端开发 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
69 0
|
4天前
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
45 16
|
4天前
|
SQL 关系型数据库 MySQL
docker-compose部署mysql8
使用docker-compose容器化部署mysql8
|
1月前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
138 26
|
1月前
|
SQL 安全 JavaScript
在多用户环境中,如何确保 PHP Shell 的安全性?
在多用户环境中确保 PHP Shell 安全,需采取限制执行环境、禁用危险函数、使用安全模式、采用 `suPHP` 或 `PHP-FPM`、使用参数化查询、输入验证、转义命令、强化会话管理、合理配置错误处理、正确设置文件权限及定期更新等措施。这些策略有助于防范潜在的安全威胁。
|
1月前
|
存储 关系型数据库 MySQL
PHP与MySQL动态网站开发:从基础到实践####
本文将深入探讨PHP与MySQL的结合使用,展示如何构建一个动态网站。通过一系列实例和代码片段,我们将逐步了解数据库连接、数据操作、用户输入处理及安全防护等关键技术点。无论您是初学者还是有经验的开发者,都能从中获益匪浅。 ####
|
2月前
|
安全 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
——深入探索LAMP栈下的高效数据交互与处理技巧 ####
|
1月前
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
63 5
|
1月前
|
关系型数据库 MySQL PHP
php实现一个简单的MySQL分页
通过本文的详细步骤和代码示例,我们实现了一个简单的PHP MySQL分页功能。主要步骤包括计算总记录数、设置分页参数、查询当前页的数据以及生成分页链接。这种分页方式适用于大多数Web应用,能够有效提升用户体验和页面响应速度。
34 4
|
2月前
|
关系型数据库 MySQL PHP
PHP与MySQL动态网站开发实战指南####
深入探索PHP与MySQL的协同工作机制,本文旨在通过一系列实战案例,揭示构建高效、稳定且用户友好的动态网站的秘诀。从环境搭建到数据交互,再到最佳实践分享,本文为开发者提供了一条清晰的学习路径,助力其在LAMP(Linux, Apache, MySQL, PHP/Perl/Python)栈上实现技术飞跃。 ####