技术标签: 保姆式教程 开源免费 Web前端 wordpress php 个人开发 开源
目录
近期在学习开源方面的知识,收集了一些资料,打算通过开源的方式回馈给行业。因此搭建了一个导航网站,记录开源行业的相关信息。
网站截图如下:
本文记录了网站搭建的过程,手把手带你搭建起一个导航网站,内容供学习参考。
网上有很多开源免费的软件,例如WordPress、MeLog、Hexo、OneBlog等等,这些开源系统都能满足博客的需求。除了满足博客需求以外,还需要提供导航的功能。
因此最终选择了WordPress和WebStack,原因如下:
WordPress中文官网:适用于博客到大型网站的 CMS (内容管理系统) | WordPress.org China 简体中文
WebStack GitHub:GitHub - WebStackPage/WebStackPage.github.io: ️静态响应式网址导航网站 - webstack.cc
可以选择腾讯云、阿里云、华为云等国内的云厂商,当然如果家里有服务器的话也可以直接使用家里的服务器来搭建。
考虑到网站的功能非常的单一,购买一台最轻量的服务器就可以了。例如2核2G,40元/年;2核4G,74元/年。
最终我在腾讯云上可以购买一台入门级的服务器。
腾讯云网址:腾讯云 - 产业智变 云启未来
接下来就是安装所需要的软件Nginx、MariaDB、PHP。
MariaDB数据库管理系统是MySQL的一个分支。
网络上安装Nginx的文章很多,建议使用腾讯提供的安装方法最简单。
(1)创建nginx.repo文件
vi /etc/yum.repos.d/nginx.repo
(2)按 i切换至编辑模式,写入以下内容。
[nginx]
name = nginx repo
baseurl = https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck = 0
enabled = 1
(3)使用yum安装nginx
yum install -y nginx
(4)打开default.conf配置文件
vim /etc/nginx/conf.d/default.conf
(5)在server大括号中配置相关的信息。root为网站代码存放的目录,可以根据自己的情况进行修改。
server {
listen 80;
root /home/www;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
#
location / {
index index.php index.html index.htm;
}
#error_page 404 /404.html;
#redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
#pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
(6)启动Nginx
systemctl start nginx
(7)访问服务器地址 :http://公网的IP地址。如果出现以下界面,说明安装成功。
(1)检查是否已安装MariaDB。正常情况返回是空,说明没有预先安装。
rpm -qa | grep -i mariadb
有些服务器是自带安装了MariaDB的,则需要进行移除,否则可能造成版本冲突。如返回以下记录,则需要进行移除。
移除安装包明令:
yum -y remove 包名
(2)创建 MariaDB.repo 文件
vi /etc/yum.repos.d/MariaDB.repo
(3)写入文件内容
# MariaDB 10.4 CentOS repository list - created 2019-11-05 11:56 UTC
# http://downloads.mariadb.org/mariadb/repositories
[mariadb]
name = MariaDB
baseurl = https://mirrors.cloud.tencent.com/mariadb/yum/10.4/centos7-amd64
gpgkey=https://mirrors.cloud.tencent.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
(4)安装MariaDB。安装会耗时比较长,需要等待安装完毕后再操作。
yum -y install MariaDB-client MariaDB-server
(5)启动MariaDB服务。
systemctl start mariadb
(6)输入命令行:mysql,验证mysql是否安装成功
(1)更新PHP软件源
rpm -Uvh https://mirrors.cloud.tencent.com/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
(2)安装PHP的包
yum -y install mod_php72w.x86_64 php72w-cli.x86_64 php72w-common.x86_64 php72w-mysqlnd php72w-fpm.x86_64
(3)启动PHP-FPM服务
systemctl start php-fpm
(4)验证PHP环境是否成功
在网站根目录(我的根目录路径:/home/www1/)新建hello.php文件,内容输出“Hello World”
[root@VM-24-9-centos www1]# cat /home/www1/hello.php
<?php
echo "Hello World";
?>
[root@VM-24-9-centos www1]#
(5)运行PHP程序。如果运行成功则输出Hello World。
[root@VM-24-9-centos www1]# php /home/www1/hello.php
Hello World
(6)重启Nginx后,通过网页访问:http://公网IP地址/hello.php,可以验证运行PHP成功
systemctl restart nginx
到此为止,已经完成了LNMP(Linux、Nginx、MariaDB、PHP)的配置
WordPress安装的方法有很多样,我个人倾向于直接下载源码进行安装。可以直接下载中文版本,也可以下载英文版本后再更新语言安装包,这样界面也能成为中文的。
(1)创建数据库,例如名字为”wordpress”
CREATE DATABASE wordpress;
(2)创建新用户,例如账号为”user_wordpress”,密码为”111111”
CREATE USER 'user_wordpress'@'localhost' IDENTIFIED BY '111111';
(3)授权用户操作数据库的全部权限
GRANT ALL PRIVILEGES ON wordpress.* TO 'user_wordpress'@'localhost' IDENTIFIED BY '111111';
备注说明:
(1)如果遇到无法访问数据库的问题,大多数都是权限问题,检查账户权限;
(2)如果要重新安装WordPress,可以把原来的数据库删除。删除后重新按照上面的步骤配置数据库,否则会出现连接数据库出错。
(1)中文WordPress 5.9.2下载地址:下载 | WordPress.org China 简体中文
下载完毕后,通过FTP软件把代码上传到根目录
(2)解压文件”wordpress-5.9.2-zh_CN.zip”,并且把文件夹”wordpress”改名”a”。主要是不想文件夹名字太长,导致URL不好看。
unzip wordpress-5.9.2-zh_CN.zip
mv wordpress a
(1)进入WordPress安装目录,复制一份wp-config.php文件
cd /home/www1/a/
cp wp-config-sample.php wp-config.php
(2)修改wp-config.php文件,填入数据库信息,主要包括:数据库名字、用户、密码;
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'user_wordpress');
/** MySQL database password */
define('DB_PASSWORD', '111111');
/** MySQL hostname */
define('DB_HOST', 'localhost');
(3)网站访问:http://公网IP地址/wordpress代码文件夹/wp-admin/install.php,填写相关信息后进行安装。
(1)访问WebStack GitHub网址,下载源文件。GitHub - WebStackPage/WebStackPage.github.io: ️静态响应式网址导航网站 - webstack.cc️静态响应式网址导航网站 - webstack.cc. Contribute to WebStackPage/WebStackPage.github.io development by creating an account on GitHub.https://github.com/WebStackPage/WebStackPage.github.io
(2)解压到wordpress的“/wp-content/themes/”目录中
(3)访问管理台“外观”-“主题”,启用WebStack主题
(4)启用完毕之后,可以看到页面已经变成了WebStack主题,但里面内容是空的。接下来就开始学习如何录入数据,把空网站变成以下的样子。
备注:
(1)WebStack的代码中有很多我不需要的,例如:右上角的GitHub广告位、中间很多搜索栏目,这些都非常的冗余,因此做了不少的删减。
(2)删减的方法:页面上查看div元素和关键词,在“themes/webstack”文件夹中进行搜索,把关键的div结构内容直接删除就可以了。
进入管理台“主题设置”。
在WebStack中左侧导航是用到了系统中的“网址分类”。路径:网址-网址分类,通过配置网站分类可以控制左侧导航栏目。
每一个导航的内容,对应着是网址;通过添加网址,即可填充内容。例如填充CSDN,操作如下。
感谢开源软件,让我们都能自由免费的搭建起来喜欢的系统,感谢WordPress+WebStack的贡献者。
文章浏览阅读9.2k次。/** * 背景:在金额数据计算的时候会存在精度问题,以下是在涉及金额计算过程中Double相关的精度问题纪要。 * 由于此数值的实际使用精度在项目中只有两位,为了保留准确的精度多保留了其余的精度。因此仅供参考。 * 如果是其他的场景,需要根据情况自行调整具体的精度配置。 * * 问题:java1.8以后 关于集合stream.mapToDouble.sum计算精度缺失该如何解决? * 说明: * 如下两个Demo中:testK的正常计算结果应该是2.408631,但是通过sum计算完成后出._maptodouble
文章浏览阅读825次。我在本地创建了一个目录:/ home / Tegra.我在/ home / Tegra中创建了以下文件:hello_world.c hello_world_1.c hello_world_2.c每个文件都是逐步修改的.我还创建了补丁:diff -u hello_world.c hello_world_1.c > hello_world_1.patchdiff -u hello_world_1..._no subject line in ./message? at /usr/libexec/git-core/git-send-email line 7
文章浏览阅读248次。如果你想成为一名优秀的程序员,你还需要注意几点,如果你能让以下十项成为你的习惯,那么你就真的可以算是一名优秀的程序员了。_程序员是个好职业吗
文章浏览阅读1.3k次。1. serial 层的初始化以IMX6的串口驱动为例,文件在drivers/tty/serial/imx.c,初始化概述如下:module_init(imx_serial_init) -->uart_register_driver(&imx_reg); -->tty_set_operations(normal, &uart_ops); -->driver->ops = op; -->tty_register_..._linux serial
文章浏览阅读4.9k次,点赞6次,收藏83次。传送门:快来一起挖掘幸福感!——官方链接目录一、开发环境介绍二、数据的分析、处理2.1 数据初步分析●观察调查问卷●数据可视化处理2.2 数据的处理●对于特征的删除●对于特征的填充●对于特征的泛化以及特征工程●对于标签的修正2.3 数据的规范化2.3.1归一化处理2.3.2 one-hot 独热编码三、训练模型的选择、调优3.1 任务分析3.2模型选择3.3参数调优3.4 交叉验证四、实验结果展示五、探索历......_阿里云天池大赛幸福感预测
文章浏览阅读702次。I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要 USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32 标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。_嵌入式iic总线通讯协议
文章浏览阅读1k次,点赞19次,收藏19次。GP232RNL是一款高度集成的USB到UART桥接控制器,提供了一种简单的解决方案,可以使用最少的元器件和PCB空间,将RS232接口转换为USB接口。GP232RNL 包括-一个USB 2. 0全速功能控制器、USB收发器、振荡器、EEPROM和带有完整的调制解调器控制信号的异步串行数据总线(UART), 集成在SS0P28封装中,不需要其他外部USB元件。●集成1024位EEPROM,用于存储供应商ID、产品ID、序列号、电源描述符、版本号、产品描述字符串和CBUSI/O配置;_ft232rnl与ft232rl区别
文章浏览阅读1.5k次。系统准备centos7 镜像 CentOS-Userland-7-armv7hl-Minimal 1603-RaspberryPi3.img.xz 运行Win32DiskImager 软件, 将镜像写入内存卡中.ssh 连接树莓派在另一台linux设备或windows设备,ssh 连接树莓派. * windows 下载Xshell 软件连接. * linux(以ubuntu为例), ss_树莓派3b web server
文章浏览阅读441次。excel工具分类求和小妙招_excel将不同内容归类csdn
文章浏览阅读822次,点赞19次,收藏22次。大型网络系统内运行多种网络协议(TCP/IP、IPX/SPX和NETBEUA等),这些网络协议并非为安全通信设计。而其IP协议维系着整个TCP/IP协议的体系结构,除了数据链路层外,TCP/IP的所有协议的数据都是以IP数据报的形式传输的。TCP/IP协议族有两种IP版本:版本4(IPv4)和版本6(IPv6),IPv6是IPv4的后续版本,IPv6简化了IP头,其数据报更加灵活,同时IPv6还增加了对安全性的考虑。
文章浏览阅读1k次。WIN10删除微软拼音输入法,设置默认输入法为英文删除微软拼音输入法设置英文为默认输入方式删除微软拼音输入法在安装好自己熟悉的输入法后,我通常会将系统自带的微软拼音输入法删除,但系统又总是会自动重装上去。解决的办法很简单,删除以后,再手动添加一次微软拼音输入法,然后再一次删除,以后系统就不会再次自动重装了。设置英文为默认输入方式然后点高级键盘设置,选择默认输入法..._微软拼音输入法删除后没有纯英文输入怎么办
文章浏览阅读1.5k次。查看从库状态发现报错:show slave status\G;发现是主库上删除了一个数据库,但是从库上面没有,从库执行这个语句的时候失败报错。解决方法:停止从库stop slave;创建语句中所说的数据库,这里使用ABCcreate database ABC;启动从库start slave;问题解决。再次查看show slave status\G,发..._error 'duplicate partition name p20240222' on query. default database: 'wins