记一次配置lnmp环境放Typecho
分类:技术相关 阅读量: 723 次

记一次配置lnmp环境放Typecho

分类:技术相关 阅读量: 723 次

闲着也是闲着,昨晚上无聊,又把256MB的小机重装了,准备搞上SSR的同时放个网站…

SSH.jpg


又被暴力破解ssh

大晚上一登录就看到这个…1300多次登录失败。不过无所谓了,顺便再给大家推荐一个网站,在这上面输入密码可以查看暴力破解你密码所花费的时间(仅供娱乐,但还是有借鉴性的)。

密码破解时间测试

网址是:https://howsecureismypassword.net
而我把我VPS的密码放上去后,试出来的结果如下:

TestResult.jpg

大概是145万亿年(´∀`*)。基本上买过VPS的都知道,主机自带的密码都是类似于sA8F7x44rgZO2q1eBY这样的字母大小写和数字混合,vultr貌似还有英文符号。所以使用默认的密码安全性极高的。

注:在那个网页测试密码的时候可以稍微改动几个字符,避免输入你真正的原密码,以防万一。

配置环境

重装之后,搭建好了SSR并搞好BBR。做网站,确保80端口没有被别的程序占用,其次是443端口https要用,还有3306,数据库要用。借用军哥的lnmp一键脚本,配置好了nginx、mysql和php(花了81分钟!)。时间较久,还好我有前车之鉴,睡前挂上了任务让他自己工作。这里要说一下screen命令。

screen命令

举个例子,仅仅是个例子:你通过ssh连接上了VPS,这个时候你就相当于创建了一个进程,你对VPS发送的各种命令就相当于你创建的这个进程向VPS发送的各种命令,而你一旦断开了与VPS的ssh连接,这个进程也就关闭了,进程都关闭了,它还会执行程序嘛?你执行了一个脚本,你以为他是自己再跑,其实他是以你的身份执行的,你自己人都走了,它还会帮你干活?所以说,很多时候各种问题出错就是因为不小心或者等不及断开了与VPS的连接,然后重新连接上什么都没了,又重新搞,结果因为之前命令运行的残余文件或者进程导致冲突,最终失败…而screen命令相当于又另外创建了一个临时的进程,你在这个进程里执行命令,然后你离开之后,screen会继续帮你看着这里…大概就是这个意思…
首先你要下载安装这个小程序,很简单yum install screen或者apt-get install screen,期间会让你确认,输入y并回车就OK啦。

然后输入screen -S 123
这样你就创建了一个名字为123的临时进程,接着你可以执行一些命令了,比如:一键lnmp。输入完你就可以断开连接让它自己跑了。
等过一段时间你觉得它跑完了或者你想上去看看,只需要登录上ssh,输入screen -r 123,就可以看到名字为123的临时进程中程序正在运行的结果了。

过程中让选择数据库MySQL版本,我小机器,用5.5,需要注意的是MySQL 5.6,5.7及MariaDB 10必须在1G以上内存的更高配置上才能选择!

设置好数据库密码后,询问是否需要启用MySQL InnoDB,默认让它开启吧。然后问我想要哪个php版本,我选了7.1(注:有些东西并不是越新越好,就像win10和win7,有些软件并不能完美兼容win10)。内存优化我就没开,我怕它把我的SSR给杀掉。

设置站点

我256MB的小机绑的有我<ha.shiyu.pro>。按照lnmp官网的添加虚拟机的教程,我加了一个网站,搞好了域名、数据库、https、伪静态等。

完美主义者(〜 ̄▽ ̄)〜,想要在浏览器地址栏输入VPS的IP直接跳转到域名操作:

先找到nginx的主配置文件,在/usr/local/nginx/conf/nginx.conf

然后在nginx文件的中下部分,也就是65行,server_name _;的下面添加一个301跳转:return 301 https://ha.shiyu.pro$request_uri;

NginxConf.jpg

这个配置文件是default目录的,也就是直接输入IP进去的那个网站的,给它加个301跳转,让它跳转到我添加的这个https://ha.shiyu.pro

可是,我网站在添加的时候申请了https证书,https不用白不用呀,现在通过http://ha.shiyu.pro和https://ha.shiyu.pro都能访问站点。我让它的http全部跳转到https,找到网站的配置文件在/usr/local/nginx/conf/vhost/ha.shiyu.pro.conf,同样给它加个301跳转在配置文件的第6行,server_name ha.shiyu.pro;的下面,return 301 https://ha.shiyu.pro$request_uri;

NginxConf2.jpg

OK了,之后再链接上VPS输入/etc/init.d/nginx restart重启一下nginx就可以啦。添加301跳转的时候注意,一定要在server_name那一行的下面新开一行写,不然重启nginx会报错。

现在不论是输入IP还是域名,都会进去我https的域名了。https在谷歌浏览器中会出现一个小绿锁,表示安全。而且没有https,用http,在某些情况下会被别人插入广告。我这个博客目前是没有任何广告的,但是一次我在浙江那边的时候,一次吃饭连着店家的WIFI上我自己的博客,居然在浏览器下边出现了广告…

重启nginx只会出现这种情况:
NginxReboot.jpg

出现别的情况就是报错,说明有配置文件你改错了。

安装Typecho

Typecho是一个知名的博客程序,以简洁著称,官网<typecho.org>。先下载博客程序,然后解压出来的有一个build目录,复制build目录内的文件和文件夹到我的网站目录/home/wwwroot/ha.shiyu.pro/里面,然后直接访问我的网址ha.shiyu.pro进行安装咯,填好相应的东西后就安装完成了,可是出现了问题:进不去文章页面和后台登录不进去,都变成404了!?

我又仔细检查了一下,确实没有错的,typecho是支持php7.1的,而且配置环境、站点过程中也没有报错呀。然后动用Google,果然也有其他人有这种问题,貌似是pathinfo的原因。官方也有问题解决说明:

1.2,1.3上,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf)
将include enable-php.conf;替换为include enable-php-pathinfo.conf;

我改了配置文件并重启nginx后typecho还是404,我又整个把VPS重启了,还是404。我也尝试把伪静态的include typecho.conf;给注释掉也还是没用。然后我突然想起来,在ha.shiyu.pro.conf里面好像有2个server,果然,下面这个server监听的是443端口也就是ssl:https。这里边还有一个include enable-php.conf!我把它改成include enable-php-pathinfo.conf;后再重启nginx,终于正常访问了…

结尾

做个网站其实不难,难的是维护和创新…好看的皮囊千篇一律,有趣的灵魂万里挑一。

评论