写在前面的话
申请到了甲骨文云的免费4核24G的服务器,如果没什么问题的话,等阿里云到期后打算搬过去作为长期据点。
P.S. 经济形势算是彻底呜呼哀哉了,长期时间、大比例降杠杆已成必然,要做好开源节流。
~~~更新后续~~~
!!!一周后发现甲骨文云未经通知回收了我的实例。经此一役,对Oracle Cloud失去信任,不建议使用甲骨文云服务。
Install WordPress with LAMP on Oracle Linux (OCI)
准备工作
-注册Oracle Cloud免费云
-创建实例
-配置网关放行80和443端口
实例磁盘配置及挂载
#查看实例是否有数据盘 sudo fdisk -l #查看数据盘是否分区格式化 sudo lsblk #对数据盘分区 #如有必要,切换root操作 sudo -i #挂载网站数据 fdisk /dev/sdb n p 1 wq #对数据盘格式化 mkfs.ext4 /dev/sdb1 #查看挂载情况 df -ahT #建立挂载目录 mkdir /var/www/html #添加启动挂载 sudo sh -c echo '/dev/sdb1 /var/www/html ext4 defaults 0 0'>>/etc/fstab #挂载分区 mount -a #更新 sudo yum -y update
安装Apache
#查看系统版本 cat /etc/redhat-release #查看当前防火墙的状态 sudo systemctl status firewalld #临时关闭防火墙(如有必要) #sudo systemctl stop firewalld #查看SELinux的当前状态 #getenforce #临时关闭SELinux(如有必要) #sudo setenforce 0 #安装Apache服务 sudo yum install httpd #查看Apache的版本号 httpd -v #启动Apache服务并设置服务开机自启动 sudo systemctl start httpd sudo systemctl enable httpd sudo systemctl status httpd 在iptables中放行http和https端口 sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --permanent --add-port=443/tcp sudo firewall-cmd --reload #如果使用SELinux,它默认会阻止HTTP服务器进行网络连接,设置apache可以连接网络。 sudo setsebool -P httpd_can_network_connect true #配置Apache /etc/httpd/conf/httpd.conf #配置方法请参见鸟哥的Linux私房菜 #添加启动挂载 sudo sh -c echo '/dev/sdb1 /var/www/html ext4 defaults 0 0'>>/etc/fstab #挂载分区 mount -a systemctl daemon-reload
调整apache网站目录的权限
#查看apache的用户组和用户名 ps -ef | grep apache #修改权限 sudo chown -R apache:apache /var/www/html cd /var/www sudo find . -type d -exec sudo chmod 0755 {} \; sudo find . -type f -exec sudo chmod 0644 {} \; #设置网站目录权限为755,只有root用户对目录拥有读写执行的权限,用户组有读执行权限,其它用户有读执行权限。 #设置网站文件权限为644,只有root用户对网站文件有更改的权限,http服务器只有读取文件的权限,其它用户有读执行权限。 #改变SELinux文件属性即修改文件的安全上下文 sudo chcon -t httpd_sys_content_t /var/www/html -R sudo chcon -t httpd_sys_rw_content_t /var/www/html -R
安装mysql
#到Mysql的yum仓库查看相应的版本信息https://dev.mysql.com/downloads/repo/yum/ #下载对应的RPM package oracle linux 8: sudo wget https://repo.mysql.com//mysql80-community-release-el8-9.noarch.rpm oracle linux 9: sudo wget https://repo.mysql.com//mysql80-community-release-el9-5.noarch.rpm #安装RPM package oracle linux 8: sudo yum -y install mysql80-community-release-el8-9.noarch.rpm oracle linux 9: sudo yum -y install mysql80-community-release-el9-5.noarch.rpm #添加Mysql Yum仓到系统的仓库列表 yum repolist enabled | grep mysql.*-community #(仅)Oracle Linux 8包含一个默认启用的MySQL模块,除非该模块被禁用,否则它会屏蔽MySQL存储库提供的包。 #yum module disable mysql #安装mysql sudo yum install mysql-community-server sudo systemctl start mysqld sudo systemctl enable mysqld sudo systemctl status mysqld #获取MySQL的初始密码 sudo grep "password" /var/log/mysqld.log #配置MySQL的安全性 sudo mysql_secure_installation #>重置root账号的密码。(需输入上一步的初始密码) #>输入Y删除匿名用户账号。 #>输入Y禁止root账号远程登录。 #>输入Y删除test库以及对test库的访问权限。 #>输入Y重新加载授权表。 #重启服务mysql sudo systemctl restart mysqld
安装PHP
sudo yum install php sudo yum install -y php-mysqlnd php-zip php-gd php-intl sudo yum install php-imagick sudo systemctl restart httpd #查看php版本及php.ini配置文件的位置 php -v php --ini #编辑PHP配置文件php.ini vim /etc/php.ini #改变文件上传限值(分别是最大执行时间、最大内存限制、最大POST数据量、最大文件上传大小) max_execution_time = 300 memory_limit = 512M post_max_size = 128M upload_max_filesize = 128M #重启php sudo systemctl restart php-fpm #在Apache网站根目录创建测试文件 sudo sh -c 'echo "<!--?php phpinfo(); ?-->" > /var/www/html/phpinfo.php' #输入http://实例公网IP/phpinfo.php #安全起见,测试后删除phpinfo.php。
配置数据库
sudo mysql -u root -p 例如: #创建一个名叫wordpress_db的数据库; #创建一个名为wordpress_user的用户,密码为password,连接到wordpress_db数据库; #刷新权限; #退出数据库 > CREATE DATABASE wordpress_db; > CREATE USER wordpress_user@'localhost' IDENTIFIED BY 'password'; > GRANT ALL PRIVILEGES ON wordpress_user.* TO 'wordpress_user'@'localhost'; > FLUSH PRIVILEGES; > EXIT #若用phpmyadmin,需改一下密码方式。 sudo mysql -u root -p alter user 'wordpress_user'@'localhost' identified with mysql_native_password by 'password'; #重启服务mysql sudo systemctl restart mysqld
安装phpMyadmin
#用于管理Mysql,导入导出修改替换等操作。 #创建phpMyAdmin数据存放目录 sudo mkdir -p /var/www/html/phpmyadmin #返回系统主目录并下载phpMyAdmin压缩包 #查看版本https://www.phpmyadmin.net/downloads cd sudo wget --no-check-certificate https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.zip #安装unzip工具并解压phpMyAdmin压缩包 sudo yum install -y unzip sudo unzip phpMyAdmin-5.2.1-all-languages #复制phpMyAdmin文件到准备好的数据存放目录 sudo mv phpMyAdmin-5.2.1-all-languages/* /var/www/html/phpmyadmin #http://实例公网 IP/phpmyadmin,访问phpMyAdmin登录页面