ngir 发表于 2015-11-16 07:08:07

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-cgi2.编辑/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 restart5.下面在srv/www目录下,写一个php文件,来测试一下安装是否成功。可使用如下的命令简单地添加一个文件。  
  

echo &quot;<?php phpinfo(); ?>&quot; > /srv/www/index.php6.然后,在浏览器中输入网址,查看php和http服务器是否安装成功。我这里是如下图所示,表示安装成功了。  

  

三、安装Mysql

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

opkg install libpthread libncurses libreadline mysql-server2. 依次执行如下命令,对Mysql做初始化工作  
  

sed -i 's,^datadir.*,datadir         = &quot;/srv/mysql&quot;,g' /etc/my.cnf
sed -i 's,^tmpdir.*,tmpdir          = &quot;/tmp&quot;,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-mysql4.将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.ini6.到/etc/my.conf下查看你的数据库套接字文件地址,如下图所示。  



  7.如下图所示,配置/etc/php.ini文件,修改下的内容,并把的内容复制一份,并修改成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 &quot;C:\Users\JustYoung\Desktop\WorkSpace\splitFileProject\m_storage&quot;






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




  






  



版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: Openwrt上LAMP(Php、Mysql、Apache)的安装配置