ubuntu搭建php环境记录二

第一篇:ubuntu环境搭建记录_lsswear的博客-CSDN博客

因为里面大概粗略的整理都是粘的其他人的路径,为防止页面丢失,我再整理下。

一、换源

原文件备份:sudo cp /etc/apt/sources.list  /etc/apt/sources.list.bak

换源:vi /etc/apt/sources.list

直接编辑就可

1、清华

ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

2、阿里

阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区

3、华为

华为开源镜像站_软件开发服务_华为云

4、腾讯

腾讯软件源

这个版本有点低……

二、软件更新

更新:sudo apt update

三、php安装

1、安装

更新:

sudo apt install software-properties-common

sudo add-apt-repository ppa:ondrej/php

sudo apt update

安装:

sudo apt-cache search php*

sudo apt-get install php*

扩展安装:sudo apt-get install php版本-扩展名

2、删除

sudo apt-get autoremove php*

sudo find /etc -name "*php*" |xargs rm -rf

清除dept列表

sudo apt purge 'dpkg -l | grep php | awk '{print $2}' |tr "\n" " "`

dpkg -l | grep php*

3、apt、dpkg

apt程序用于管理dep包,dpkg程序也用于管理dep包,dep包是debian系统的软件包,ubuntu是基于debian的二次开发版本。

所以删除之后,apt列表就找不到对应的软件包,需要重新更新。

四、apache2

1、安装

安装:sudo apt install apache2

其他命令: a2enmod, a2dismod, a2ensite, a2dissite, and a2enconf, a2disconf

2.4文档:https://httpd.apache.org/docs/2.4/

配置文件软连接:

ln -s /etc/apache2/sites-available/site1_com.conf /etc/apache2/sites-enabled/site1_com.conf

2、配置

1、配置文件说明

apache2.conf 配置项目文件路径访问权限

posts.conf 配置监听端口

sites-available/default-ssl.conf 配置项目,包括ssl证书、重写、反代理等。不是仅指这个文件,是指这文件夹下的文件。

实际运行为sites-enabled下的文件,所以需要为文件做软连接。

2、ssl

安装扩展 :a2enmod ssl

ssl证书用于域名加密,可申请免费的和收费的,有单域名和泛域名的区别。

证书申请就不说了,可以openssl自己编,虽然有些平台会因为没有颁发机构会不认,也可以在腾讯云或阿里上申请,都是由免费一年的,还可以监听提醒到期时间。

假设sslpath为ssl在服务器的位置。

sites-available/default-ssl.conf 文件夹下:

<VirtualHost *:443>
SSLEngine on  
SSLCertificateFile sslpath/xxxx //我们项目使用root开头的crt文件
SSLCertificateKeyFile sslpath/xxxxx  //key文件
SSLCertificateChainFile  sslpath/xxxxx //crt文件

apache2重启后生效。

3、rewrite

安装扩展 :a2enmod rewrite

sites-available/default-ssl.conf 文件夹下:

RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]

4、跨域

安装扩展 :a2enmod header

apache2.conf文件夹下:

Options Indexes FollowSymLinks
AllowOverride All
AcceptPathInfo on
Require all granted
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST,GET,OPTIONS"
Header always set Access-Control-Allow-Headers "Content-Type"

 其实反代理也能解决

5、反代理

安装扩展 :

a2enmod proxy

a2enmod proxy_http

<VirtualHost *:代理端口>  
        ProxyPass / http://x.x.x.x:被代理端口/
        ProxyPassReverse / http://x.x.x.x:被代理端口/
</VirtualHost>

五、mysql安装

1、安装

sudo apt install mysql-server-5.7

2、配置

默认配置查看:sudo cat /etc/mysql/debian.cnf

设置配置 sudo mysql_secure_installation

改root密码:

update mysql.user set authentication_string=PASSWORD('password'),plugin='mysql_native_password'  where user='root';

授权:grant all on *.* to root@'%' identified by 'password' with grant option;

权限刷新: flush privileges;

删除用户:drop user  '用户名'@'localhost或者%';

忘记密码处理:

sudo vim /etc/mysql/my.cnf

[mysqld]
skip-grant-tables=1

service mysql restart

输入mysql直接进入数据库,可改root密码。

use mysql;
update user set plugin='mysql_native_password' where user='root';
update user set authentication_string=password('password') where user='root';
flush privileges;
exit;

六、ftp

1、安装

sudo apt install vsftpd

2、配置

# ftp服务器将处于独立启动模式
listen=YES
listen_ipv6=NO
# 禁止匿名用户登录
anonymous_enable=NO
# 允许系统用户登录
local_enable=YES
# 启用可以修改文件的 FTP 命令
write_enable=YES
# 本地用户创建文件的 umask 值
local_umask=022
# 允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
dirmessage_enable=YES
use_localtime=YES
# 开启日记功能
xferlog_enable=YES
# 使用标准的20端口来连接ftp
connect_from_port_20=YES
# 使用标准日志格式
xferlog_std_format=YES
# 如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录
chroot_list_enable=YES
# 指定限制的用户文件
chroot_list_file=/etc/vsftpd/chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
# 设置PAM认证服务的配置文件名称,该文件保存在“/etc/pam.d/”目录下
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
utf8_filesystem=YES
# 设置一个本地用户登录后进入到的目录
local_root=/home/ftp
# ftp将检查userlist_file设置文件中指定的用户是否可以访问vsftpd服务器
userlist_enable=YES
# 只允许user_list文件中记录的ftp用户能登录vsftp服务,其他的ftp用户都不可以登录。
userlist_deny=NO
# 定义限制/允许用户登录的文件
userlist_file=/etc/vsftpd/allowed_users  
# ftp服务器将使用tcp_wrappers作为主机访问控制模式
tcp_wrappers=YES
# 连接ftp服务费使用的端口
listen_port=21

root用户编辑 /etc/ftpusers,注释掉root

设置root用户可直接登录:

vi /etc/ssh/sshd_config

# Authentication:
LoginGraceTime 120
#PermitRootLogin without-password
PermitRootLogin yes
StrictModes yes

service ssl restart

参考路径:ubuntu环境搭建记录_lsswear的博客-CSDN博客

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值