从LAMP搭建到项目部署_tp5

小编之前是linux小白 一步一步弄好用了一周希望可以帮到你们
Linux命令不懂就百度(度娘牛逼)
一、安装Apache
1.1 安装apache
yum install httpd httpd-devel
1.2 启动apache服务
systemctl start httpd
systemctl restart httpd
1.3 设置httpd服务开机启动
systemctl enable httpd
1.4 查看服务状态
systemctl status httpd
1.5 防火墙设置开启80端口
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
1.6确认80端口监听中
yum install net-tools
netstat -tulp//确认[::]:http的state处在listen中
1.7 查服务器IP
ip addr
1.8浏览器登陆
使用浏览器登陆1.7中的IP地址,确认Apache服务器正确运行中http://ip
出现你的服务器商就好了
二、安装mysql
2.1安装mysql
yum install mariadb mariadb-server mariadb-libs mariadb-devel
2.2 开启mysql服务,并设置开机启动,检查mysql状态
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
netstat -tulp//确认0.0.0.0:mysql的state处在listen中
2.3数据库安全设置
mysql_secure_installation
需要设置以下几个问题:
Enter current password for (enter for none)/输入当前root用户密码(无密码直接按回车)
Set root password?[Y/n]//是否设置root密码(建议按Y)New password://请输入新的密码
Re-enter new password://请确认新密码
Remove anonymous users?[Y/n]//是否删除匿名用户(建议按Y)
Disallow root login remotely? [Y/n]//是否拒绝root用户远程链接(建议按n)
Remove test database and access to it? [Y/n] //是否删除test数据库(建议按Y)
Reload privilege tables now? [Y/n]//是否立即更新权限表(建议按Y)
2.4 登陆数据库测试
mysql -u root -p
Enter password://输入root用户密码,进入即可(退出数据库的命令是exit)
2.5开放远程连接
iptables -L -n//查看防火墙是否开放3306端口
没有开放3306端口则进行如下操作
firewall-cmd --permanent --zone=public --add-port=3306/tcp
若已开放3306端口则直接进入数据库进行如下操作
use mysql;
update user set host=’%’ where user=’root’ limit 1;
grant all privileges on . to ‘root’@’%’ identified by ‘root’ with grant option;//identified by后写实际的root密码,记得带引号
flush privileges;
三、安装PHP
3.1 安装php
yum -y install php
3.2 将php与mysql关联起来
yum install php-mysql
3.3安装常用PHP模块(用不到就跳过)
yum install -y php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath
3.4测试PHP
cd /var/www/html //这是PHP的网站目录,项目就放在这下面
vi index.php //创建并编辑index.php文件,在文件中使用phpinfo函数,保存退出
systemctl restart httpd //重启Apache服务器
而后使用浏览器访问服务器IP,查看PHP环境
四、搭建FTP服务器
4.0关闭selinux(准备工作)
vi /etc/selinux/config
将SELINUX=enforcing改成SELINUX=disabled
保存
setenforce 0 //配置立即生效
4.1安装vsftp
yum install -y vsftpd
4.2启动服务
chkconfig vsftpd on
service vsftpd restart
netstat -antup | grep ftp //查看ftp服务端口
service vsftpd restart //重启服务,不能省
4.3修改主配置文件
vi /etc/vsftpd/vsftpd.conf
将anonymous_enable=YES改成anonymous_enable=NO
将chroot_local_user=YES的注释解开
保存
4.4创建ftp用户
useradd -s /sbin/nologin -d /var/www/html qwerty123 //创建用户名为qwerty123的用户
passwd qwerty123 //为用户qwerty123设置密码
chmod o+w /var/www/html/ //给主目录修改权限
4.5防火墙开放20、21端口
firewall-cmd --permanent --zone=public --add-port=20/tcp
firewall-cmd --permanent --zone=public --add-port=21/tcp
firewall-cmd --reload
4.6使用filezilla连接
输入服务器IP地址、用户名、密码,点击‘连接’,如果可以建立连接但是不能读取列表,则在filezilla进行如下操作:
点击菜单栏“文件”->“站点管理器”,在“常规”选项卡中填入服务器IP地址,登陆类型选择“正常”,填入用户名、密码,在“传输设置”选项卡中把传输模式从“默认”设为“主动”或“被动”,再点击“连接”即可。

到此!!!服务器配置完成 那么就下来就是要配置我们的项目了。
本小编用的是tp5项目那咱们就以tp项目为主来开始部署项目(细节很重要)

以lampp环境为例子,其他环境只是配置文件的路径不同。
1 cd /etc/httpd/conf (这个是Apache 总的配置文件)

Vi /etc/httpd/conf/httpd.conf(打开)
i进入编辑状态 esc键 退出编辑
#Include etc/extra/httpd-vhosts.conf(没有自己创建一个)将虚拟路径的注释去掉。
使httpd-vhosts.conf文件起作用,或者直接在httpd.conf中写配置也可以,但不建议这么做。
 Listen 80
在# ServerName www.example.com:80 下边
添加ServerName localhost:80(访问到本地路径)
AllowOverride none改为 AllowOverride All (不知道那个没关系 全改就对了)
DocumentRoot “/var/www” 你的项目路径,该不该看你的项目放哪!!放哪该那!!
最后是小编自己添加的
Include extra/httpd-vhosts.conf(虚拟目录 如果上边那个注释你去掉了#就不用添加)
LoadModule speling_module modules/mod_speling.so(开启重写)
CheckSpelling On
退出编辑状态 :wq 保存退出
当你添加了Include extra/httpd-vhosts.conf
那么你需要再conf同目录下添加extra文件(添加文件命令百度查)之后再cd进入
Vim httpd-vhosts.conf(创建的一个conf的文本文档)之后我们就可以添加虚拟目录了
输入
#项目目录
AllowOverride All
Options Indexes FollowSymLinks
Require all granted


DocumentRoot “/var/www/book/public” #这里是我的项目目录看你的情况而定
ServerName xs.021xb.com #小编的域名
ErrorLog “logs/dummy-host.example.com-error_log”
CustomLog “logs/dummy-host.example.com-access_log” common

好的保存退出
注意要时常查看httpd启动状态
项目算是可以了.之后小编还遇到了
mkdir(): permission denied (文件上传时出的问题)
百度说是没有给www权限之后改了好多都不行
1.chown -R 用户名 /var/www/html 用户名(apache)
正解,apache有时候用户名就是apache
如果不行的话
1.cut -d : -f 1 /etc/passwd
之后看到了你的所有用户名
root

ftp
……
mysql
Apache

你可能感兴趣的:(安装工具,linux,thinkphp,lamp)