资讯专栏INFORMATION COLUMN

ECS+nginx+wordpress一手搭建完毕

ityouknow / 1948人阅读

摘要:先来一段吐槽好朋友校招进百度前端团队了我还在找工作好心塞但是蛮为他高兴的是我的问题技术面铺的太开了,没有深入的一项比较深入的也就是渗透,了吧但是渗透团队要求好高网易跪在了面绿盟进行中工资略低啊技能点大概是星满分星星渗透星星网络安全星,学习能

PS:

先来一段吐槽...好朋友校招进百度前端团队了..我还在找工作ing..好心塞.但是蛮为他高兴的.

是我的问题.技术面铺的太开了,没有深入的一项.比较深入的也就是web渗透,python了吧.但是渗透团队要求好高!网易跪在了HR面..绿盟进行中(工资略低啊)

技能点大概是(10星满分):python(7星),linux(6星),web渗透(6星),html+js(4星),网络安全(7星),学习能力(10星,哇咔咔),
今后就三个方向:渗透,python,linux不变了!吃够了不专注的苦了!

但是事情还得做!明天更美好!

这篇文章主要为了记录一些配置过程中的问题,但是我不喜欢写半拉子东西,所以就完整记录下吧,我会分好几个时间段来写的...

#正文#

穷人终于有了一个云主机(和别人合买的!哭)
那么昨晚就开开心心的把环境配了配.
环境:
ubuntu 12.04

step 1:安装和配置必要软件

首先你得ssh到云主机上面
假设你的云主机独立IP为x.x.x.x

nginx

nginx 是另外一个哥们手动编译过来的,我这里就不介绍怎么编译了..

安装命令:sudo apt-get install nginx

启动:sudo nginx
可选参数-c.指定配置文件的路径..用默认的就ok啦..

停止:sudo nginx -s stop

每次改变配置文件之后要reload才能生效:sudo nginx -s reload

配置文件解析:
nginx有个默认配置文件:
默认的是:/etc/nginx/ngnix.conf/etc/nginx/site-available/default.


打开配置文件:
sudo vim /etc/nginx/ngnix.conf
sudo vim /etc/nginx/site-available/default


其中 ngnix.conf是总配置文件,里面有http block,events block,mailblock(略过)

ngnix.conf中从头开始讲:

user www-data在你安装ngnix的时候已经建立了这个用户,不用管他

worker_processes 1; 这里数值最大为4,表明开几个线程处理请求.

http {}主要配置一些公用属性:日志存放地点,配置文件包含,服务器是否接受gzip.保持连接时间,接受文件类型等等..但是刚刚搭建的话就采用默认就好了,具体如下:

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  "$remote_addr - $remote_user [$time_local] "$request" "
    #                  "$status $body_bytes_sent "$http_referer" "
    #                  ""$http_user_agent" "$http_x_forwarded_for"";

    #access_log  logs/access.log  main;

    sendfile        on;
    tcp_nopush     on;
    tcp_nodelay    on;
    types_hash_max_size 2048;
    proxy_ignore_client_abort on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    gzip  on;
    gzip_disable  "msie6";



    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
    server {}
    }

4.和http并行的有一个events{}block,里面一边配置的只有一条属性:

events {
    worker_connections  1024;
}

就是最大连接数

5.最后会发现有这么几行配置:

 include /etc/nginx/conf.d/*.conf;
 include /etc/nginx/sites-enabled/*;

表明include了其他的配置文件,如果按照路径去查找,最终会发现只include进来一个/etc/nginx/site-available/default文件


default里面的内容,其他什么都不要管,关键是这几个block:
1. sever{} 这个相当于apache的虚拟目录...你可以配置多个server.让他监听不同的端口,或者分发不同的域名.
2. location{} 这个是做路径路由的..就是匹配你request里面的路径的.(他是嵌套在server里面的)


先从server{}讲起.里面的关键语句有:
listen port: port一般默认都是80因为是http嘛
root path:path是你的网站根目录,相当于apachce的www-root
server_name your_domain_name:后面是你的域名,默认是localhost用来本机测试.可以用这边做站点分发哦..


然后是 location{}
他是server里面的子嵌套..一个server里面可以有多个来匹配不同的路径..

1.首先必须配的是 location /{}
这个用来匹配所有请求的,每个请求都会进入这个location来,然后nginx来去看路径是否有这个文件..若有的话,静态文件直接返回,动态脚本交给下面的location处理.
格式化配置内容如下:

location / {
                try_files $uri $uri/ =404;
                autoindex on;
                index index.php index.html index.htm;
        }

index是为了找出默认首页..顺序匹配

2.如果是php动态脚本的话..需要如下location

location ~ .php$ {
    #            fastcgi_pass unix:/var/run/php5-fpm.sock;
                include fastcgi_params;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

3.如果是python脚本的话,如下:

 location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:50000;
        }

这里很容易出问题的..用unix sock的话我是没试过..

检测nginx是否正常工作:
在浏览器中输入:http://x.x.x.x/跳出welcome to use nginx即可


php相关组件

安装过程:
sudo apt-get install php5 php5-cgi php5-fpm php5-mysql

php5-fpm的配置文件无需修改,有兴趣的可以去/etc/php5/fpm/php-fpm.conf/etc/php5/fpm/php.ini查看

检测php5-fpm服务是否开启:
sudo netstat -tunpl | grep 9000

开启关闭重启php5-fpm方法:
sudo service php5-fpm start
sudo service php5-fpm stop
sudo service php5-fpm restart


现在可以检测下php和nginx是否配置好了:

在你ngnix配置的root属性指向的目录下存放一个文件叫index.php

在你nginx配置中 index配置下将index.php放在首位

在index.php中写入:


最后访问http://x.x.x.x 若有php配置信息跳出即成功


mysql

安装方法:
sudo apt-get install mysql-server mysql-client

安装过程中会让你输入mysql的root用户的新密码,按照步骤执行即可


安装wordpress

1.从官网下载wordpress4.0
wget https://cn.wordpress.org/wordpress-4.0-zh_CN.zip

2.解压缩:
unzip wordpress-4.0-zh_CN.zip

3.将解压的文件放到你的web目录下(可能需要修改配置文件将root指向wordpress文件夹)

4.修改源码(因为wordpress使用了google字体,而google字体在线加载特别缓慢,影响速度)
找到wordpress/wp-includes/script-loader.php
打开该文件,查找fonts.google.com然后将这个链接改为fonts.useso.com即可

5.在浏览器中输入http:/x.x.x.x即可进入安装页面,按照步骤操作即可

step 2:域名绑定

阿里云主机是有独立IP的,假设为x.x.x.x
如果你有个域名,但是不是在阿里云或者万网做的备案,那么就麻烦了(我就是这样子!)
你需要按照阿里云的转入备案流程将你的备案转入过来,否则你的域名指向该IP的时候阿里云会检测到然后不让你访问,如下图:

所以你得先去做转入备案...具体流程请看:http://beian.aliyun.com/not-at-aliyun.html?spm=5176.200001.5.3.qB7fXw

做完备案转入之后按照常规的,将域名使用A解析指向你的IP地址即可

step3:wordpress主题插件更新

wordpress更新插件有两种方式:
1. 在线更新:是要用FTP上传的,所以你需要搭建一个FTP服务器在你的云主机上,具体教程请查看:
http://blog.csdn.net/njchenyi/article/details/8499555
2. 离线形式,你先将插件包或者主题包下载下来,然后手动传到指定目录即可.
主题目录为:wordpress/wp-content/themes/
插件目录为:wordpress/wp-content/plugins/

安装过程中问题荟萃

测试php环境是否安装成功的时候,返回200状态码,但是页面是白板.
解决方法:
查看error.log(sudo vim /var/log/nginx/error.log)你会发现有个文件夹permission denied
所以去把那个文件夹(/usr/local/nginx/fastcgi_temp)给sudo chmod 777 fastcgi_temp即可

若出现访问页面返回一大堆js代码的情况:
在nginx.conf中删除除了以上说到的关于fastcgi和fpm的配置

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/20846.html

相关文章

  • 如何使用阿里云搭建wordpress网站(图文教程+小白专用+Linux版)?

    摘要:声明在任何云服务器上安装网站都是异曲同工,操作系统分为和。如果你没有购买阿里云,自然就不能申请服务号了。信息填完之后,阿里云那边会进行初步审核,我当时不超过几个小时就收到审核通过的邮件了。【声明】 在任何云服务器上安装wordpress网站都是异曲同工,操作系统分为window和Linux。在这里,我选择linux操作系统来搭建wordpress网站。 如果要了解基本的网站搭建流程,请看文章...

    k00baa 评论0 收藏0
  • 【个人网站】个人网站搭建全过程

    摘要:文章目录准备服务器和域名安装安装宝塔设置安全组或者开放端口操作访问外网面板网址进入宝塔软件创建网站节点使用部署个人博客鱼皮安装宝塔的教程鱼皮手把手搭建个人博客准备服务器和域名首先需要一台云服务器,云服务器的配置参考博客服务 ...

    kycool 评论0 收藏0
  • 【图文】如何用云服务器搭建一个https的网站?

    摘要:推荐使用阿里云服务器。推荐使用阿里云的,我的网站就是搭建在阿里云的上,稳定下一个教程分享一下,如何优化站点的打开速度。所需材料:        1、域名1个。        2、虚拟机或者云服务器1台。        3、ssl证书1个。  前提准备:        1、域名最好要备案,在国内使用比较方便。         2、推荐使用阿里云服务器。(阿里云哪个地域节点的服务器好、速度快,...

    CodeSheep 评论0 收藏0
  • nginx+WordPress搭建个人博客全流程

    摘要:正好最近有一台空闲的于是来搭建一个玩玩。因此我们可以申请免费的证书,这个证书不但免费,而且操作非常简单,虽然每次只有天的有效期,但可以通过脚本配置定期更新。这个验证服务以后更新证书还要用到,要一直保留。创建一个并通过赋予执行权限。 0x00 前言         WordPress是世界上最受欢迎的CMS系统,它是基于php和MySQL技术栈的,并且还有很多插件,可扩展性非常强。正好最...

    WilsonLiu95 评论0 收藏0
  • 手把手教你基于WordPress搭建自己的个人博客

    摘要:一步一步教你基于搭建自己的个人博客,作为成熟的框架,美观,方便,插件多,更新频繁,非常适合个人博客与网站的搭建,适合新手,无需太多的代码基础。原文链接手把手教你搭建自己的网站购买购买云服务器为了搭建个人网站,首先肯定需要一个云服务器。 一步一步教你基于WordPress搭建自己的个人博客,WordPress作为成熟的CMS框架,美观,方便,插件多,更新频繁,非常适合个人博客与网站的搭建...

    vpants 评论0 收藏0

发表评论

0条评论

ityouknow

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<