0
我已閱讀Stack Overflow的問題,與此問題非常相似,但不完全相同。通過CMS管理網站配置
比方說,我有我的包含網站的每個頁面上的以下config.inc.php文件:
<?php
$site_name = 'Acme Inc.';
$authenticate_with_ldap = true;
$ldap_host = 'ldap.example.com';
$ldap_port = 389;
$ldap_rdn = 'ldap-user';
$ldap_password = 'ldap-pass';
$ldap_dn = 'ou=example,dc=example,dc=com';
$smtp_username = 'smtp-user';
$smtp_password = 'smtp-pass';
$recaptcha_publickey = 'my-recaptcha-publickey';
$recaptcha_privatekey = 'my-recaptcha-privatekey';
?>
注:我選擇,以保持網站配置文件而不是數據庫,因爲這些信息在整個網站上都會被使用,並且會有更多的代碼,而且我猜測,必須經常向數據庫查詢相同的信息需要更多的開銷。
現在我們假設網站管理員是喜歡使用CMS編輯上述信息的人的類型,而不是手動進入和編輯文件。我擔心的是,當網站管理員點擊「更新」按鈕並且PHP腳本到達覆蓋config.inc.php文件的file_put_contents
函數時,可能會出錯,並且由於語法的原因而破壞文件或使其不可用錯誤或某事。
這是一個合理的關注嗎?我應該告訴網站管理員他應該強硬一下並手動編輯文件嗎?我應該將信息存儲在數據庫中嗎?或者我應該將這些信息存儲在兩個地方,以便如果文件混亂,可以使用數據庫中的信息重新生成該文件?