我们检测到您似乎禁用了 JavaScript
您可以启用JS或将本站加入白名单,以便能更好的体验 (如何启用 JS?)
使用LNMP常见问题解答 | SSRSHARE - 免费SSR, 免费SS, 免费Socks, 免费 V2Ray 节点分享社区

使用LNMP常见问题解答

本帖由 BigCat2020-05-13 发布。版面名称:技术交流

Tags标签:
  1. BigCat

    BigCat 管理成员 Telegram用户 教程编写者

    注册:
    2020-05-12
    帖子:
    87
    获赞:
    0
    一、LNMP的安装

    ##先要下载,并根据不同系统进行安装:
    代码:
    wget -c http://soft.vpser.net/lnmp/lnmp1.6.tar.gz
    tar zxvf lnmp1.6.tar.gz
    cd lnmp1.6
    ./install.sh #开始进行安装操作
    
    以上为下载及进入安装过程,以下为安装前简易设置,切记输入个其它域名及牢记mysql密码:
    代码:
    +------------------------------------------------------------------------+
    |          LNMP V1.6 for Ubuntu Linux Server, Written by Licess          |
    +------------------------------------------------------------------------+
    |        A tool to auto-compile & install LNMP/LNMPA/LAMP on Linux       |
    +------------------------------------------------------------------------+
    |          For more information please visit http://www.lnmp.org         |
    +------------------------------------------------------------------------+
    Please setup root password of MySQL.(Default password: root)
    Please enter: moerats.com #输入mysql的root密码
    MySQL root password: moerats.com
    ===========================
    Do you want to enable or disable the InnoDB Storage Engine?
    Default enable,Enter your choice [Y/n]: n #是否安装InnoDB
    You will disable the InnoDB Storage Engine!
    ===========================
    You have 5 options for your DataBase install.
    1: Install MySQL 5.1.73
    2: Install MySQL 5.5.42 (Default)
    3: Install MySQL 5.6.23
    4: Install MariaDB 5.5.42
    5: Install MariaDB 10.0.17
    Enter your choice (1, 2, 3, 4 or 5): 3 #选择mysql版本
    You will Install MySQL 5.6.23
    ===========================
    You have 5 options for your PHP install.
    1: Install PHP 5.2.17
    2: Install PHP 5.3.29
    3: Install PHP 5.4.41 (Default)
    4: Install PHP 5.5.25
    5: Install PHP 5.6.9
    Enter your choice (1, 2, 3, 4 or 5): 5 #选择php版本
    You will install PHP 5.6.9
    ===========================
    You have 3 options for your Memory Allocator install.
    1: Don't install Memory Allocator. (Default)
    2: Install Jemalloc
    3: Install TCMalloc
    Enter your choice (1, 2 or 3): 1
    You will install not install Memory Allocator.
    #按任意键,设置完成,正式进入安装,预计20-40分钟完成
    常见lnmp管理命令:
    代码:
    #1.2版本以后,不需要再执行/root/lnmp了,可以在任意位置执行lnmp命令
    lnmp #会出现一些提示信息
    lnmp restart #重启
    lnmp vhost add #添加网站绑定
    lnmp database add #添加数据库信息
    
    二、域名绑定详解

    其实所谓的域名绑定,就是通过命令的形式,简易创建一个conf文件到/usr/local/nginx/conf/vhost下面,这个过程完全可以手工创建conf,或者,平时修改目录、域名等,直接修改conf文件,效果完全一样:
    代码:
    lnmp vhost add #执行lnmp添加网站命令
    +-------------------------------------------+
    |    Manager for LNMP, Written by Licess    |
    +-------------------------------------------+
    Please enter domain(example: www.lnmp.org): moerats.com #输入绑定的主域名
    ======================================
     Your domain: moerats.com
    ======================================
    Do you want to add more domain name? (y/n) y #是否绑定其它域名
    Enter domain name(example: lnmp.org *.lnmp.org): www.moerats.com #输入其它域名
    domain list: www.moerats.com
    Please enter the directory for the domain: moerats.com
    (Default directory: /home/wwwroot/moerats.com): #默认创建的网站文件所在目录
    Virtual Host Directory: /home/wwwroot/moerats.com
    ===========================
    Allow Rewrite rule? (y/n)
    ===========================
    y #是否添加伪静态文件
    Please enter the rewrite of programme:
    wordpress,discuz,typecho,sablog,dabr rewrite was exist.
    (Default rewrite: other):typecho #小夜用的typecho程序
    ===========================
    You choose rewrite=typecho
    ===========================
    ===========================
    Allow access_log? (y/n)
    ===========================
    n #是否启用日志文件
    ======================================================
    Create database and MySQL user with same name (y/n)
    ======================================================
    y #是否创建mysql数据库
    verify your current MySQL root password: **** #输入安装时的mysql数据库root密码
    Warning: Using a password on the command line interface can be insecure.
    MySQL root password correct.
    Enter database name: moerats_user #创建数据库用户名
    Your will create a database and MySQL user with same name: moerats_user
    Please enter password for mysql user vpsmm_user: moeratspasswd
    Your password: moeratspasswd #创建相应密码
    
    Press any key to start create virtul host...
    
    Create Virtul Host directory......
    set permissions of Virtual Host directory......
    You select the exist rewrite rule:/usr/local/nginx/conf/typecho.conf
    Gracefully shutting down php-fpm . done
    Starting php-fpm  done
    Test Nginx configure file......
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
    
    Restart Nginx......
    Warning: Using a password on the command line interface can be insecure.
    Warning: Using a password on the command line interface can be insecure.
    User moerats_user create Sucessfully.
    Warning: Using a password on the command line interface can be insecure.
    Warning: Using a password on the command line interface can be insecure.
    Warning: Using a password on the command line interface can be insecure.
    Database: moerats_user create Sucessfully.
    Warning: Using a password on the command line interface can be insecure.
    Warning: Using a password on the command line interface can be insecure.
    GRANT ALL PRIVILEGES ON moerats_user Sucessfully.
    Warning: Using a password on the command line interface can be insecure.
    FLUSH PRIVILEGES Sucessfully.
    ================================================
    Virtualhost infomation:
    Your domain: moerats.com
    Home Directory: /home/wwwroot/moerats.com
    Rewrite: typecho
    Enable log: no
    Database username: moerats_user
    Database userpassword: moeratspasswd
    Database Name: moerats_user
    Create ftp account: no
    #以上为新创建网站的一些信息
    ================================================
    
    三、自定义伪静态规则

    如果lnmp默认的伪静态规则不能满足你的需要,或者,你要自行定义伪静态规则,可以新建一个conf文件,放置于 /usr/local/nginx/conf 下,在域名配置文件,即:/usr/local/nginx/conf/vhost/moerats.com.conf 里引用。
    代码:
    server
      {
       listen       80;
       server_name legcloud.com www.moerats.com; #绑定的域名
       index index.html index.htm index.php default.html default.htm default.php; #首页文件
       root  /home/moerats.com; #网站存放目录
       include wordpress.conf; #伪静态规则文件,可自定义成你需要的
       location ~ .*\.(php|php5)?$
         {
           try_files $uri =404;
           fastcgi_pass  unix:/tmp/php-cgi.sock;
           fastcgi_index index.php;
           include fcgi.conf;
         }
       location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
         {
           expires      30d;
         }
       location ~ .*\.(js|css)?$
         {
           expires      12h;
         }
       access_log off;
      }
    修改设置以后,一定要重新载入lnmp或者,重新载入nginx,以下任决命令都一样:
    代码:
    /root/lnmp reload #使用lnmp重新载入配置
    /etc/init.d/nginx reload #只重新载入nginx配置,我一般用这个
    
    四、自定义404、503等常见错误

    不管是404还是503等常见错误,还是设置/usr/local/nginx/conf/vhost/moerats.com.conf文件来完成:
    代码:
       listen       80;
       server_name moerats.com www.moerats.com;
       index index.html index.htm index.php default.html default.htm default.php;
       root  /home/moerats.com;
       error_page 404 /404.php; #放在这里,可自定义文件名,再重载nginx就可以了
       include wordpress.conf;
    
    五、判断当前域名并自动301到主域名
    代码:
    if ($host != 'moerats.com' ) {rewrite ^/(.*)$ http://www.moerats.com/$1 permanent;}
    #判断当前域名,如果不是则自动301到主域名,放置于error_page ...;上下均可。

    六、关闭或开启FSO等php函数

    lnmp最新版,默认禁用了一些函数,例如fso等,可修改/usr/local/php/etc/php.ini
    代码:
    disable_functions = passthru,exec,system,chroot,scandir....
    #----这是禁用函数,把不想禁用的删除即可----如果自用主机,最简单的修改方案:
    disable_functions =
    ; passthru,exec,system,chroot,scandir....
    #----设置为全部开启
    
    修改后,使用/etc/init.d/php-fpm restart,重新启动php

    七、升级PHP和NGINX版本
    代码:
    cd lnm0.9 #进入lnmp安装目录
    ./upgrade_nginx.sh #升级nginx,只要输入你要升级的版本即可(可见nginx.org)
    ./upgrade_php.sh #升级php,只要输入你要升级的版本即可(可见php.net)
     

分享此页面