
Archives for 日常随笔
如果你在搬家后遇到无法发文章或上传图片的问题,通常是因为权限设置不当导致的。以下是一些详细的步骤来解决这些问题:
1. 检查目录权限
无法发文章
检查栏目目录及子文件夹权限
确保栏目目录及其子文件夹具有适当的权限。
通常需要将这些目录设置为 777 权限。
sh
chmod -R 777 /path/to/your/columns/directory
例如,如果你的栏目目录是 /e/data/news:
sh
chmod -R 777 /e/data/news
无法上传图片
检查附件存放目录权限
确保附件存放目录具有适当的权限。
通常需要将这些目录设置为 777 权限。
sh
chmod -R 777 /path/to/your/attachments/directory
例如,如果你的附件存放目录是 /e/data/attached/images:
sh
chmod -R 777 /e/data/attached/images
2. 设置权限
使用命令行
进入目录
使用 SSH 登录到服务器。
进入相应的目录。
sh
cd /path/to/your/directory
设置权限
使用 chmod 命令设置权限。
sh
chmod -R 777 /path/to/your/directory
例如:
sh
chmod -R 777 /e/data/news
chmod -R 777 /e/data/attached/images
3. 检查并设置权限(通过FTP客户端)
使用FTP客户端连接到服务器
使用 FTP 客户端(如 FileZilla)连接到服务器。
设置权限
右键点击相应的目录,选择“文件属性”或“权限”选项。
设置权限为 777。
4. 检查后台设置
进入后台
登录帝国CMS后台。
系统设置
进入“系统设置” -> “文件设置”。
附件存放目录
查看并确认附件存放目录的位置。
确保该目录路径正确,并且具有 777 权限。
5. 清理缓存
清理缓存
清理帝国CMS的缓存文件,确保新的设置生效。
sh
rm -rf /e/data/cache/*
6. 重启Web服务器
重启Web服务器
重启 Web 服务器以确保所有更改生效。
对于 Apache:
sh
sudo service apache2 restart
对于 Nginx + PHP-FPM:
sh
sudo service php-fpm restart
注意事项
安全性
设置 777 权限虽然可以解决问题,但可能存在安全隐患。建议在设置完成后尽快调整权限为更安全的值(如 755 或 775)。
如果服务器上有多个用户,确保只有必要的用户具有写权限。
备份
在进行任何操作之前,最好先备份相关目录和文件,以防万一。
通过上述步骤,你应该能够解决搬家后无法发文章或上传图片的问题。如果问题依然存在,请进一步检查服务器日志和其他配置文件,确保没有遗漏的地方。如果有其他具体错误信息,请提供详细信息以便进一步诊断。
...more»
帝国CMS 7.5在升级到PHP 7.4后出现了后台登录报错的问题,可以通过以下几个步骤来解决:
1. 确认数据库接口类型
帝国CMS 7.5 支持 PHP 7.x 系列,但需要确保数据库接口类型正确配置为 mysqli。
已经安装好的帝国CMS
修改配置文件
打开文件 /e/config/config.php。
将 $ecms_config = 'mysql'; 修改为 $ecms_config = 'mysqli';。
php
$ecms_config = 'mysqli';
注意事项:
UTF-8 文件不能用记事本修改文件,否则会将文件转为GBK编码。
推荐使用 Dreamweaver 或其他支持 UTF-8 编码的编辑器进行修改。
2. 修改 php.ini 配置
错误报告级别
修改 error_reporting
打开 php.ini 文件。
将 error_reporting = E_ALL 修改为 error_reporting = E_ALL & ~E_NOTICE。
ini
error_reporting = E_ALL & ~E_NOTICE
重启 Web 服务器
重启 Web 服务器(如 Apache 或 Nginx)以使新的设置生效。
对于 Apache:
sh
sudo service apache2 restart
对于 Nginx + PHP-FPM:
sh
sudo service php-fpm restart
错误显示
关闭错误显示
打开 php.ini 文件。
将 display_errors = On 修改为 display_errors = Off。
ini
display_errors = Off
重启 Web 服务器
重启 Web 服务器以使新的设置生效。
3. 宝塔环境下的配置修改
如果你使用的是宝塔环境,可以直接在宝塔面板中修改配置:
打开宝塔面板
登录宝塔面板。
修改 PHP ...more»
如果你忘记了帝国网站管理系统的后台账号和密码,可以通过以下几个步骤来尝试恢复或重置:
情况一:只知道密码忘记了
使用数据库管理工具
登录phpMyAdmin或其他数据库管理工具。
选择帝国CMS所使用的数据库。
找到用户表,通常为phome_enewsuser,但请注意实际表名可能会根据安装时设定的前缀有所变化。
编辑用户记录,将password字段更改为新密码的MD5哈希值,例如322d3fef02fc39251436cb4522d29a71(这是123456的MD5值)。
如果存在salt字段,将其设置为一个随机字符串,如abc。
情况二:账号和密码都忘记了
查找账号
在phome_enewsuser表中查看username字段,找到你的管理员账号。
如果找不到,可能是因为表名前缀被修改过。查找带有_enewsuser的表名,例如jxhx_enewsuser。
重置密码
使用找到的账号,按照情况一中的步骤重置密码。
情况三:账号被禁用
检查账号状态
在用户表中检查是否存在一个状态字段(如status),确保该字段的值允许登录。
如果状态被禁用,将该字段更改为允许登录的状态(通常为1)。
...more»
如果你在尝试重置帝国CMS后台密码时遇到了“您的用户名、密码或安全答案有误,也可能您的账号已被禁用”的提示,这可能是因为你的账户状态存在问题,或者是由于数据库中的某些字段需要特别处理才能完成密码重置。以下是一些可能的解决方案:
步骤一:检查账号状态
检查账号是否被禁用
在phome_enewsuser表中,检查你的账号是否存在被禁用的状态标志。如果存在,需要将该标志移除。
步骤二:手动重置密码
登录phpMyAdmin
登录到phpMyAdmin或者其他数据库管理工具。
选择数据库
选择帝国CMS所使用的数据库。
找到用户表
找到用户表phome_enewsuser。
编辑用户记录
选择要重置密码的用户记录,编辑该记录。
修改密码字段
将password字段设置为你希望的新密码的MD5哈希值。
例如,如果你想将密码设为123456,则password字段应更改为322d3fef02fc39251436cb4522d29a71。
修改salt字段
如果存在salt字段,将其设置为一个随机字符串,如abc。
保存更改
保存更改。
SQL示例
如果上述方法不奏效,你可以尝试直接执行SQL语句来重置密码:
UPDATE phome_enewsuser
SET password = '322d3fef02fc39251436cb4522d29a71',
salt = 'abc',
status = 1 -- 假设status字段表示账号状态,1代表启用
WHERE username = '你的管理员账号';
替换你的管理员账号为实际的管理员用户名。
特殊情况处理
如果上述方法仍然无法解决问题,可能是因为你的数据库表前缀已经被修改。在这种情况下,你需要找到正确的表名。通常表名可能是*_enewsuser的形式,其中*是你设置的表前缀。
示例步骤
确定表前缀
在数据库中查找包含_enewsuser的表名,以确定正确的表前缀。
执行SQL命令
根据找到的表名执行上述SQL命令。
例如,如果你的表前缀是qinshining.com_,则表名为qinshining.com_enewsuser。
UPDATE qinshining.com_enewsuser
SET password = '322d3fef02fc39251436cb4522d29a71',
salt = 'abc',
status = 1
WHERE username = '你的管理员账号';
注意事项
安全性
在执行上述操作时,请确保你有足够的权限,并且操作是在安全的环境下进行的。
更新密码后,请妥善保管新的密码,并考虑启用更高级的安全措施,如两步验证。
备份
在进行任何数据库操作之前,最好先备份数据库,以防万一。
通过上述步骤,你应该能够解决“您的用户名、密码或安全答案有误,也可能您的账号已被禁用”的问题。如果问题依然存在,建议进一步检查数据库中的用户记录,或者联系技术支持获取帮助。
...more»
如果你忘记了帝国CMS后台的登录密码,可以通过直接修改数据库中的相关记录来进行密码重置。以下是具体的步骤:
步骤一:登录phpMyAdmin
访问phpMyAdmin
打开浏览器,访问phpMyAdmin的URL,通常是:
http://yourdomain.com/phpmyadmin
其中yourdomain.com需要替换成你的实际域名或者服务器IP地址。
登录phpMyAdmin
输入数据库的用户名和密码登录phpMyAdmin。
步骤二:修改密码
选择数据库
在phpMyAdmin中选择帝国CMS使用的数据库。
找到管理员用户表
在数据库中找到phome_enewsuser表,这个表存储了管理员用户的账号信息。
编辑管理员用户记录
选择phome_enewsuser表,然后点击“浏览”按钮查看表中的记录。
找到对应的管理员用户记录,并点击“编辑”按钮。
修改密码字段
在编辑界面中,找到password字段,将其内容更改为新的MD5加密后的密码字符串。
例如,如果你想将密码设为123456,则password字段应更改为322d3fef02fc39251436cb4522d29a71。
添加salt字段
同时,你可能还需要修改salt字段的内容,将其更改为一个随机字符串,如abc。
保存更改
点击“执行”按钮保存更改。
...more»
如果你忘记了帝国CMS后台管理员的账号,可以通过直接查询数据库的方式来找回或重置账号。以下是具体的步骤:
步骤一:登录phpMyAdmin
访问phpMyAdmin
打开浏览器,访问phpMyAdmin的URL,通常是:
http://yourdomain.com/phpmyadmin
其中yourdomain.com需要替换成你的实际域名或者服务器IP地址。
登录phpMyAdmin
输入数据库的用户名和密码登录phpMyAdmin。
步骤二:查询管理员账号
选择数据库
在phpMyAdmin中选择帝国CMS使用的数据库。
查询管理员账号
在SQL查询窗口中,输入以下SQL查询语句来查看管理员账号:
sql
SELECT username FROM phome_enewsuser;
执行查询,查看结果中的username字段,这将显示现有的管理员账号。
步骤三:重置密码(如果需要)
如果你不仅忘记了账号,还需要重置密码,可以通过以下步骤进行:
生成新密码
使用在线MD5加密工具生成一个新的密码。例如,如果你想要设置的新密码是newpassword,则生成其MD5哈希值。
更新数据库
在SQL查询窗口中,输入以下SQL更新语句来更新管理员密码:
sql
UPDATE phome_enewsuser SET password = '新生成的MD5哈希值' WHERE username = '你的管理员账号';
替换新生成的MD5哈希值为你刚刚生成的MD5哈希值,替换你的管理员账号为实际的管理员账号。
执行更新
执行更新语句,这将会把指定管理员账号的密码更新为你新设置的密码。
注意事项
安全性
在执行上述操作时,请确保你有足够的权限,并且操作是在安全的环境下进行的。
更新密码后,请妥善保管新的密码,并考虑启用更高级的安全措施,如两步验证。
备份
在进行任何数据库操作之前,最好先备份数据库,以防万一。
通过以上步骤,你可以找回或重置帝国CMS后台管理员的账号和密码。如果你还有其他问题或需要进一步的帮助,请随时告知。
...more»
当你在 PHP 应用中遇到 “Notice: Use of undefined constant” 的错误提示时,这通常是因为代码中引用了一个未定义的常量。这种错误通常不会导致程序崩溃,但会影响代码的可读性和稳定性。
错误原因
未定义的常量
代码中引用了一个未定义的常量。
错误报告级别
当前的错误报告级别设置了 E_ALL,因此会报告所有的错误和警告,包括未定义常量的警告。
解决方法
方法一:修改 php.ini 文件
定位 php.ini 文件
找到你的 PHP 安装目录下的 php.ini 文件。可以通过 PHP 脚本输出 phpinfo() 来查找 php.ini 文件的位置。
php
<?php
phpinfo();
?>
修改 error_reporting 设置
打开 php.ini 文件,找到 error_reporting 这一行。
将 error_reporting = E_ALL 修改为 error_reporting = E_ALL & ~E_NOTICE。
ini
error_reporting = E_ALL & ~E_NOTICE
重启 Web 服务器
修改完 php.ini 文件后,需要重启 Web 服务器(如 Apache 或 Nginx)以使新的设置生效。
对于 Apache,可以通过命令行执行:
sh
sudo service apache2 restart
对于 Nginx,如果是与 PHP-FPM 配合使用,需要重启 PHP-FPM 服务:
sh
sudo service php-fpm restart
示例步骤
假设你在 Linux 系统下进行操作:
定位 php.ini 文件
执行以下 PHP 脚本输出 phpinfo(),找到 php.ini 文件的位置。
php
<?php
phpinfo();
?>
通常 php.ini 文件位于 /etc/php/版本号/apache2/php.ini 或 /etc/php/版本号/cli/php.ini。
修改 php.ini 文件
打开 php.ini 文件,找到 error_reporting 这一行。
将 error_reporting = E_ALL 修改为 error_reporting = E_ALL & ~E_NOTICE。
ini
error_reporting = E_ALL & ~E_NOTICE
重启 Web 服务器
修改完 php.ini 文件后,重启 Web 服务器。
对于 ...more»
帝国CMS系统的数据库配置文件位置取决于你使用的帝国CMS的具体版本。对于不同版本的帝国CMS,数据库配置文件的位置有所不同:
对于帝国CMS 7.0及之后的版本,数据库配置文件位于:
/e/config/config.php
对于帝国CMS 7.0之前的版本,数据库配置文件位于:
/e/class/config.php
因此,如果你使用的是帝国CMS 7.0或更高版本,那么数据库配置文件应该是/e/config/config.php。如果你使用的是7.0之前的版本,则数据库配置文件应该是/e/class/config.php。
如何确认版本
如果你不确定帝国CMS的确切版本,可以通过以下方式确认:
检查版本查询文件
版本查询文件路径通常为 /e/class/EmpireCMS_version.php。
登录后台
登录帝国CMS后台,通常在后台首页或系统信息页面会显示版本信息。
数据库配置文件内容
数据库配置文件包含了数据库连接所需的关键信息,如数据库服务器地址、端口、用户名、密码、数据库名称以及字符集等。例如,在config.php文件中,数据库配置信息可能如下所示:
$dbhost = 'localhost'; // 数据库服务器地址
$dbport = '3306'; // 数据库端口号
$dbuser = 'your_database_username'; // 数据库用户名
$dbpw = 'your_database_password'; // 数据库密码
$db = 'your_database_name'; // 数据库名称
$dbcharset = 'utf8'; // 数据库字符集
$tablepre = 'phome_'; // 表前缀
修改数据库配置信息
如果你需要修改数据库配置信息,只需要打开相应的配置文件,并根据实际情况修改上述变量的值即可。修改完毕后,记得保存文件并重新加载帝国CMS后台或重新进行安装/迁移操作。
...more»
帝国CMS的默认后台管理地址通常是:
http://yourdomain.com/e/admin/
其中yourdomain.com需要替换成你的实际域名。如果你是在本地开发环境中运行,可能会是类似http://localhost/e/admin/这样的地址。
后台管理目录是否可以修改
是的,帝国CMS后台管理目录是可以修改的。为了提高安全性,推荐修改默认的后台管理目录名称,以避免被恶意用户轻易猜到后台入口。
修改后台管理目录的方法
重命名目录
将/e/admin/目录重命名为一个新的名称,比如/e/myadmin/。
修改配置文件
修改配置文件以反映新的后台管理目录名称。
对于帝国CMS 7.5及以上版本,可以按照以下步骤进行修改:
重命名index.php文件
将/e/admin/index.php重命名为新的文件名,比如/e/admin/newadmin.php。
重命名ecmsadmin.php文件
将/e/admin/ecmsadmin.php也重命名为新的文件名,比如/e/admin/newadmin.php。
更新链接
确保所有指向后台管理目录的链接都更新为新的名称。
清除缓存
清除帝国CMS的缓存以确保更改生效。
...more»
当你在登录帝国CMS后台时遇到“登录成功”但紧接着提示“您还未登录”的问题,这通常是因为后台登录相关的目录权限设置不当。具体来说,/e/data/adminlogin目录的权限设置不正确,导致登录信息无法正确保存。
解决方法
设置目录权限
将/e/data/adminlogin目录的权限设置为777。
具体步骤
1. 设置目录权限
通过FTP客户端设置权限
使用FTP客户端(如FileZilla、WinSCP等)连接到服务器。
导航到/e/data/adminlogin目录。
右键点击该目录,选择“文件属性”或“权限”选项。
将权限设置为777。
示例操作(以FileZilla为例):
连接到服务器
打开FileZilla,输入服务器地址、用户名和密码,连接到服务器。
导航到目录
在远程站点面板中,导航到/e/data/adminlogin目录。
设置权限
右键点击adminlogin目录,选择“文件属性”。
在弹出的对话框中,将权限设置为777。
点击“确定”保存设置。
通过SSH命令设置权限
如果你有SSH访问权限,可以通过命令行设置权限。
sh
ssh your_username@your_server_ip
sudo chmod -R 777 /e/data/adminlogin
示例命令:
sh
ssh your_username@your_server_ip
sudo chmod -R 777 /e/data/adminlogin
注意事项
安全风险
将目录权限设置为777会增加安全风险,因为任何人都可以读写该目录。建议在设置权限后尽快调整为更安全的权限(如755)。
验证权限设置
设置权限后,重新登录后台,确认问题是否解决。
...more»
