本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~
在本文中部分命令操作需要root权限,输入‘’命令后输入密码即可切换root身份。
设置文件允许80端口和3306端口。因为80端口是http协议所使用的端口,如果防火墙禁止80端口的话,网站配置好了也无法从外网访问。3306端口是MySql数据库的默认端口。使用VIM打开iptables文件并添加规则:
<span 1</span> <span 打开iptables文件进行修改 </span><span 2</span> vim /etc/sysconfig/<span iptables </span><span 3</span> <span 4</span> <span 加入下列两行 </span><span 5</span> -A INPUT -p tcp -m state --state NEW -m tcp --dport <span 80</span> -<span j ACCEPT </span><span 6</span> -A INPUT -p tcp -m state --state NEW -m tcp --dport <span 3306</span> -j ACCEPT
添加好后文件应该如下图,如果以前修改过该文件责可能和笔者的图中略有不同:
2. 关闭SELINUX
中提供的()系统。对于目前可用的 安全模块来说,SELinux 是功能最全面,基本上都是用负载均衡设备做流量分发,对外仅开放了仅有的几个端口。所以综合安全性和复杂性来说,SELinux的性价比并不高。修改文件关闭SELinux,设置后如图:
<span 1</span> vim /etc/selinux/<span config </span><span 2</span> <span 3</span> <span 注释掉如下两行,在行首添加#注释。 </span><span 4</span> SELINUX=<span enforcing </span><span 5</span> SELINUXTYPE=<span targeted </span><span 6</span> <span 7</span> <span 在后面增加: </span><span 8</span> SELINUX=disabled
’重启系统。
<span 1</span> <span 通过yum软件包管理器安装MySql,管理器会自动安装依赖项,遇到询问直接输入y确认,直到显示“Complete!”完成。 </span><span 2</span> <span yum</span> <span install</span> mysql mysql-<span server </span><span 3</span> <span 4</span> <span 启动MySql </span><span 5</span> /etc/init.d/<span mysqld start </span><span 6</span> <span 7</span> <span 设置MySql服务为开机启动 </span><span 8</span> <span chkconfig mysqld on </span><span 9</span> <span 10</span> <span 复制MySql默认配置文件,直接覆盖/etc/my.cnf </span><span 11</span> <span cp</span> /usr/share/mysql/my-medium.cnf /etc/my.cnf
MySql设置:
<span <span 输入如下命令后需要连续输入两次密码确认,有询问输入Y同意即可,成功后显示</span></span><span Thanks for using MySQL!。</span>
<span mysql_secure_installation</span>
设置成功后需要重启MySql服务:
<span 1</span> /etc/init.d/<span mysqld stop </span><span 2</span> /etc/init.d/mysqld start
2. Apache服务的安装和配置
<span 1</span> <span 安装httpd </span><span 2</span> <span yum</span> <span install</span><span httpd </span><span 3</span> <span 4</span> <span 启动Apache服务 </span><span 5</span> /etc/init.d/<span httpd start </span><span 6</span> <span 7</span> <span 编辑apache设置 </span><span 8</span> vim /etc/httpd/conf/<span httpd.conf </span><span 9</span> <span 查找 <span #ServerName www.example.com:80</span></span> <span 10</span> <span 修改成 <span ServerName</span> <span www.XXXX.com:80</span></span> <span 11</span> <span 其中的“www.XXXX.com”自己的域名,没有可设置为localhost,如图 </span><span 12</span> <span 13</span> <span 设置Apache服务开机启动 </span><span 14</span> <span chkconfig httpd on </span><span 15</span> <span 16</span> <span 重启Apache服务 </span><span 17</span> /etc/init.d/httpd restart
3.安装PHP
<span 遇到询问直接输y确认 </span><span yum</span> <span install</span> php
安装PHP插件:
<span 插件包括MySql支持等,遇到询问一如既往的y确认~~ </span><span yum</span> <span install</span> php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt
安装完成后不要忘了重启Apache和MySql:
/etc/init.d/<span mysqld restart </span>/etc/init.d/httpd restart
到此软件的安装就结束了,接下来进行配置和测试。
<span 1</span> <span 编辑文件Apache设置文件 </span><span 2</span> <span vi</span> /etc/httpd/conf/<span httpd.conf </span><span 3</span> <span 4</span> <span <span 44行:</span> 修改 <span ServerTokens OS</span> 为 <span ServerTokens Prod </span></span><span 5</span> <span 防止错误页显示操作系统名字 </span><span 6</span> <span 7</span> <span <span 76行:</span> 修改 <span KeepAlive Off</span> 为 <span KeepAlive On </span></span><span 8</span> <span 允许程序性联机 </span><span 9</span> <span 10</span> <span 83行:</span> 修改 <span MaxKeepAliveRequests 100</span> 为 <span MaxKeepAliveRequests 1000</span> <span 11</span> <span 增加同时连接数 </span><span 12</span> <span 13</span> <span <span 331行:</span> 修改 <span Options Indexes FollowSymLinks</span> 为 <span Options Includes ExecCGI FollowSymLinks </span></span><span 14</span> <span 允许服务器执行CGI及SSI,防止列出目录 </span><span 15</span> <span 16</span> <span <span 338行:</span> 修改 <span AllowOverride None</span> 为 <span AllowOverride All </span></span><span 17</span> <span 允许.htaccess </span><span 18</span> <span 19</span> <span <span 402行:</span> 修改 <span DirectoryIndex index.html index.html.var</span> 为 <span DirectoryIndex index.php Default.php index.html index.htm Default.html Default.htm </span></span><span 20</span> <span 添加php默认文档 </span><span 21</span> <span 22</span> <span <span 536行:</span> 修改 <span ServerSignature On</span> 为 ServerSignature Off </span><span 23</span> <span 防止错误页显示Apache版本 </span><span 24</span> <span 25</span> <span <span 554行:</span> 修改 <span Options Indexes MultiViews FollowSymLinks</span> 为 <span Options MultiViews FollowSymLinks </span></span><span 26</span> <span 不显示树状目录结构 </span><span 27</span> <span 28</span> <span 759行:</span> 根据需要设置为 <span AddDefaultCharset UTF-8</span><span 或者 <span AddDefaultCharset GB2312 </span></span><span 29</span> <span 笔者大多数时候都在使用UTF-8编码,所以不进行修改 </span><span 30</span> <span 31</span> <span 796行:</span> 修改 <span #AddHandler cgi-script .cgi</span> 为 <span AddHandler cgi-script .cgi .pl </span><span 32</span> <span 允许扩展名为.pl的CGI脚本运行</span>
修改完成后保存退出并重启Apache,删除测试网页:
/etc/init.d/<span httpd restart <span 删除测试网页 </span></span><span rm</span> -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html
<span 1</span> <span 编辑php设置文件 </span><span 2</span> vim /etc/<span php.ini </span><span 3</span> <span 4</span> <span 946行:</span> 修改 <span ;date.timezone = PRC</span> 为 <span date.timezone =</span><span <span PRC</span> <span (去掉分号) </span></span><span 5</span> <span 6</span> <span 386行:</span> 修改 <span disable_functions =</span> 为 <span disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname </span><span 7</span> <span 设置PHP的禁用函数,若程序中需要使用的函数可以删除掉。 </span><span 8</span> <span 9</span> <span 432行:</span> 设置 <span expose_php = Off </span><span 10</span> <span 禁止显示php版本的信息 </span><span 11</span> <span 12</span> <span 745行:</span> 设置 <span magic_quotes_gpc = On </span><span 13</span> <span 打开magic_quotes_gpc,用于防止SQL注入 </span><span 14</span> <span 15</span> <span 229行:</span> 设置 <span short_open_tag = ON </span><span 16</span> <span 支持php短标签 </span><span 17</span> <span 18</span> <span 380行:</span> 设置 <span open_basedir = .:/tmp/</span> <span 19</span> <span 设置允许访问的目录和/tmp/目录,防止php木马跨站</span>
修改完成保存后重启服务:
/etc/init.d/<span mysqld restart </span>/etc/init.d/httpd restart
输入“
<span 1</span> <?<span php </span><span 2</span> <span phpinfo</span><span (); </span><span 3</span> ?>
保存退出后在浏览器中输入localhost查看php信息:
apache.apache -R /var/www/html

本文討論了PHP中的crypt()和password_hash()的差異,以進行密碼哈希,重點介紹其實施,安全性和對現代Web應用程序的適用性。

文章討論了通過輸入驗證,輸出編碼以及使用OWASP ESAPI和HTML淨化器之類的工具來防止PHP中的跨站點腳本(XSS)。

自動加載PHP會在需要時自動加載類文件,從而通過減少內存使用和增強代碼組織來提高性能。最佳實踐包括使用PSR-4和有效組織代碼。

本文討論了在PHP中管理文件上傳大小的管理,重點是2MB的默認限制以及如何通過修改PHP.INI設置來增加它。

本文討論了PHP 7.1中引入的PHP中的無效類型,允許變量或參數為指定類型或NULL。它突出顯示了諸如提高可讀性,類型安全性和明確意圖的好處,並解釋瞭如何聲明

本文討論了unset()和unlink()功能在編程中的差異,重點關注其目的和用例。 unset()從內存中刪除變量,而unlink()從文件系統中刪除文件。兩者都對效率至關重要


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。