WebStack-Laravel:搭建一个网址导航站点(带后台)
说明:怎么快速的搭建一个导航网站?WebStack-Laravel 是一个开源的网址导航网站项目,具备完整的前后台。换句话说,我们可以自定义添加网站和图标,有时候浏览器收藏的网站很多不好管理,这时我们可以使用WebStack-Laravel
对网站分别标注、归类,制作自己的网址导航。
项目地址:https://github.com/hui-ho/WebStack-Laravel
截图
部署安装
博主使用的是军哥LNMP_v1.6一键安装包。本教程的安装环境如下:
1 | PHP version 7.3.5 (建议php7.0以上) |
如果没有安装composer,请运行下面的命令进行安装
1 | curl -sS https://getcomposer.org/installer | php |
参考 LNMP使用教程 使用lnmp
相关命令,添加网站、创建网站根目录、建立数据库。
1 | #将域名修改成自己的再运行 |
安装依赖
1 | composer install |
修改配置
1 | #拷贝文件并重命名为.env |
使用vi
命令或nano
命令修改WebStack-Laravel
目录下的.env
文件,对APP_URL
、DB_DATABASE
、DB_USERNAME
、DB_PASSWORD
进行修改。
1 | APP_URL=http://localhost |
生成KEY
1 | php artisan key:generate |
迁移数据
1 | php artisan migrate:refresh --seed |
开启服务
1 | php artisan serve |
注意:默认 Laravel 开启服务后,默认会监听在 localhost
的 8000
端口上。如遇到端口冲突问题,可以可以使用 --host
参数与 —port
参数来更换监听的接口地址或端口号。
1 | php artisan serve --host=0.0.0.0 --port=9889 |
Nginx 反代
修改vhost主机对应的nginx配置文件xx.com.conf
1 | server { |
重启Nginx
1 | /etc/init.d/nginx restart |
正常情况下,现在已经可以通过xx.com
域名直接访问。
常见问题
问题1:使用composer install
命令安装依赖过程中遇到The Process class relies on proc_open, which is not available on your PHP installation.
这类的报错。是因为部分所需的php
函数被禁用导致的。
解决方法:找到php.ini
文件,并搜索disable_functions
找到类似如下内容:
1 | disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server |
找到proc_open
、proc_get_status
并删除即可。
问题2:移数据出错,比如出现SQLSTATE[HY000] [2002] .......Connection timed out
报错,基本是因为.env
文件,数据库配置有误导致,请自行核查配置准确性。
问题3:如何强制Laravel使用HTTPS?
解决方法:找到并修改AppServiceProvider
文件,在boot
中添加一行:
1 | \URL::forceScheme('https'); |
现在你的所有生成的路由链接已经默认是 HTTPS 了。当然你也可以用 Nginx 来做非 HTTPS 跳转,只是我觉得这个方法更加简单。需要注意的是:forceScheme
这个函数在 5.4 的时候更换过名称 , L5.3 及以下版本请使用 \URL::forceSchema('https');
。