作者: itgeeker

  • Nextcloud停留无限登录页面 PHP7的问题及解决方案

    Nextcloud停留无限登录页面 PHP7的问题及解决方案

    升级了新的PHP7.3,安装方法 https://www.itgeeker.net/php7-3-yum-install-on-centos-7/

    Nextcloud 14或者15 无法打开登录界面

    出现错误信息如下:

    内部服务器错误
    服务器不能完成你的请求。
    
    如果再次发生,请在下方将技术详情发送给服务器管理员。
    
    更多细节可以在服务器日志中找到.
    
    技术细节
    远程地址: 210.22.126.186
    请求 ID: kSPvbdWDU7yvwng3516v

    请求的ID会不断改变,查询logo也没有太多有用的信息。基本是php session权限的问题,解决方案:

    vi /etc/php-fpm.d/www.conf 
    #如果是remi yum 安装的php7.3路径/etc/opt/remi/php73/php-fpm.d/www.conf
    
    #根据你的客户端替换
    user = apache
    group = apache
    #为nginx,如果你使用的nginx前端
    user = nginx
    group = nginx
    #更改session目录权限并重启
    chown -R root:nginx /var/lib/php/session/
    systemctl restart php-fpm
    #若无效,试试
    chmod -R 777 /var/lib/php/session

    Nextcloud 14或者15永远停留在登录界面

    输入正确的用户名和密码,点击登入后清空两个字段,还是停留在登录界面。

    看看Nextcloud在Github上的issue部分的留言吧:

    Arnros commented on 12 Nov 2018
    yes it seems to come from php 7.2.
    I just upgraded my version of php 7.0 to 7.2 from remi repo and found myself looping on the login page.
    EDIT: I tried with php7.1 from remi repo and same problem.
    EDIT2: I tried with php7.0 from “webtatic” repo and it’s work.
    EDIT3: I installed php 7.2 from webtatic and it’s work ! I have only problem with remi php.

    https://github.com/nextcloud/server/issues/11149

    里面没提到remi php7.3同样有这个问题,ITGeeker技术奇客建议你安装webtatic的php7.2吧,因为它可以工作,当然我试了一下装php7.0也可以工作,但当你升级到Nextcloud 15之后会在管理员面板提示你的PHP版本不够新。

    如何使用yum安装webtatic的php7.2@CentOS 7

    官方参考页面:https://webtatic.com/packages/php72/

    首先添加源:

    #CentOS/RHEL 7.x:
    yum install epel-release
    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

    安装你想要的php7.2模块 for Nextcloud

    yum --enablerepo=webtatic install mod_php72w php72w-opcache php72w-fpm
    
    yum --enablerepo=webtatic install php72w-pear php72w-bcmath php72w-mysqlnd php72w-gd php72w-common php72w-fpm php72w-intl php72w-cli php72w php72w-xml php72w-opcache php72w-pecl-apcu php72w-pecl-jsond php72w-pdo php72w-gmp php72w-process php72w-pecl-imagick php72w-devel php72w-mbstring php72w-zip php72w-ldap php72w-imap php72w-pecl-mcrypt

    启动php并添加自动启动

    systemctl restart php-fpm
    systemctl enable php-fpm

    The current PHP memory limit is below the recommended value of 512MB

    vi /etc/php.ini
    memory_limit = 512M

    无法打开登录界面

    确认使用的是Apache还是Nginx,修改vi /etc/php-fpm.d/www.conf

    user = apache
    group = apache
    #替换为
    user = nginx
    group = nginx
    #再更新一下权限
    chown -R root:nginx /var/lib/php/session/

    问题解决了,Nextcloud 15顺利登录啦。

    webtatic的php7.2和remi的php7.2安装候选了比较,前者的比较完善,也不用ls链接php执行命令,配置文件也在比较通用的目录。

  • WinSCP代替FileZilla和Xshell

    一直用FileZilla来做SFTP和FTP的工具,它是免费的。

    一直用Xhell来ssh远程登录,因为它针对家庭和学校是免费的。

    今天尝试了WinSCP同时具备这两个功能(SSH调用putty),而且还是开源的。

    FileZilla不能调用Xshell等工具,但WinSCP能方便调用Putty。如果你电脑装有Putty和FileZilla,就可以方便的把它们的配置导入到WinSCP.

    证书格式不同

    WinSCP的证书远程登入的设置没有那么直观,稍有点隐秘,需要去高级配置里选择一下。证书的格式采用putty的格式,和FileZilla的不同,不过它提供即时转换,选择证书后另存一下就可以了。

    比较

    Putty的界面有些简陋,导入导出似乎要用注册表来实现,和xshell不同,只要同步配置文件目录,两台电脑就能看到同样的站点配置。

    WinSCP还没深入使用,回头再更新感受。

  • PHP7.3 yum安装@Centos 7

    PHP7.3 yum安装@Centos 7

    使用remi的源来安装,首先添加源:

    yum install epel-release
    rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

    然后安装你想要的模块:

    yum --enablerepo=remi install php73-php php73-php-pear php73-php-bcmath php73-php-pecl-jsond-devel php73-php-mysqlnd php73-php-gd php73-php-common php73-php-fpm php73-php-intl php73-php-cli php73-php php73-php-xml php73-php-opcache php73-php-pecl-apcu php73-php-pdo php73-php-gmp php73-php-process php73-php-pecl-imagick php73-php-devel php73-php-mbstring php73-php-zip php73-php-ldap php73-php-imap php73-php-pecl-mcrypt

    运行并查看版本, 重启命令, 添加自动启动,链接php文件

    php73 -v
    systemctl restart php73-php-fpm
    systemctl enable php73-php-fpm
    
    ln -s /opt/remi/php73/root/usr/bin/php /usr/bin/php

    一些配置文件的路径:

    # The current PHP memory limit is below the recommended value of 512MB.
    vi /etc/opt/remi/php73/php.ini
    memory_limit = 512M
    
    #如果你运行的是nginx而不是apache,修改
    vi /etc/opt/remi/php73/php-fpm.d/www.conf
    user = apache
    group = apache
    # Replace the values with
    user = nginx
    group = nginx

    卸载所有php7.3

    yum remove php73-php*

    注意:如果使用nextcloud 14或15版本,remi的此php7.3版本会引起锁定在无限登录界面(
    looping on the login page )

  • 悬浮画中画播放器 – 一边放视频直播一边工作[Chrome]

    转发一个很实用的chrome插件,可以一边浏览网页一边看视频了。

    悬浮画中画播放器 是一款适用于绝大多数视频网站的悬浮画中画播放器,它可以将视频以小窗口、全屏置顶的形式在其他标签页中观看,适合一边放视频直播一边工(shang)作(wang)@Appinn

    hello,投稿一个挺好用的 Chrome 插件-悬浮画中画播放器。启用后可以把几乎任何h5直播或者视频通过悬浮播放器播放。特别适合多工操作,一边放视频直播一边工作。

    感谢 @LookRain 的推荐

    青小蛙也有着小窗口播放视频的强烈需求,对于很多视频,其实都是大概看一下就好,尤其一些节奏比较拖沓的剧,如果不想倍速播放,那么边做别的事情边看视频就是一件非常爽的事情,当然如果你有双显示器可能就不需要这个了。

    这个叫做 悬浮画中画播放器 的 Chrome 扩展使用方便,只需要在播放视频的时候,点击扩展栏上的按钮,然后在点击使用悬浮播放器即可。

    不过,这里为什么不是点一下扩展栏按钮就悬浮呢,还需要点一下二级按钮,希望开发者未来可以去掉这个多余的步骤。

    悬浮的播放器可以调整大小和拖拽到任何位置。另外,这个置顶是全屏的,不只是在 Chrome 中,就算切换到了其他程序页面,也会置顶,比如这个:

    写写代码看个视频什么的最爽了。在 Chrome 商店可以安装。

    via 小众软件 https://www.appinn.com/floating-picture-in-picture-video-player/

  • Python实现人民币大写 金额为负时显示错误时的解决方法

    Python实现人民币大写 金额为负时显示错误时的解决方法

    GeekerMaster奇客大师用Odoo开发的一些订单和结算报表都包括金额的人民币大写,采用Num2MoneyFormat的方法,不知道当初是谁分享了这段代码,反正它拯救了很多程序猿的时间。

    取自于斯,分享与斯。这里ITGeeker技术奇客也分享一下改写的Odoo人民币大写转换Python代码@api 8(gist@github):

    使用此段代码创建一个模块,然后在别的模块调用就可以了,调用代码Sample:

        # compute balance RMB
        @api.one
        @api.depends('balance')
        def compute_balance_cn(self):
            if self.balance:
                self.balance_cn = self.env['geeker.rmb.capital'].Num2MoneyFormat(
                    self.balance)
    
        balance_cn = fields.Char(
            'Renminbi (RMB)', compute=compute_balance_cn, readonly=True, store=True, track_visibility='onchange')

    问题: 金额为负时显示大写不正确

    当然最好的解决方法是自己修改源代码解决这个问题,但稍显复杂,也不知道是否会引起别的问题,毕竟是抄的别人的代码。如果有大神愿意指点就更好了。

    那就抄近路变通方式吧,更改前面的调用代码为:

        # compute balance RMB
        @api.one
        @api.depends('balance')
        def compute_balance_cn(self):
            if self.balance >= 0.00:
                self.balance_cn = self.env['geeker.rmb.capital'].Num2MoneyFormat(
                    self.balance)
            else:
                balance_cn_minus = 0 - self.balance
                self.balance_cn = '- ' + self.env['geeker.rmb.capital'].Num2MoneyFormat(
                    balance_cn_minus)
    
        balance_cn = fields.Char(
            'Renminbi (RMB)', compute=compute_balance_cn, readonly=True, track_visibility='onchange')

    把负的金额变成正的,然后再计算出来的人民币大写前面加上一个负号“-”,你也可以改成你想要的其他字符,例如“倒欠”等。

  • 天猫精灵魔盒不支持智能灯泡的解决方法

    天猫精灵魔盒不支持智能灯泡的解决方法

    不知不觉已经有一个天猫精灵魔盒和2个天猫方糖了。双11方糖加灯泡和网关都卖到白菜价了,三样共89元。于是乎家里的吊灯、壁灯、欧瑞博的智能灯带、床底灯、台灯;还有电视、空调、博联的智能插线板都连接到了天猫精灵声控上面。

    基本实现窝在沙发用语音打开关闭照明,调节亮度,天冷的时候在路上打开家里的空调,回家后一句“我回来了”,灯光亮起、音乐响起。。。

    双十一智能灯泡白菜价9.9元,几乎把家里的都换了,结果客厅的天猫精灵魔盒不支持找队友连接智能灯泡。

    吐个槽,阿里巴巴这个很不地道,明明天猫精灵魔盒是天猫方糖的后面一代产品,却不向下兼容。ITGeeker技术奇客当时买公牛智能插座就没连上,估计就是魔盒的原因,估计当时有方糖在手就不用把公牛的插座给退了。

    不是解决办法的解决方案

    买了灯泡连不上,挺失望,想想方糖还在搞活动,就又入了一个。

    两只猫放同一个房间,一说话交互吵闹,好不热闹。

    于是乎把天猫方糖藏到了窗帘后面,然后mute静音,关闭麦克风,经过测试能正常关闭和调节灯泡,算是把问题给解决了。

奇客罗方公众号 奇客罗方小程序 奇客罗方客服 ITGeeker Telegram

网站由ITGeeker技术奇客开发并管理;隶属于GeekerCloud奇客罗方智能科技
Site designed and developed by ITGeekerwhich is a sub-website of GeekerCloud
网站地图 | 沪ICP备2021031434号-4