标签 magento 下的文章

magento1.x - 发邮件扩展 - 替换flash上传图片

问题:阿里云的主机产品,默认禁止通过主机连接外网TCP 25端口,magento 1.9.2 无法发出邮件。
尝试:magento1.x 安装 aschroder 写的 Magento-SMTP-Pro-Email-Extension 扩展后,用第三方SMTP发邮件。

问题:magento 1.9.2 管理后台,无法上传产品图片。
尝试:因为 magento 1.x 版本的程序默认使用老掉牙的Flash功能来上传图片,但现在主流浏览器已经默认禁止Flash运行了,所以需要安装 No-Flash-Image-Uploader 扩展来替换Flash上传的功能。

参考:

centos7 安装 magento 2.4

a. 安装环境

  1. rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm # 安装epel源
  2. rpm -ivh http://rpms.remirepo.net/enterprise/remi-release-7.rpm # 安装remi的php74源
  3. yum install php74-php-bcmath php74-php-ctype php74-php-curl php74-php-dom php74-php-gd php74-php-hash php74-php-iconv php74-php-intl php74-php-mbstring php74-php-openssl php74-php-pdo_mysql php74-php-simplexml php74-php-soap php74-php-xsl php74-php-zip php74-php-sockets php74-php-fpm php74-php # 安装php74及相关模块
  4. yum install httpd mod_ssl # 安装apache
  5. rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm # 安装mysql57源
  6. yum install mysql-community-server # 安装mysql57
  7. systemctl start mysqld # 启动mysql
  8. systemctl enable mysqld # 令mysql随机启动
  9. grep 'temporary password' /var/log/mysqld.log # 查看mysql安装后临时密码
  10. mysql -uroot -p # 连接到mysql控制台
  11. 在mysql控制台,更改root用户密码。创建新mysql用户、数据库,分配好权限,最后导入演示的数据库文件

    create database mage;
    create user 'mage'@'localhost' identified by 'userpasswd';
    grant all privileges on mage.* to 'mage'@'localhost' with grant option;
    use mage;
    source rubix.sql;
  12. 将完整的网站文件解压后放到/home/apache/web
  13. ln -s /opt/remi/php74/root/bin/php /usr/local/bin/php # 创建php的执行软链接
  14. systemctl enable php74-php-fpm # 令php-fpm随机启动
  15. systemctl start php74-php-fpm # 启动php-fpm
  16. mkdir /etc/httpd/ssl # 创建目录ssl,且将域名证书文件放在这里
  17. vi /etc/httpd/conf.d/my.conf # 创建新站点配置文件内容

     DocumentRoot "/home/apache/web"
     ServerName www.anqun.org
     ServerAlias anqun.org
    
     <Directory /home/apache/web>
      AllowOverride all
    Require all granted
     </Directory>
    </VirtualHost>
    
    <VirtualHost *:443>
     ServerName www.anqun.org
     ServerAlias anqun.org
     DocumentRoot "/home/apache/web"
    
     ErrorLog /home/apache/log/error.log
    
     SSLEngine on
     SSLCertificateFile /etc/httpd/ssl/web.cer
     SSLCertificateKeyFile /etc/httpd/ssl/web.key
    
     <Directory /home/apache/web>
      AllowOverride all
    Require all granted
     </Directory>
    </VirtualHost>
    
  18. systemctl start httpd # 启动apache
  19. systemctl enable httpd # 令apache随机启动
  20. chown apache:apache -R /home/apache/web # 更改站点文件目前权限为apache所有
  21. yum -y install java-1.8.0-openjdk # 安装openjdk
  22. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.11.2-x86_64.rpm # 下载elasticserch 安装包。如果国内下载很慢,请尝试用香港机下载
  23. rpm --install elasticsearch-7.11.2-x86_64.rpm # 安装 elasticserch
  24. systemctl enable elasticsearch.service # 令elasticsearch随机启动
  25. systemctl start elasticsearch.service # 启动elasticsearch
  26. vi /etc/passwd # 更改apache用户的默认目录和shell,让它可以执行magento的维护命令

b. 安装magento

  1. su apache # 从root切换到apache用户
  2. cd /home/apache/web # 切换到程序目录
  3. vi app/etc/env.php # 更改配置文件里的数据库连接信息
  4. 更改magento网址

    php bin/magento setup:store-config:set --base-url="http://www.anqun.org/"
    php bin/magento setup:store-config:set --base-url-secure="https://www.anqun.org/"
  5. 修改php.ini配置文件中的memory_limit值,如将默认的128M,修改为1280M,预防php执行内存超限
  6. 执行以下命令来更新站点

    php bin/magento indexer:reindex
    php bin/magento setup:upgrade
    php bin/magento setup:static-content:deploy -f
    php bin/magento cache:flush
  7. 在浏览器里访问站点管理后台,http://www.anqun.org/admin

参考:

magento2.4 网站后台 禁用手机验证2FA功能 - Magento_TwoFactorAuth

问题:通过 compose 安装了新版本的 magento 2.4.1,首次登录站点后台,提示:You need to configure Two-Factor Authorization in order to proceed to your store's admin area

尝试:可通过magento的管理工具来禁用该模块 bin/magento module:disable Magento_TwoFactorAuth 。新版本的 magento ,如 2.4.6 ,需要执行 bin/magento module:disable Magento_TwoFactorAuth Magento_AdminAdobeImsTwoFactorAuth

参考:https://github.com/magento/magento2/issues/29312

cPanel - WHM - Invalid command 'SetEnv' - <IfVersion

问题:新安装的cPanel/WHM 环境,访问Magento2程序网站返回500错误,日志里有如下的内容:

public_html/.htaccess: Invalid command 'SetEnv', perhaps misspelled or defined by a module not included in the server configuration
public_html/app/.htaccess: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration

尝试:以root账户登录到WHM面板,通过EasyApache4,安装mod_envmod_version的apache组件。

参考:

magento2 - 重新生成缓存目录各尺寸的图片 - php bin/magento catalog:image:resize

问题:下载的magento2和模板集成包,安装后首页部分演示图片不能正常显示,web返回404错误,到站点文件目录查看,是没有如 pub/media/catalog/product/cache/f9c7fbe9b524c081a3ccf800cbd963eb/ 的目录。

尝试:通过magento2的管理命令,执行 php bin/magento catalog:image:resize 重新生成缓存图片目录和文件。缺点是,如果图片多,可能会花时间较久。

参考:https://magento.stackexchange.com/questions/175224/regenerate-catalog-cache-images-issues