使用nginx反向代理时,需要留意auth_basic是否也转给了后端

情况:nginx监听80端口,反向代理后边的tomcat,且nginx配置了auth_basic,凭密码访问。输入正确的用户名和密码,但nginx总是提示错误。

过程:

1.查看nginx错误日志,有提示用户不存在的内容,如 user "liujia7" was not found in "D:\nginx-1.15.6/conf/passwd" ,但我明明输入的是用户名是 liujia

2.暂时移除nginx配置文件里的proxy_pass,再次测试,能正常验证密码

3.搜索网上资料,在nginx文件里恢复proxy_pass同时加上proxy_set_header Authorization ""; 即验证信息不转给后端的tomcat,最后测试,也能正常验证密码

        location / {
            root   html;
            auth_basic "Restricted";
            auth_basic_user_file passwd;
            autoindex on;
            autoindex_exact_size on;
            autoindex_localtime on;
            proxy_pass http://tomcat_server$request_uri;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            #index  index.html index.htm;
            
            proxy_set_header   Authorization "";
        }

参考:https://serverfault.com/questions/511846/basic-auth-for-a-tomcat-app-jira-with-nginx-as-reverse-proxy

通过 magento2 管理命令重置网站管理员密码

安装了 magento2.2 ,想修改网站管理员的密码,但没有配置smtp,且可能百度云主机不允许发电子邮件,所以无法通过站点修改密码功能重置密码。

reset-magento2-passord-1.png

过程:

1.php bin/magento admin:user:unlock admin # 转到magento2的站点目录,运行php,通过用户管理功能,先尝试解锁admin(假如账户名是admin)
reset-magento2-passord-2.png

2.php bin/magento admin:user:create --admin-user="admin" --admin-firstname="liu" --admin-lastname="jia" --admin-email="liujia@anqun.org" --admin-password="woaibeijin" # 修改admin账户,姓名liujia,联系电邮liujia@anqun.org,密码woaibeijin
reset-magento2-passord-23png.png

3.用新密码登录,成功

参考:https://devdocs.magento.com/guides/v2.0/install-gde/install/cli/install-cli-subcommands-admin.html

在 Debian 9 里安装 odoo 12

odoo 是一套python写的ERP软件,挺强大。看到论坛里有网友问怎么安装,所以实践了一下。

环境:Debian 9 64位,git 安装 oddo 12

过程:

1.apt update # 更新软件仓库

2.apt install sudo # 添加sudo

3.adduser liujia # 新增一个普通用户liujia,以此用户运行odoo

4.adduser liujia sudo # 将新添加的用户,增加到sudo组中,可用sudo

5.以新增加用户liujia,ssh连接到服务器,以下命令由该用户执行

6.sudo apt install postgresql # 安装postgresql

7.sudo su - postgres -c "createuser -s $USER" # 添加一个与当前用户同名的数据库用户

8.sudo apt install virtualenvwrapper # 安装 virtualenvwrapper

9.source /usr/share/virtualenvwrapper/virtualenvwrapper.sh # 激活 virtualenvwrapper

10.sudo apt install build-essential python3-dev libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-pip # 安装需要的环境

11.git clone https://github.com/odoo/odoo.git # 下载odoo文件,2.23GB,如果不是国外的服务器,会否很慢

12.cd odoo # 转到 odoo 文件目录

13.pip3 install -r requirements.txt # 安装需要的python包

13../odoo-bin --addons-path=addons # 测试,启动。可以看到web端口是8069

14.在浏览器里访问,如 http://drs2.anqun.org:8069 ,新建数据库等
oddo-debian-1.png

15.选择应用安装,这里选择了“网站”
oddo-debian-2.png

16.安装好“网站”应用,会提示选择主题
oddo-debian-3.png

17.“网站”首页效果
oddo-debian-4.png

参考:https://www.odoo.com/documentation/master/setup/install.html

MySQL 5.7 - You must reset your password using ALTER USER statement before executing this statement

感谢“冬日”。

CentOS 7 系统,安装了mysql 5.7。

现象:用mysql客户端sql查询,如列出数据库,提示 You must reset your password using ALTER USER statement before executing this statement
mysql-57-password-1.png

处理:执行sql语句 - ALTER USER 'root'@'localhost' IDENTIFIED BY 'CNnet!9283'; 更新root用户密码
mysql-57-password-2.png

参考:https://stackoverflow.com/questions/33467337/reset-mysql-root-password-using-alter-user-statement-after-install-on-mac

在 Debian 9 系统里安装发卡网站程序 zfaka

感谢徐老板。

系统是Debian 9 64位,zfaka 的程序版本是 1.2.3。

过程:

1.先据此,安装好 nginx + php7.0 + mariadb 的运行环境

2.apt install libpcre3 libpcre3-dev php7.0-dev git unzip # 安装相应的工具,准备安装yaf

3.wget -O /usr/local/src/yaf.zip https://github.com/laruence/php-yaf/archive/master.zip # 下载php-yaf安装包

4.unzip yaf.zip # 解压

5.cd yaf-master # 转到文件目录

6./usr/bin/phpize # 安装

7../configure --with-php-config=/usr/bin/php-config # 配置

8.make # 编译

9.make install # 将编译好的文件安装到相应的模块路径

10.echo extension=yaf.so >> /etc/php/7.0/fpm/php.ini # 在php配置文件中添加上模块

11.echo yaf.use_namespace=1 >> /etc/php/7.0/fpm/php.ini # 启用命名空间

12.下载zfaka的安装文件到 /var/www/zfaka

13.配置nginx站点内容

站点文件路径为:/var/www/zfaka/public

站点的rewrite为:

        location / {
                if (!-e $request_filename) {
                        rewrite ^/(.*)$ /index.php?$1 last;
                }
        }

站点的php文件部分内容为:

        location ~ \.php$ {
                fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

14.cp /var/www/zfaka/conf/application.ini.new var/www/zfaka/conf/application.ini # 创建配置文件

15.chown -R www-data. /var/www/zfaka # 调整权限

16.在浏览器里访问,安装
zfaka-1.png

17.安装好后,前台
zfaka-2.png

18.后台
zfaka-3.png

19.*/2 * * * * www-data php -q /var/www/zfaka/public/cli.php request_uri="/crontab/sendemail/index" # 添加任务内容到 crontab

参考: