分类 运维/Linux 下的文章

我的服务器是 Debian 8,不同的Linux发行版有一定差异。

1 下面我们来安装Nginx。

1.一条命令解决

root@Server:~# sudo apt-get install nginx -y

2.查看版本

root@Server:~# nginx -v
nginx version: nginx/1.6.2

现在可以访问你的站点了:

231-1.png

2 Nginx安装好后,我们接下来安装PHP。

1.又一条命令解决

root@Server:~# apt-get install php5-fpm -y

至于扩展以后再装

3 Nginx PHP的配置

Nginx需要配置才能支持PHP,我们这里是使用PHP-fpm方式。

对PHP的配置:

1.打开PHP-fpm配置文件
nano /etc/php5/fpm/php.ini
(or vim /etc/php5/fpm/php.ini)
2.找到 ;cgi.fix_pathinfo=1 一行,去掉分号(;),将1改成0,即:
cgi.fix_pathinfo=0
3.保存退出

对Nginx的配置:

1.打开Nginx的配置文件

root@Server:/etc/nginx/sites-enabled# nano /etc/nginx/sites-enabled/default

2.找到如下:

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html index.php;(添加index.php)

#location ~ \.php$ {(删除这行的#号)
#       include snippets/fastcgi-php.conf;(删除这行的#号)
#
#       # With php5-cgi alone:
#       fastcgi_pass 127.0.0.1:9000;
#       # With php5-fpm:
#       fastcgi_pass unix:/var/run/php5-fpm.sock;(删除这行的#号)
#}(删除这行的#号)

3.保存,检查配置:

root@Server:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4.重启

root@Server:~# nginx -s reload

5.新建一个PHP文件测试:

root@Server:~# nano /var/www/html/info.php
(or vim /var/www/html/info.php)
内容:
    <?php phpinfo()?>

6.访问,测试是否正常显示:

231-3.png

配置完成,可以正常使用PHP了。

本文选取常用的Web Servre做对比,并选择其中一个来作为示例来写后面的建站文章。

目前常用的有LAMP,LNMP,LLMP这三个建站的服务器软件。

L 代表 Linux,如果使用Windows建站可以关文章了
A/N/L 代表 Apache2/Nginx/Lighttpd,Web Servre
M 代表 MySQL,一种数据库(还有比较轻量化的数据库:SQLite,但支持他的应用比较少)
P 代表 PHP,一种脚本语言

Apache2

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。
Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件。
它可以运行在几乎所有广泛使用的计算机平台上。

内存占用较大,不适合小型服务器,在实际使用中会比较卡,再加上MySQL.....;但配置简单,无需配置就能使用PHP,适合于访问量大的大型站点。

Nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

轻量化,内存开销还是比较小的,并发能力强;但配置有点繁琐,懒人还是去用Apache2吧。

Lighttpd

Lighttpd 是一个德国人领导的开源Web服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销、cpu占用率低、效能好以及丰富的模块等特点。

目前资料较少,不过还不错,轻量化,内存开销小。

至于安装哪个好呢?

要省内存的话LNMP是最好的选择。
静态的多用LNMP还是不错的。
动态内容多的话,LAMP还是最稳定的。
至于LLMP,自己可以去尝试一下。

这里我们选取Nginx来作为示例来在Linux下来搭建站点。

证书是阿里云的免费单域名证书,采用文件验证方式,用DNS有点麻烦。

161-1.png

1.切换至Nginx目录,打开nginx.conf配置文件

cd /etc/nginx/sites-enabled/
nano default
(or vim default)
如果你改过,不一定是default

161-2.png

2.在http里添加如下的配置

server {
    server_name 你的域名;
    listen 443;
    ssl on;
    ssl_certificate 证书目录;
    ssl_certificate_key 私匙目录;
}
# Ctrl+O保存 Ctrl+X退出

161-3-.png

3.重启,检查是否正常

root@debian:/etc/nginx# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

root@debian:/etc/nginx# /etc/init.d/nginx restart
[ ok ] Restarting nginx (via systemctl): nginx.service.

161-4.png
161-5.png
161-6.png

#!/bin/sh
echo 'LAMP Setup'
echo '1.Setup'
echo '2.Remove'
echo '3.Quit'
read a
if [ $a -eq 1 ]; then
    echo "----------------------------------------------------"
    echo "Setup"
    echo "----------------------------------------------------"
    echo "Apt-get update"
    echo "----------------------------------------------------"
    echo "Do you want to continue?"
    echo "1.yes"
    echo "2.no"
    read b
    if [ $b -eq 1 ];then
        apt-get update
    fi
    echo "----------------------------------------------------"
    echo "Apache2 Setup"
    echo "----------------------------------------------------"
    sudo apt-get -y install apache2
    echo "----------------------------------------------------"
    echo "PHP5 Setup"
    echo "----------------------------------------------------"
    sudo apt-get -y install php5
    echo "----------------------------------------------------"
    echo "MySQL Setup"
    echo "----------------------------------------------------"
    sudo apt-get -y install mysql-server
    sudo apt-get -y install php5-mysql
    echo "----------------------------------------------------"
    echo "Apache2 Restart"
    echo "----------------------------------------------------"
    sudo service apache2 restart
    echo "Apache2 Restart OK!"
    echo "----------------------------------------------------"
    echo "OK!"
    echo "----------------------------------------------------"
elif [ $a -eq 2 ];then
    echo "----------------------------------------------------"
    echo "Remove"
    echo "----------------------------------------------------"
    echo "Apache2 Remove"
    echo "----------------------------------------------------"
    apt-get autoremove --purge -y apache2
    echo "----------------------------------------------------"
    echo "PHP Remove"
    echo "----------------------------------------------------"
    apt-get autoremove --purge -y php5
    echo "----------------------------------------------------"
    echo "MySQL Remove"
    echo "----------------------------------------------------"
    apt-get autoremove --purge -y mysql-server
    apt-get autoremove --purge -y php-mysql
    echo "----------------------------------------------------"
    echo "OK!"
    echo "----------------------------------------------------"
else
    echo "-----Quit-----"
fi

#Powered by <?php echo"test-2"?>

1.安装编译环境

sudo apt-get install -y make gcc g++

1.png

2.安装依赖

sudo apt-get install -y libreadline5 libreadline-gplv2-dev

2.png

3.下载源码

wget http://www.lua.org/ftp/lua-5.3.4.tar.gz
tar zxf lua-5.3.4.tar.gz

3.png
4.png

4.编译lua

cd lua-5.3.4
make linux
sudo make install

5.png
6.png

(编译可能时间较长,等待一下就好,出现警告无视就好)

5.安装完毕,输入 lua 进入lua环境

8.png

6.删除源码

编译过后源码就没有用了,可以删除掉。

cd ../
rm -r lua-5.3.4

7.png