建站:一种适合做logo的英文字体——Cinzel Decorative
我觉得 Cinzel Decorative 字体比较好看。查看 Cinzel Decorative Bold Version 1.002
我觉得 Cinzel Decorative 字体比较好看。查看 Cinzel Decorative Bold Version 1.002
本博客在主题Hoot Ubix中使用的额外的CSS3代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
/************* 标题大小和颜色 *************/ h1, h2, h3, h4, h5, h6, .title { line-height: 2em; font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; color: #000; margin: 25px 0 15px; text-rendering: optimizelegibility; -ms-word-wrap: break-word; word-wrap: break-word; text-transform: none; } h1 { font-size: 2em; } h2 { font-size: 1.73333333em; } h3 { font-size: 1.46666667em; } h4 { font-size: 1.33333333em; } h5 { font-size: 1.2em; } h6 { font-size: 1.06666667em; } .title { font-size: 1.46666667em; } .title h1, .title h2, .title h3, .title h4, .title h5, .title h6 { font-size: inherit; } .titlefont { font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: normal; } /************* 边框颜色 *************/ hr { border-style: solid; border-width: 1px 0 0; clear: both; margin: 1.66666667em 0 1em; height: 0; color: #222; } td,tr{border:1px solid #eee;text-align:center;padding:10px;} /************* 引用 *************/ .post blockquote { font: 15px/20px italic Times, serif; color: #000000; padding: 18px; background-color: #FFFFF0; border-left: 15px solid #8B5742; margin: 20px; -moz-box-shadow:3px 5px 15px #333333; -webkit-box-shadow:3px 5px 15px #333333; box-shadow:3px 5px 15px #333333; background-image: url(https://www.yaxi.net/wp-content/themes/wing/img/quote_close.png); background-position: 15px 10px; background-repeat: no-repeat; text-indent: 23px; line-height: 1.8; } .post blockquote p { text-indent:23px; } .post blockquote p:last-child{ background-image: url(https://www.yaxi.net/wp-content/themes/wing/img/quote_close.png); background-repeat: no-repeat; background-position: bottom right; } |
引用部分的效果:
这是引用。左侧是咖啡色加粗边框,主体是淡黄色底纹,整个引用部分带阴影。
七牛云,又拍云等云存储公司,可以让大家把多媒体文件放在他们的云服务器上,然后在网站主自己的网站上调用。从功能上,其实还是很强大的。但是,不友好。
又拍云我很久没有用过了,所以不做评价了。
七牛云还偶尔用一下,这里做一个比较。
我是用WordPress搭建的博客,七牛云的文件要想被WordPress调用,无非两种方法。第一种,先上传文件到七牛云后复制外链(我现在使用的方法),第二种,用特别垃圾的“我是水煮鱼”开发的垃圾插件来实现(如果谁还在用就赶紧脱钩,以后绝对会后悔,顺便向七牛云举报一下“我是水煮鱼”,不要让他再害人了)。
明显的,以上两种方法都不方便。直到我遇见了Cloudinary。
Cloudinary也是一家云存储公司。它们提供了类似于七牛云的云存储功能,而且开发了非常强大的WordPress插件。安装插件后,就可以连接自己的Cloudinary了,配置非常简单,傻瓜式连接。
连接后,按照默认设置,博客的现有媒体会自动传输到Cloudinary并自动替换文章内媒体链接为Cloudinary中的链接。同时,本地文件依然存在。当停用插件后,文章内的媒体文件链接又回归到本地媒体文件,无缝切换。
在文件中添加媒体时,可以选择Cloudinary中的文件,或者直接上传,Cloudinary之后也会同步过去。非常方便。
如此一来,网站会节省大量流量,博客服务器也不需要读取大量文件,网站速度也会快一点。
综合来说,好用。
唯一不足的是,Cloudinary免费版存储空间有限,每个月流量也有限,因此更适合于媒体文件不太大的网站。
相信不少博主的WordPress都搭建在虚拟主机中,一般是Linux虚拟主机。但是,我们没有办法对虚拟主机进行控制,毕竟不是独立服务器。
我在西部数码搭建的博客,linux主机,可以方便的开启SSL,但要做到完美就没那么简单了。
开启SSL后,除了在后台的常规设置中将网站网址的http换成https之外,还必须在.htaccess文件中增加301跳转。
WordPress安装后的默认.htaccess文件内容是这样的,这是伪静态跳转,也就是WordPress中设置“固定链接”样式时,就通过这个文件进行链接跳转:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# BEGIN WordPress # 在`BEGIN WordPress`与`END WordPress`之间的指令(行)是 # 动态生成的,只应被WordPress过滤器修改。 # 任何对标记之间的指令的修改都会被覆盖。 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress |
我的网站增加了https跳转后的.htaccess文件如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# BEGIN WordPress # 在`BEGIN WordPress`与`END WordPress`之间的指令(行)是 # 动态生成的,只应被WordPress过滤器修改。 # 任何对标记之间的指令的修改都会被覆盖。 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] #开始http到https的跳转 RewriteCond %{HTTP:From-Https} !^on$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?taho.space$ [NC] RewriteRule ^(.*)$ https://www.taho.space/$1 [R=301,L] </IfModule> # END WordPress |
如果仅仅是这样,WordPress只是可以通过https打开了,但css、js等文件依然是http格式的,会出现网站板式错乱,加载错误等各种问题。
因此,还需要在wp-config.php文件中增加一些内容进行说明。值得注意的是,增加内容的位置很关键。必须放在 require_once( ABSPATH . 'wp-settings.php' );
以上。如下所示:
1 2 3 4 5 |
/** 设置WordPress变量和包含文件。 */ $_SERVER['HTTPS']='on'; define('WP_HOME','https://www.taho.space'); define('WP_SITEURL','https://www.taho.space'); require_once( ABSPATH . 'wp-settings.php' ); |
把里面的域名换成自己的域名即可。
或者用以下代码,就不需要再设置自己的域名了,比较方便:
1 2 3 4 5 |
/** 设置WordPress变量和包含文件。 */ $_SERVER['HTTPS']='on'; define('WP_HOME', 'https://'.$_SERVER['HTTP_HOST']); define('WP_SITEURL', 'https://'.$_SERVER['HTTP_HOST']); require_once( ABSPATH . 'wp-settings.php' ); |
注意,说明一下这段代码的含义:
这下,网站访问应该就没问题了,前台后台都正常了。
前天晚上,本博客在更新一篇文章之后不久就中病毒了。
中毒症状:
输入本博客域名后,会自动跳转到奇怪的网站,而且不断地跳转到新的网站。
跳转到的第一个网站会显示“robot check”之类,如果点击“Accept”,就会跳转到其他网站,不断跳转。这些网站没有什么实质性内容,反而导致浏览器卡顿。最后发现在我的电脑中自动安装了Opera浏览器(还是Mac系统中,看来让Mac中毒也不是那么难)。奇怪的是,安装了Opera之后,似乎也没有见到其他软件被安装,杀毒软件也没有查出来。禁用插件也没作用,所以不是插件的问题。
然后我借用Google的安全工具检查网站,居然显示没有问题。看来这个病毒(或者叫木马更为合适)还挺狡猾。
然后我给主机商提交了工单,主机商回复说确实看到网站会自动跳转,让我更换主题试一下,如果再出问题需要收费杀毒。
没想到还要收费……
那么我先试试更换主题吧。
更换主题之后,网站恢复正常。于是我便认为,是刚才的主题文件有问题。
但正当我高兴之余,几分钟之后,网站又出现了自动跳转。看来没那么简单。
因为主机商要收费,于是我打算自己修复网站。
先修改一下默认页面,跳转到index.html而不是index.php,以免访问的人中病毒,那就太坑了。
然后备份数据库!
因为已经确定不是插件的问题,所以就从主题入手。
将themes文件夹修改为themes.old,重新建立themes文件夹,放入当前使用的主题,跳转依然出现。
再修改主题为默认主题twentytwelve,放入之后发现跳转停止。此时不能确定是木马没起作用,还是像之前一样过几分钟感染之后再起作用。果然,过了一会又出问题了。
看来不仅仅是主题文件夹出问题那么简单。但是,花时间一个一个找,真的很不划算。于是我转换思路。
思路和探索过程:
一、新装wordpress,调用旧数据库。
首先,将wwwroot文件夹整个重命名,新建wwwroot,重新搭建网站,使用旧数据库。网站访问正常,一开始没问题,但过一会就出错。看来是数据库出问题了。
二、新装wordpress,新建数据库看会不会跳转。
然后,恢复数据库,重新再搭建网站,使用新表头,网站正常,再无问题。
看来是旧数据库某个地方出问题了。
ps:由于网站使用了SSL,但新搭建的wordpress是没开通SSL,而wp_options中的网站链接都是https的,所以内容显示错乱,后台登陆不上,问题多多。
这些东西搞得我头大,因为一直不想放弃各种插件、主题设置等数据库内容,但东西太多了,包括访问统计等等,所以想着各种修复数据库。
然后折腾啊折腾,头昏脑胀。
休息了一下之后,转换了新思路:
但,先关掉SSL再说。
三、关掉SSL,新装wordpress,新建数据库后,再修改关键的几个旧数据库到新数据库中(即删掉旧数据表,修改旧数据表的表名为新数据表表名),其余表保持不变。
这下清爽了,访问正常,数据正常,再无跳转。
然后将wp-content下的plugins,uploads文件夹剪切过来,网站内容、附件调用都正常了。
但是,还有很多图片和附件是https://链接。
纠结了一下是继续用SSL,还是保持现状。最后决定保持现状算了。
虽然SSL是所谓更安全的,但我的博客没有什么敏感的重要的东西,暂时就这样用着,以后需要再开。因为我一直觉得SSL用起来太复杂,还要做SSL跳转,维护起来也麻烦,累人。
当然,这样维护之后,出现的问题就是,很多设置都得重新改了。不过无所谓,慢慢来。
这次维护,我总结经验如下:
每三天备份一次数据库和网站,出问题后直接还原,省时省力。
另外,少装一些奇怪的主题、插件,少用一些奇怪的代码,它们也许好用,但也许有毒。
谨记之。
有的WordPress主题在页面底部只显示“上一页”,“下一页”,或者“Older”、“Newer”等,没有数字形式的分页。
这里借用PageNavi插件可以很方便的实现,但需要给主题函数文件加入一行代码 。
点击外观->编辑,打开模板函数页:functions.php;
不同主题显示内容可能不同,大致上就搜索“next_posts_link”和“previous_posts_link”,把这两处的 <div>XXXXXX</div> 删掉,替换成 <?php wp_pagenavi(); ?> ,如下图:
保存文件即可。
这样就在网站底部出现了分页导航栏了。
参考文章:
https://yfdxs.com/wp-pagenavi.html
https://www.ruikeedu.com/317.html
WP QuickLaTeX 只是用图片展现公式,效果一般。而且WP QuickLaTeX会将公式提前生成图片,图片存储在 /wp-content/ql-cache,导致该文件夹文件居多,影响访问。如果关掉公式缓存,公式图片又展现太慢,甚至一直加载不上。
替换为Simple Mathjax 后,原WP QuickLaTeX 插件中的“$$”和“\[”等词汇都不影响展现。
比如行内公式:
本行内公式用“$$”实现:$c=\sqrt{(a^2+b^2)}$,version3没有问题,version2有问题。
本行内公式用“ \ ( ”实现:\(c=\sqrt{(a^2+b^2)}\),没有问题。
而下面的公式是行间公式,居中显示,用“\[”实现。
\[c=\sqrt{(a^2+b^2)}\]
另外,公式支持右键菜单,可以复制为Latex代码等,很方便。
另外,还有一个插件,这篇文章讲解了如何配置使用:WordPress LaTeX插件更换记录 。这个插件对以前的WP QuickLaTeX 兼容性差,需要修改一些代码,我不是很推荐。
刚才配置了SSL的301重定向,修改了.htaccess文件,然后发现除了主页可以正常打开,跳转也正常之外,其余页面,包括文章页,打开都只显示“The requested URL was not found on this server”。
于是查找问题,才知道我配置时删除了以前的PHP跳转规则,本站的.htaccess文件全文如下,供有类似问题的网站主参考。
1 2 3 4 5 6 7 8 9 10 11 12 |
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] RewriteCond %{HTTP:From-Https} !^on$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?taho.space$ [NC] # 将taho.space和www.taho.space跳转到https://www.taho.space,防止apache子站继承上级目录.htaccess受影响 RewriteCond %{HTTP_HOST} ^(www.)?taho.space/$ [NC] RewriteRule ^(.*)$ https://www.taho.space/$1 [R=301,L] </IfModule> |
今天偶然看到可以利用可道云来管理网站的文件。可道云不需要数据库,因此搭建非常简单。搭建的方法也很简单。
首先,到可道云官网下载最新的网站程序,把该程序上传到网站的根目录下。我这里给文件夹起名为 kod。
然后通过自己的网站访问,比如 https://abc.com/kod/
初次访问让设置管理员密码。设置后就可以登陆了。然后会发现管理起来就像是在windows里一样方便。
给网站加SSL安全证书是提高访问安全性的必由之路,但是加了SSL之后发现WordPress的CSS无法加载。原因很简单,就是WordPress内调的函数可能使用了http开始的链接,解决办法一招搞定:
首先在后台的“设置”->“常规”处,把网站URL的http换成https(我没有验证这一步是否为必须),然后打开网站根目录下的 wp-config.php 文件,加入以下代码
1 2 3 |
$_SERVER[\'HTTPS\'] = \'on\'; define(\'FORCE_SSL_LOGIN\', true); define(\'FORCE_SSL_ADMIN\', true); |
举例:
我是这样就成功了。
网上还有其他办法,如果上述办法不行可以试试:
其他方法:更换js/css路径为相对路径
找到函数文件 function.php,添加以下内容
1 2 3 4 5 6 7 8 9 |
add_filter(\'script_loader_src\', \'agnostic_script_loader_src\', 20,2); function agnostic_script_loader_src($src, $handle) { return preg_replace(\'/^(http|https):/\', \'\', $src); } add_filter(\'style_loader_src\', \'agnostic_style_loader_src\', 20,2); function agnostic_style_loader_src($src, $handle) { return preg_replace(\'/^(http|https):/\', \'\', $src); } |
备注:
强制把http转换为https,可以使用.htaccess文件实现。在该文件中添加以下语句:
1 2 3 |
RewriteCond %{HTTP:From-Https} !^on$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?abc.com$ [NC] # abc是你的域名。目的是将abc.com和www.abc.com跳转到https://www.abc.com,防止apache子站继承上级目录.htaccess受影响 RewriteRule ^(.*)$ https://abc.com/$1 [R=301,L] |
注意将abc.com换成自己的域名。
参考资料:
https://www.simcf.cc/88.html/
https://blog.csdn.net/qq_28629495/article/details/67639597
部署https(ssl)后设置301跳转将http跳转到https
(自2008 至 2021的所有文章,除标明“转载”外)版权©归 TAHO 所有 | 转载请务必注明出处 | 联系TAHO