2018
07-06

Openwrt上LAMP(Php、Mysql、Apache)的安装配置

在本环境中,我使用的是WRTnode上的Openwrt操作系统进行操作。有关Openwrt的基本操作,可参考本博客的其他文章,这里就直接开始。

一、安装Lighttpd

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

opkg update
opkg install lighttpd lighttpd-mod-cgi

2.安装完成后,编辑/etc/lighttpd/lighttpd.conf文件。 按下图画红线的地方修改server.modules、server.port以及server.document-root即可。  注,如果在启动lighttpd时,报如下的错误 Cannot load plugin mod_cgi more than once, please fix your config (we may not accept such configs in future releases,则不需要添加上述内容,因为该配置文件中引用的配置文件已经在server.modules中包含了"mod_cgi"。在我的lighttpd版本中,lighttpd.conf配置文件引入了/etc/lighttpd/conf.d/10-cgi.conf配置文件,而后者已经包含了"server.module"。  3. 通过以下命令创建/srv/www目录

mkdir -p /srv/www

4.使用如下的命令启动lighttpd和设置lighttpd服务随开机启动。

/etc/init.d/lighttpd start
/etc/init.d/lighttpd enable

二、安装PHP

1.使用如下命令安装PHP。

opkg update
opkg install php5 php5-cgi

2.编辑/etc/php.ini,设置doc_root = "/srv/www"。 3.按下图的方式编辑/etc/lighttpd/lighttpd.conf,已用红线画出。 注意:当lighthttp启动失败时,如果是因为配置文件错误的话通常会报这样的错误:(configfile.c.957) source: /etc/lighttpd/lighttpd.conf line,可通过如下的命令来查看出错的原因,这里我是因为多添加了一个index-file.names造成的错误。

lighttpd -f /etc/lighttpd/lighttpd.conf

如果报如下的错误,则是因为多配置了cgi.assign,就需要将刚才配置的cgi.assign注释掉,因为配置文件中引入了/etc/lighttpd/conf.d/*.conf文件。 Duplicate config variable in conditional 0 global: cgi.assign 2014-12-21 13:41:18: (configfile.c.957) source: cat /etc/lighttpd/conf.d/*.conf line: 34 pos: 1 parser failed somehow near here: (EOL) 2014-12-21 13:41:18: (configfile.c.957) source: /etc/lighttpd/lighttpd.conf line: 41 pos: 1 parser failed somehow near here: (EOL) 然后编辑/etc/lighttpd/conf.d/10-cgi.conf文件,在文件中添加如下图红线标记的内容。 4.使用如下的命令重启Lighttpd。

/etc/init.d/lighttpd restart

5.下面在srv/www目录下,写一个php文件,来测试一下安装是否成功。可使用如下的命令简单地添加一个文件。

echo "<?php phpinfo(); ?>" > /srv/www/index.php

6.然后,在浏览器中输入网址,查看php和http服务器是否安装成功。我这里是如下图所示,表示安装成功了。

三、安装Mysql

1.使用如下命令,安装mysql及相关组件

opkg install libpthread libncurses libreadline mysql-server

2. 依次执行如下命令,对Mysql做初始化工作

sed -i 's,^datadir.*,datadir = "/srv/mysql",g' /etc/my.cnf
sed -i 's,^tmpdir.*,tmpdir = "/tmp",g' /etc/my.cnf
mkdir -p /srv/mysql
mysql_install_db --force
/etc/init.d/mysqld start
/etc/init.d/mysqld enable
mysqladmin -u root password '123456'

注:123456是mysql的root账户密码3.安装如下组件,使PHP可以使用Mysql

opkg install php5-mod-mysql

4.将mysql.so配置到/etc/php.ini中

sed -i 's,;extension=mysql.so,extension=mysql.so,g' /etc/php.ini

5.将mysqli.so配置到/etc/php.ini中

sed -i 's,;extension=mysqli.so,extension=mysqli.so,g' /etc/php.ini

6.到/etc/my.conf下查看你的数据库套接字文件地址,如下图所示。 7.如下图所示,配置/etc/php.ini文件,修改[mysql]下的内容,并把[mysql]的内容复制一份,并修改成mysqli,如下图所示 到此,Mysql就配置完了。

四、测试

1.可使用psftp向Openwrt系统上上传文件,可在putty的官网上,下载到这个工具,如下图所示。 2.使用如下命令在openwrt上安装以下组件,使openwrt能接受文件的上传。

opkg update
opkg install vsftpd openssh-sftp-server
/etc/init.d/vsftpd enable
/etc/init.d/vsftpd start

3.双击打开psftp.exe,使用下图的方式连接,之后就可以使用cd、ls等方式进入文件夹。 4.使用如下的命令向openwrt上传文件,下个如下图所示。

put "C:\Users\JustYoung\Desktop\WorkSpace\splitFileProject\m_storage"

之后就可以访问你的PHP页面看看效果啦

如果您通过本站解决了一些问题,并希望本站能够很好的发展下去,动动手指即可帮助我们。

如无特殊说明,解压密码均为:aisoa.cn

您可能感兴趣的文章

支付宝打赏支付宝打赏微信打赏微信打赏