媛媛*小怪兽
If you have choices,choose the best! If you have no choices,do the best! 人生就是不断在学习路上进步的!!!!!!

一、配置环境LANMP(apache+php7+mysql)

安装apache

  1.安装
  yum -y install httpd
  2.开启apache服务
  systemctl start httpd.service
  3.设置apache服务开机启动
  systemctl enable httpd.service

  使用公网访问能看到apache就说明安装成功

 

安装php7

  1.安装php7
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  2. 通过云进行php和其他组件的安装
  yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64
  yum install php70w-fpm

安装mysql

 rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
查看
yum repolist enabled | grep "mysql.*-community.*"
安装mysql
yum -y install mysql-community-server
开机启动
systemctl enable mysqld
启动mysql服务
systemctl start mysqld
(如果重新
启动mysql服务没反应就删除安装包以及关于mysql所有的文件,重新安装mysql,因为有文件没有配置好

  如果提示依赖包错误,可以尝试以下命令删除:

  rpm -e 文件名 --nodeps

  删除mysql文件    find / -name mysql  查询后rm -rf 文件名

 远程访问

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

   FLUSH PRIVILEGES; 

不知道数据库密码

  1.编辑文件

  vi /etc/my.cnf

  2.找到以下内容,并填写skip-grant-tables ,保存 :wq 并退出,重启数据库(systemctl start mysqld),就可以免密码登录了!

  [mysqld]

  datadir=/var/lib/mysql

  socket=/var/lib/mysql/mysql.sock

  <strong>skip-grant-tables </strong>

  3.输入命令,exit退出数据库

  mysql -uroot

  mysql>use mysql;

  mysql>UPDATE user SET Password = password ( '你的密码' ) WHERE User = 'root';

  mysql> flush privileges ;

 

  mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;

 

     mysql>FLUSH PRIVILEGES; 

 

  4.进入编辑,删除skip-grant-tables,再重启数据库

  vi /etc/my.cnf

  5.切记关闭防火墙,云端开启3306端口,然后本地命令访问数据库和远程访问数据库

  

       

 

  进入数据库:mysql -u用户名 -p密码

   远程:

         

 

 二、配置FTP(多个用户权限)(橙色字体为配置多个用户账号步骤)

   1、FTP安装

  #安装
  yum install -y vsftpd

  #设置开机启动
  systemctl enable vsftpd.service

  #启动
  systemctl start vsftpd.service

  #停止
  systemctl stop vsftpd.service

  #查看状态
  systemctl status vsftpd.service

   2、配置FTP 

  #打开配置文件
  vim /etc/vsftpd/vsftpd.conf

  #显示行号
  :set number

  #修改配置 12 行
  anonymous_enable=NO

  #修改配置 33 行
  anon_mkdir_write_enable=YES

  #修改配置48行
  chown_uploads=YES

  #修改配置72行
  async_abor_enable=YES

  #修改配置82行
  ascii_upload_enable=YES

  #修改配置83行
  ascii_download_enable=YES

  #修改配置86行
  ftpd_banner=Welcome to blah FTP service.

  #修改配置100行
  chroot_local_user=YES   #添加下列内容到vsftpd.conf末尾   use_localtime=YES   listen_port=21   idle_session_timeout=300   guest_enable=YES   guest_username=vsftpd   user_config_dir=/etc/vsftpd/vconf   data_connection_timeout=1   virtual_use_local_privs=YES   pasv_min_port=40000   pasv_max_port=40010   accept_timeout=5   connect_timeout=1
  allow_writeable_chroot=YES

 3、建立用户文件

   #创建编辑用户文件
  vim /etc/vsftpd/virtusers
  #第一行为用户名,第二行为密码。不能使用root作为用户名 

  leo
  12345
  test
  test123

4、生成用户数据文件

  db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db

  #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取

  chmod 600 /etc/vsftpd/virtusers.db 

5、修改/etc/pam.d/vsftpd文件

  # 修改前先备份 

  cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak

  vi /etc/pam.d/vsftpd
  #先将配置文件中原有的 auth 及 account 的所有配置行均注释掉
  auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers 
  account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers

  # 如果系统为32位,上面改为lib

6.新建系统用户vsftpd,用户目录为/home/vsftpd

  #用户登录终端设为/bin/false(即:使之不能登录系统)
  useradd vsftpd -d /home/vsftpd -s /bin/false
  chown -R vsftpd:vsftpd /home/vsftpd

7、建立虚拟用户个人配置

  mkdir /etc/vsftpd/vconf
  cd /etc/vsftpd/vconf

  #这里建立虚拟用户leo配置文件
  touch leo 或者 (touch test)
  #编辑leo用户配置文件,内容如下,其他用户类似   vi leo 或者 (vi test)   local_root=/home/vsftpd/leo/ 或者 local_root=自己想要放置的目录   write_enable=YES   anon_world_readable_only=NO   anon_upload_enable=YES   anon_mkdir_write_enable=YES   anon_other_write_enable=YES

  #建立leo用户根目录
  mkdir -p /home/vsftpd/leo/   (自己想要放置的目录)
   
  
   (#增加用户username的根目录所有者为之前创建的vsftpd

    chown -R vsftpd:vsftpd  自己想要放置的目录

    chmod -R 777 自己想要放置的目录)

8、防火墙设置

  IPtables 的设置方式:
  vi /etc/sysconfig/iptables   #编辑iptables文件,添加如下内容,开启21端口   -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 40000:40010 -j ACCEPT

  firewall 的设置方式:
  firewall-cmd --zone=public --add-service=ftp --permanent

  firewall-cmd --zone=public --add-port=21/tcp --permanent
  firewall-cmd --zone=public --add-port=40000-40010/tcp --permanent 

9、重启vsftpd服务器

systemctl restart vsftpd.service

10、使用FTP工具连接测试

  这个时候,使用ftp的工具连接时,我们发现是可以连接的。传输文件的时候,会发现文件上传和下载都会出现

  500、503 、200等问题。这个时候,可以进行以下操作:

  方式一、关闭SELINUX

  #打开SELINUX配置文件
  vim /etc/selinux/config

  #修改配置参数
  #注释  
  SELINUX=enforcing

  #增加  
  SELINUX=disabled
  
  #修改完成后,需要重启!

  方式二、修改SELINUX

  setenforce 0 #暂时让SELinux进入Permissive模式

  #列出与ftp相关的设置
  getsebool -a|grep ftp


  #以下是显示出来的权限,off是关闭权限,on是打开权限。不同的机器显示的可能不一样。我看了我的显示的,和网上其他教程就不太一样
  ftp_home_dir --> off
  ftpd_anon_write --> off
  ftpd_connect_all_unreserved --> off
  ftpd_connect_db --> off
  ftpd_full_access --> off
  ftpd_use_cifs --> off
  ftpd_use_fusefs --> off
  ftpd_use_nfs --> off
  ftpd_use_passive_mode --> off
  httpd_can_connect_ftp --> off
  httpd_enable_ftp_server --> off
  sftpd_anon_write --> off
  sftpd_enable_homedirs --> off
  sftpd_full_access --> off
  sftpd_write_ssh_home --> off
  tftp_anon_write --> off
  tftp_home_dir --> off

  #将包含有 ftp_home_dir 和 ftpd_full_access 相关的都设置为 1

  setsebool -P ftp_home_dir 1
  setsebool -P allow_ftpd_anon_write 1   setsebool -P ftp_home_dir 1   setenforce 1 #进入Enforcing模式

  方式三、 SELINUX不对vsftp不做任何限制

  setsebool -P ftpd_connect_all_unreserved 1

  这个时候再使用工具连接,你发现,就可以正常的上传和下载文件了。

  如果还是有问题尝试给我们用户的ftp目录,设置一下操作权限

  chmod -R 775 /home/vsftpd/leo

安装FTP遇到的问题

  本地连接FTP:ftp localhost(免密模式下  使用anonymous登陆,无需密码)

    ------530状态登录失败,220表示服务正常,可以登陆;230表示登陆成功。

CentOS 7的ftp遇到530 Login incorrect.(阿里云)(去掉勾勾成为主动模式)

  

 

三、部署项目
1、用ip访问是否正常,并且查看此IP默认指向的文件夹位置在哪里
  一般是  /var/www/html

2、配置apache,vim /etc/httpd/conf/httpd.conf修改配置文件。

将#ServerName www.example.com:80            改为  ServerName 你的IP:80

3、配置完后进行测试查看。

[root@centos ~]# service httpd start
Redirecting to /bin/systemctl start  httpd.service
[root@centos ~]# service httpd status
Redirecting to /bin/systemctl status  httpd.service
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2017-06-05 15:57:34 CST; 5s ago

4、通过局域网中主机测试访问,若失败一般都是没有添加8080端口iptables访问规则,记得保存重启,如下,

[root@Centos ~]# iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

  [root@Centos ~]# service iptables save

  [root@Centos ~]# service iptables restart

  [root@Centos ~]# iptables -nL #查看规则表,看下添加成功否

5、添加完在做apache访问测试,成功则如下图所示。 IP:80

6、配置php

#测试php解析是否成功   目录位置就是apche指向的根目录,写好index.php后输入ip:80/index.php

 vi /var/www/html/index.php

 <?php

  phpinfo();

?>

7、PHP项目部署成功

8、绑定域名,绑定项目

vim /etc/httpd/conf/httpd.conf

添加

<VirtualHost *:80>

ServerName 你的域名

DocumentRoot 域名指向的文件夹位置

</VirtualHost>

重启httpd

systemctl restart httpd.service

 

部署项目遇到的问题: 

1、runtime没给权限

2、数据库账号密码问题以及框架内部 把application下面的 config.php文件默认模块home改为admin

 3、如果登录系统或者与数据库相连接运用报的错(F12查看错误)

  报  could not find driver (则有可能是你没安装 PDO_MYSQL扩展包)

       

  php -m 查看有没有pdo_mysql 拓展

  yum install php70w-mysqlnd.x86_64 装上,重启apache

   systemctl restart httpd.service

 

 

 

所有步骤参考链接:

安装LAMP环境---https://www.cnblogs.com/dennyxiao/p/9875600.html

忘记数据库密码---https://blog.csdn.net/qq_28347599/article/details/71915209

远程连接数据库---https://www.cnblogs.com/dennyxiao/p/8990047.html

安装FTP---https://www.cnblogs.com/leoxuan/p/8329998.html

安装FTP---https://www.inqingdao.cn/598.html

安装FTP---https://www.cnblogs.com/zhi-leaf/p/5983550.html

FTP遇到530登录问题---https://blog.csdn.net/qq_25123309/article/details/79715802

删除安装的rpm包---https://www.cnblogs.com/qianjilou/p/9069660.html

了解FTP知识:

https://blog.51cto.com/xiaocao13140/2125532

https://www.cnblogs.com/xuzhengzong/p/8645908.html

https://blog.csdn.net/wsyh12345678/article/details/83244940

 

部署项目参考链接

https://www.cnblogs.com/huanglinxin/p/8643635.html

https://blog.csdn.net/jinhangdev/article/details/81254748

posted on 2019-07-04 15:24  媛味君  阅读(1713)  评论(0编辑  收藏  举报