LNMP搭建中可能出现的一些问题及解决方法


在搭建的过程中出现很多问题,尽管以前装过几次,但也并不轻松。

首先系统安装好。这次我采用的是Centos5.6VM7.0环境

 

刚开始就出现了一个问题,系统安装好后,ssh竟然无法连接,照理说应该是默认已经安装好了的。

Ps –ef | grep ssh

也有程序运行。22端口也开了。网络连接dhcp自动分配地址,也是可以ping通的,telnet通信也是正常的。但ssh客户端就是怎么也连接不上。

 

我的错误状态和这位童鞋说的一模一样。

问题一   问题二

 

具体原因还是没有明白,最后系统重装,但依然如此,可能就是我机器的问题?!叫同事机器连接,果然就连接上了。很不明白。于是系统再次替换为Centos6.0

 

总结:ssh连接问题

1、  保证网络连接正常能ping

2、  Sshd服务器是启动状态

3、  22端口是打开的,或者暂时关闭防火墙测试

4、  采用telnet测试下

5、  多用几种客户端工具测试如putty,xshell等,多用其他的机器测试下。

6、  那就只好悲催的重装咯。。。

 

安装过程中可能产生的错误

 

Ps:在安装nginx或者php等得过程中,主要出现的问题都是缺少依赖包问题。一部分是程序数据路径错误等的问题,还有一部分是读写权限不够的问题。还有查找错误的时候不要只看报出来的错误信息,要多看更深层次的日志信息。

Tail –f  /var/log/messages

Tail –f  /var/log/mysqd.log

less /var/log/messages 

 

Nginx

安装加载ssl错误

***[/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 2

 

with-pcre Nginxrewrite功能需要使用pcre库才能工作,而Nginx的编译参数里面的这个选项并不是像常规的那样指定pcre的安装目录,而是指定pcre源代码的目录。

参考

 

 

Mysql

error: Nocurses/termcap library found

解决:需要安装依赖库ncurses-5.2.tar.gz

 

[ERROR]Fatal error: Can’t open and lock privilege tables: Table ‘mysql.host’ doesn’texist

数据库的数据文件未找到所以无法找到打开权限表了。

解决:

mysql源目录中,运行初始化权限表的时候使用增加参数–datadir ,命令格式为:

scripts/mysql_install_db–user=mysql –datadir=/u01/mysql/data

参考 


 

libexec/mysqld:Can’t create/write to file ‘/var/run/mysqld/mysqld.pid’

无法创建或写入mysqld.pid文件。

解决:创建写入权限问题,如果没有mysqld目录则建立

mkdir/var/run/mysqld

chmod g+w /var/run/mysqld/

参考 


 

mysql启动错误

Startingmysqld daemon with databases from /var/lib/mysql
STOPPING server from pid file /var/run/mysqld/mysqld.pid
071112 00:22:06 mysqld ended

 

bin/mysqladmin:connect to server at ‘localhost’ failed

error:’Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

Checkthat mysqld is running and that the socket: ‘/tmp/mysql.sock’ exists!

分析:是/tmp/mysql.sock 不存在

解决:

# cd/var/lib/mysql/

由于mysql 默认的mysql.sock 是在/var/lib/mysql/mysql.sock,创建符号连接:

# ln -s/var/lib/mysql/mysql.sock /tmp/mysql.sock

 

参考  

 

 

GD库安装产生错误

GD库需要fontconfig依赖包所以需要安装

make[3]:*** [fcfreetype.lo] Error 1

../fontconfig/fcfreetype.h:27:22:error: ft2build.h: No such file or directory

解决:

./configure–with-freetype-config=/usr/local/freetype/bin/freetype-config,应该用freetype下的可执行程序来编译!

参考 

 

 

errorwhile loading shared libraries: libiconv.so.2: cannot open shared object file:No such file or directory

解决:

但是在/usr/local/lib下却能找到libiconv.so.2,解决方法是将/usr/local/lib路径添加到/etc/ld.so.conf文件中,然后用sudo ldconfig命令加载,再重新输入sudo make install命令就可以了。

参考一   参考二 


 

PHP

libxml2未找到

Consideradjusting the PKG_CONFIG_PATH environment variable if you

installedsoftware in a non-standard prefix.

 

Alternatively,you may set the environment variables LIBXML2_CFLAGS

andLIBXML2_LIBS to avoid the need to call pkg-config.

See thepkg-config man page for more details.

解决:

已经安装好了libxml2库,但环境变量未设置好。

确定 /usr/local/libxml2/lib/pkgconfig 目录下有 libxml-2.0.pc

exportPKG_CONFIG_PATH=/usr/local/libxml2/lib/pkgconfig:$PKG_CONFIG_PATH

再次make install

参考

 

ldap这个包始终没有安装成功,在安装过程中包一个又一个的依赖,明明已经安装了包却还是报告你必须先安装某些包。。。都已经搞晕了。

configure:error: Cannot find ldap.h

缺少openldap

参考


解决:暂无

error:BDB/HDB: BerkeleyDB not available

缺少依赖包BerkeleyDB

参考

解决:暂无

 

Make: *** [sapi/cgi/php-cgi.exe] Error 1

解决:缺少libiconv

 

Make test 错误

ERROR:invalid PHP executable specified by TEST_PHP_EXECUTABLE  = /opt/software/lamp/php-5.2.17/sapi/cli/php

解决:直接忽略 make install

参考

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*