欢迎各位兄弟 发布技术文章
这里的技术是共享的
作者:王皓
发布于:2015-02-03 02:50
更新于:2015-02-07 16:44
在你的电脑上,应该有个 Web 开发环境,在上面去开发你想要的网站。完成以后可以把网站迁移到服务器上,在服务器也要搭建一个网站运行的环境,这个服务器上的环境叫生产环境。大部分情况,你也需要自己去搭建这个服务器上的生产环境。你的生产环境要在 Linux 类型的操作系统上搭建,比如 Ubuntu,CentOS ... 所以,尽早熟悉 Linux 系统的基本操作,熟悉在命令行下面去做事。
网站最终要运行在生产环境上,你在本地开发它的时候,最好可以为网站搭建一个跟生产环境相近的环境,比如用同样的操作系统,同样版本的软件,同样的设置等等。建议在本地电脑上安装虚拟机,为虚拟机安装 Linux 类型的操作系统,然后在上面安装和配置运行网站需要的软件,比如 Web 服务器,PHP,数据库等等。想要更好的管理虚拟机,推荐使用 Vagrant 。
放弃用一键安装的东西来搭建本地的开发环境,比如 WAMP,MAMP,XAMPP!暂时放弃在服务器的生产环境上安装管理面板。亲自动手,去搭建这个运行环境。
这个网站运行的环境在本地,还有在服务器上搭建的方法是差不多的,就是去安装一些需要的软件,然后通过修改配置文件来改变这些软件的行为。
作者:王皓
发布于:2015-02-01 10:05
更新于:2017-07-16 07:44
先修改一下本地电脑的 hosts 文件,添加一条新的记录:192.168.33.10 wp.ninghao.dev。完成以后用 ping wp.ninghao.dev 测试一下,你会看到现在这个主机名指向的就是我们的虚拟机的 IP 地址,这样在配置 nginx 的时候,可以添加一个新的 server ,服务器名就可以使用 wp.ninghao.dev ,打开这个主机名就是我们即将要安装的 WordPress 。
登录到虚拟机,在 nginx 的配置文件目录的 conf.d 里面,再新建一个 .conf 文件,命名为 wp.ninghao.dev.conf ,文件里的内容像下面这样:
server { listen 80; server_name wp.ninghao.dev; root /vagrant/wordpress/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } 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; } }
参考:https://lemp.ninghao.net/config--nginx.html
作者:王皓
发布于:2015-01-30 15:55
更新于:2015-01-31 12:18
到现在,我们已经在本地搭建好了一个可以运行 PHP 应用的环境,这个环境可能会根据要运行的 PHP 应用来调整一下,比如设置地址重写,为应用的不同的位置去配置 nginx 的 location 等等。下面,我们在这个开发环境下去运行 Drupal 8 。
先去修改一下本地电脑上的 hosts 文件,添加一条新的记录,让一个主机名指向虚拟机的 IP 地址,比如我要让 dp8.ninghao.dev 指向 192.168.33.10 这个 IP 地址,可以这样设置:
192.168.33.10 dp8.ninghao.dev
在 nginx 配置的目录(/etc/nginx/conf.d)下面创建一个新的配置文件,这个配置文件可以用服务器的主机名去命名一下,这里就是 dp8.ninghao.dev.conf 。下面是配置文件里的内容:
作者:王皓
发布于:2015-01-29 23:05
更新于:2015-03-20 21:30
我们可以在命令行工具下面管理 MySQL / MariaDB 数据库。想要个图形界面的话,可以使用 phpMyAdmin,通过浏览器直接管理服务器的数据库管理系统,添加用户,设置密码,创建数据库,导入导出数据等等。
在很多 Linux 类型的系统上都可以使用包管理工具去安装 phpMyAdmin,比如在 CentOS 系统里,先为系统安装 epel 仓库,然后就可以通过 yum install phpmyadmin 安装了。不过我们之前搭建的 Web 环境,用的 php 版本是 5.6,跟 phpmyadmin 依赖的包有冲突,它需要一个低版本的 php ,所以我们只能使用手工安装的方法。
先把 phpMyAdmin 下载到系统上,http://www.phpmyadmin.net/ ,点击 Download 会带你到下载的页面,页面上的 Direct link 是直接下载 phpMyAdmin 的链接,复制一下这个复制的地址,然后使用 curl 去下载它,像这样:
作者:王皓
发布于:2015-01-29 08:19
更新于:2015-01-29 19:31
nginx 不懂 php,它可以把客户对 php 应用的请求转发给懂 php 的服务器,这台服务器会解释 php ,然后把处理好的内容再交给 nginx ,nginx 再把这些内容发送到客户那里去。这里,nginx 的作用就是一个代理服务器(Proxy Server),这个解释 php 用的服务器是上游服务器(Upstream Server),通常就是使用 FastCGI 类型的服务器,你可以把 php-fpm 想成是 php 版本的 FastCGI 服务器。
代理服务器,用现实生活的例子解释一下,它就像是房产中介,你打算租个房子,找到了房产中介,他会为你联系房主,把你的需求说一下,房主把他的意思转达给房产中介,房产中介又会从房主那里得来的消息转达给你。代理服务器就是,接到客户的请求以后,把请求转发给其它的服务器,它们处理好请求以后会把结果再交给代理服务器,然后由代理服务器把信息再传递给发出这个请求的客户那里。
作者:王皓
发布于:2015-01-28 13:00
更新于:2015-01-29 19:29
nginx 最主要的工作就是对外提供静态的文件,html,css,javascript,images ... 下面我们去实践一下配置 nginx 的虚拟主机。为虚拟主机绑定域名,设置不同的 location 为请求提供资源。
你可以直接在虚拟机上用 vim 编辑器去创建跟编辑配置文件,不过如果不熟悉 vim 编辑器的话,下面介绍一个可以直接用本地电脑上的编辑器去编辑 nginx 配置文件的方法。就是把 nginx 的配置文件的目录(/etc/nginx),跟本地电脑上的一个目录同步,不过在设置 vagrant 同步目录之前,先连接到虚拟机,去把配置文件目录备份到一个地方,不然在设置共享目录之后,重启虚拟机以后,这个目录里的内容会被删除掉。ssh 到虚拟机以后,执行:
cp -R /etc/nginx ~/
把 /etc/nginx 这个目录复制一份到用户的主目录下面。然后在本地电脑上用编辑器打开 Vagrantfile ,添加一条配置。
作者:王皓
发布于:2015-01-27 23:51
更新于:2015-02-27 15:37
nginx 是由一些模块组成的,不同的模块定义了各自的一些指令(Directives),指令控制了模块的行为,在 nginx 的配置文件里可以去配置这些指令。主要的配置文件是 nginx.conf ,在这个配置文件里,会用到 include 指令,把其它地方的配置文件包含到这个主要的配置文件里,用这种方法可以让配置文件更有条理,也更容易维护。
在不同的系统下 nginx.conf 的位置可能不太一样,使用搜索可以很容易找到它:
find / -name nginx.conf
作者:王皓
发布于:2015-01-26 15:53
更新于:2015-01-27 23:53
一台服务器,接待用户请求的就是 Web 服务器,是一种软件,比如 Apache,Nginx。Web 服务器除了为用户提供静态的文件,像 html,CSS,JavaScript,图像文件 等等,它还会跟脚本解释器沟通,给用户提供动态的内容。
一款受欢迎的高性能 Web 服务器。
Nginx 的稳定版包含在 CentOS 7 的软件仓库里,所以可以直接用 yum 去安装它。
yum install nginx -y
作者:王皓
发布于:2014-04-02 16:12
更新于:2014-04-02 16:12
“WordPress 为什么这么慢”,您或许会有这样的疑问。我觉得强大的东西都是有代价的,但也是有方法可以解决的,接下来我们花点时间去研究一下 WordPress 的性能优化。这里说的性能优化,包含两个东西,scalability 还有 performance。scalability 是扩展性,意思就是能承受的压力,也就是 WordPress 能为多少人提供服务。performance 是性能,也就是 WordPress 页面的响应速度。
作者:王皓
发布于:2014-03-22 04:48
更新于:2016-12-05 19:30
阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal 或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器。我们在上面搭建一个 nginx + mysql + php-fpm 的环境,这就是常说的 LEMP(Linux NGINX MySQL / MariaDB PHP) 。我们不过多解释什么是什么,而是着重讲流程与方法,想了解具体的细节,去搜索下吧:)这个手册是在阿里云上测试的,不过应该也适用于其它使用 CentOS 系统的服务器。