使用基于php-mysql的网站进行管理和安全


Administration and security with a php-mysql based website

我的问题很一般,因为我没有一个关于我应该做什么的细节!

我正在开发一个包含会员区的网站。每个用户都通过登录名和密码进行注册,并可以访问表单,以便编辑和更新他们的个人页面。非注册用户可以访问一个小搜索引擎,根据一些特征查找个人用户页面。

此网站在php中开发,现在托管在localhostXampp

我的问题是关于管理和安全

该网站的管理部门将要求删除和更新用户在其个人页面上发布的数据。

因此,现在在localhost中,我只需通过phpMyAdmin来修改这些表。

-我能在网站上线时也这样做吗?

-使用管理部分是否比通过phpMyAdmin进入表格更快?用户的密码是加密的,以防数据被窃取,所以无论如何,我都不能使用他们的登录名和密码连接到那里的个人页面来删除数据,以防他们不遵守网站规则?

关于安全性,是否需要使用我所描述的网站类型的.htaccess来保护文件?

我保护php脚本不受主要安全漏洞的影响(xss、sql注入、csrf、上传),但我不完全理解网站上线后还应该做什么。

例如,mysql有一个连接到数据库的密码:该密码存储在'databse.php'中,类似于

    $db = new Database('login', 'password', 'website'); 

当网站在服务器上时,此密码的用途是什么?管理员以外的其他人可以访问服务器上的文件吗?

正如你所看到的,我的问题有点困惑,因为当涉及到从本地主机跳到万维网时,我对管理和安全的了解并不清楚!

谢谢你的帮助。

我认为你所做的很好,但我建议使用现有的CMS来改进你的PHP。对于这样一个被描述为你的网站来说,Drupal将是一个伟大的选择:)

如果你仍然有兴趣追求这一点,那么看看会话——这就是你想要开始的地方(每页的用户权限)。

我能在网站上线时也这样做吗?

是的。在本地phpmyadmin文件夹中,找到config.inc.php文件,并将$cfg['Servers'][$i]['host'] = 'localhost';行更改为您的实时mysql服务器地址。

  1. .htaccess是非常需要的,根据你的网站性质,你可以屏蔽这个等中的目录列表,你的htaccess文件可以保护恶意文件的执行
  2. 尝试在密码中使用算法,即sha256与salt或hash密码

安全性必须存在,因为漏洞会让你的网站一团糟。