SEARU.ORG
当前位置:SEARU.ORG > Linux 教程 > 正文

使用LNMP常见问题解答 Linux 服务器常见问题

一、LNMP的安装

##先要下载,并根据不同系统进行安装:
wget -c http://soft.vpser.net/lnmp/lnmp1.3.tar.gz
tar zxvf lnmp1.3.tar.gz
cd lnmp1.3
./install.sh #开始进行安装操作

以上为下载及进入安装过程,以下为安装前简易设置,切记输入个其它域名及牢记mysql密码:

+------------------------------------------------------------------------+
|          LNMP V1.2 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: searu.org #输入mysql的root密码
MySQL root password: searu.org
===========================
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 #小夜用不上,所以选择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): searu.org #输入绑定的主域名
======================================
 Your domain: searu.org
======================================
Do you want to add more domain name? (y/n) y #是否绑定其它域名
Enter domain name(example: lnmp.org *.lnmp.org): www.searu.org #输入其它域名
domain list: www.searu.org
Please enter the directory for the domain: searu.org
(Default directory: /home/wwwroot/searu.org): #默认创建的网站文件所在目录
Virtual Host Directory: /home/wwwroot/searu.org
===========================
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: searu_user #创建数据库用户名
Your will create a database and MySQL user with same name: searu_user
Please enter password for mysql user searu_user: searupasswd
Your password: searupasswd #创建相应密码

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 searu_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: searu_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 searu_user Sucessfully.
Warning: Using a password on the command line interface can be insecure.
FLUSH PRIVILEGES Sucessfully.
================================================
Virtualhost infomation:
Your domain: searu.org
Home Directory: /home/wwwroot/searu.org
Rewrite: typecho
Enable log: no
Database username: searu_user
Database userpassword: searupasswd
Database Name: searu_user
Create ftp account: no
#以上为新创建网站的一些信息
================================================

三、自定义伪静态规则

如果lnmp默认的伪静态规则不能满足你的需要,或者,你要自行定义伪静态规则,可以新建一个conf文件,放置于 /usr/local/nginx/conf 下,在域名配置文件,即:/usr/local/nginx/conf/vhost/legcloud.com.conf 里引用。

server
  {
    listen       80;
    server_name legcloud.com www.legcloud.com; #绑定的域名
    index index.html index.htm index.php default.html default.htm default.php; #首页文件
    root  /home/legcloud.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/legcloud.com.conf文件来完成:

   listen       80;
    server_name legcloud.com www.legcloud.com;
    index index.html index.htm index.php default.html default.htm default.php;
    root  /home/legcloud.com;
    error_page 404 /404.php; #放在这里,可自定义文件名,再重载nginx就可以了
    include wordpress.conf;

五、判断当前域名并自动301到主域名

if ($host != 'searu.org' ) {rewrite ^/(.*)$ http://www.searu.org/$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)

未经允许不得转载:SEARU.ORG » 使用LNMP常见问题解答 Linux 服务器常见问题

赞 (0)
分享到:更多 ()

评论 22

  1. 匿名angelina回复
  2. 匿名1;cat /etc/rc.d/rc.local;回复
  3. 匿名1';cat /etc/rc.d/rc.local;'回复
  4. 匿名1";cat /etc/rc.d/rc.local;"回复
  5. 匿名set回复
  6. 匿名string:{var_dump(md5(812812))}回复
  7. 匿名'+(#context[\"xwork.MethodAccessor.denyMethodExecution\"]=new java.lang.Boolean(false),#_memberAccess[\"allowStaticMethodAccess\"]=new java.lang.Boolean(true),#_memberAccess.excludeProperties={},#a_str='814F60BD-F6DF-4227-',#b_str='86F5-8D9FBF26A2EB',#[email protected]@getResponse(),#a_resp.getWriter().println(#a_str+#b_str),#a_resp.getWriter().flush(),#a_resp.getWriter().close())+'回复
  8. 匿名(#context[\"xwork.MethodAccessor.denyMethodExecution\"]=new java.lang.Boolean(false),#_memberAccess[\"allowStaticMethodAccess\"]=new java.lang.Boolean(true),#_memberAccess.excludeProperties={},#a_str='814F60BD-F6DF-4227-',#b_str='86F5-8D9FBF26A2EB',#[email protected]@getResponse(),#a_resp.getWriter().println(#a_str+#b_str),#a_resp.getWriter().flush(),#a_resp.getWriter().close())(meh)回复
  9. 匿名'+(#context['xwork.MethodAccessor.denyMethodExecution']=false,#_memberAccess.allowStaticMethodAccess=true,#_memberAccess.excludeProperties={},#a_str='814F60BD-F6DF-4227-',#b_str='86F5-8D9FBF26A2EB',#[email protected]@getResponse(),#a_resp.getWriter().println(#a_str+#b_str),#a_resp.getWriter().flush(),#a_resp.getWriter().close())+'回复
  10. 匿名(#context['xwork.MethodAccessor.denyMethodExecution']=false,#_memberAccess.allowStaticMethodAccess=true,#_memberAccess.excludeProperties={},#a_str='814F60BD-F6DF-4227-',#b_str='86F5-8D9FBF26A2EB',#[email protected]@getResponse(),#a_resp.getWriter().println(#a_str+#b_str),#a_resp.getWriter().flush(),#a_resp.getWriter().close())(meh)回复
  11. 匿名c:/windows/win.ini回复
  12. 匿名c:/windows/win.ini.php回复
  13. 匿名http://cirt.net/rfiinc.txt.php回复
  14. 匿名cirt.net/rfiinc.txt回复
  15. 匿名cirt.net/rfiinc.txt.jpeg回复
  16. 匿名cirt.net/rfiinc.txt.php回复
  17. 匿名htTp://cirt.net/rfiinc.txt回复
  18. 匿名htTp://cirt.net/rfiinc.txt.html回复
  19. 匿名data://text/plain;base64,W0hlbGxvIEFpc2h5XQ==回复
  20. 匿名app.conf回复
  21. 匿名1回复
  22. 匿名app.conf.html回复