标签 magento 下的文章

无法在 Magento1.x 后台管理商品图片 - Flash

网站使用的程序是Magento 1.9.0。

1.登录到站点后台,管理商品,无法显示图片,无法上传图片,不能管理
magento-1.x-upload-image-flash-1.png

2.在浏览器的调试控制台里会有红字错误,如Object.Flex.getFlashPlayerVersion
magento-1.x-upload-image-flash-2.png

3.在浏览器里为站点设置Flash权限为“允许”,默认是询问的
magento-1.x-upload-image-flash-3.png

4.刷新站点后台,可以显示图片了
magento-1.x-upload-image-flash-4.png

参考:https://stackoverflow.com/questions/36885864/in-magento-i-cant-upload-the-image-in-the-products

magento - cannot set property 'value' of null - 全站https

环境:magento1.x

1.尝试在magento后台编辑商品描述,提示 cannot set property 'value' of null

2.在浏览器的“开发人员”控制台里会有错误,提示 Blocked loading mixed active content
magento-mix-http-content-2.png

3.在magento的数据库表 core_config_data 里,将 web/unsecure/base_url 也设置为https打头的网址
magento-mix-http-content-3.png

4.再次测试,正常

参考:

手动关闭magento的维护模式

问题:访问站点,提示 “Service Temporarily Unavailable. The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later”

magento-maintenance-flag-1.png

处理:如果 magento 站点根目录有 maintenance.flag 的文件,重命名为其它或删除之。手动关闭维护模式。

magento-maintenance-flag-2.png

参考:https://magento.stackexchange.com/questions/71157/service-temporarily-unavailable-after-installing-a-module

在 FreeBSD 11.2 里安装 Magento2.3

环境:FreeBSD 11.1-RELEASE

过程:

1.pkg install apache24 # 安装 apache2.4
2.pkg install mysql57-server # 安装 mysql server 5.7
3.pkg install php72 php72-curl php72-gd php72-mbstring php72-mysqli php72-openssl php72-pdo_mysql php72-xml php72-dom php72-json php72-xsl php72-ctype php72-intl php72-hash php72-soap php72-filter php72-phar php72-zip php72-iconv php72-bcmath php72-simplexml php72-xmlwriter php72-tokenizer php72-opcache xmlreader php72-xmlreader php72-session php72-wddx php72-sockets php72-readline php72-pcntl php72-gettext php72-exif php72-fileinfo php72-zlib php72-calendar php72-ftp # 安装 php7.2 和相关扩展
4./usr/local/etc/apache24/httpd.conf # 编辑 httpd 的配置文件,本例,启用了好些模块 rewrite_module, mpm_event_module, http2_module, ssl_module, mod_proxy_fcgi, mod_proxy,引用了 httpd-vhosts.conf 文件,禁用了 mpm_worker_module 模块
5./usr/local/etc/apache24/extra/httpd-vhosts.conf # 编辑虚拟主机配置文件,如下例,是添加了https站点 szt.anqun.org的配置内容

Listen 443
<VirtualHost *:443>
        Protocols h2 http/1.1
        ServerName szt.anqun.org

        SSLEngine on
        SSLCertificateFile "/root/.acme.sh/szt.anqun.org/fullchain.cer"
        SSLCertificateKeyFile "/root/.acme.sh/szt.anqun.org/szt.anqun.org.key"

        DocumentRoot "/usr/local/www/szt_anqun_org/public_html"
        ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/www/szt_anqun_org/public_html/$1
        ErrorLog "/usr/local/www/szt_anqun_org/logs/error.log"

    <Directory "/usr/local/www/szt_anqun_org/public_html">
        AllowOverride All
        DirectoryIndex /index.php index.php index.html
        Require all granted
        Allow from all
    </Directory>

</VirtualHost>

6.sysrc apache24_enable=yes # 允许 apache24 服务
7.sysrc mysql_enable=yes # 允许 mysql-server 服务
8.sysrc php_fpm_enable=yes # 允许 php-fpm 服务
9.service apache24 start # 启动 apache24 服务
10.service mysql-server start # 启动 mysql-server 服务
11.service php-fpm start # 启动 php-fpm 服务
freebsd-magento2-3.png
12.ALTER USER 'root'@'localhost' IDENTIFIED BY 'niDEpASSWORD' ; # 首次启动mysql5.7后,root的密码会写在/root/.mysql_secret 文件里,需要用 ALTER USER 命令更改密码后使用
13.下载不带演示数据的magento2安装文件,解压到 /usr/local/www/szt_anqun_org/public_html,且将目录权限设置为www用户所有
14.切换到magento的目录,执行以下命令安装:

sudo -u www php bin/magento setup:install --base-url=https://szt.anqun.org/ \
--db-host=localhost --db-name=mage --db-user=mage --db-password=wpmima888 \
--admin-firstname=Magento --admin-lastname=User --admin-email=liujia@anqun.org \
--admin-user=admin --admin-password=admin123 --language=en_US \
--currency=USD --timezone=America/Chicago --use-rewrites=1

freebsd-magento2-1.png
15.在浏览器访问前台和后台,正常
freebsd-magento2-2.png

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

magento - 不能登录后台 - Mage registry key _singleton/massemail/observer

magento网站程序,可更改 local.xml 配置后,网站前台正常,但访问后台提示错误。

1.在浏览器里尝试登录到magento站点后,提示错误
mage-error-registry-key-1.jpg

2.在var/report里找到相应的事件记录,有如下语句:

a:5:{i:0;s:64:"Mage registry key "_singleton/massemail/observer" already exists";i:1;s:2330:"#0 /www/users/domain.name/app/Mage.php(222): Mage::throwException('Mage registry k...')
#1 /www/users/domain.name/app/Mage.php(476): Mage::register('_singleton/mass...', false)

3.网上查得,可以尝试通过magento的管理脚本compiler.php来关闭comiler功能来解决

php compiler.php state
php compiler.php disable
php compiler.php clear

参考:https://community.magento.com/t5/Magento-1-x-Technical-Issues/Mage-registry-key-quot-singleton-massemail-observer-quot-already/td-p/60351