CentOS 6.5 System installation Configuration lamp (APACHE+PHP5+MYSQL) Server environment

Source: Internet
Author: User
Tags install php mcrypt php script sql injection phpmyadmin

CentOS 6.5 System installation Configuration lamp (APACHE+PHP5+MYSQL) Server environment

Prepare the article:

1, configure the firewall, open 80 ports, 3306 ports
Vi/etc/sysconfig/iptables
-A input-m state--state new-m tcp-p TCP--dport 80-j ACCEPT #允许80端口通过防火墙
-A input-m state--state new-m tcp-p TCP--dport 3306-j ACCEPT #允许3306端口通过防火墙

Note: Many netizens add these two rules to the last line of the firewall configuration, causing the firewall to fail to start.

The correct one should be added to the default port 22 below this rule

As shown below:

System operation and maintenance warm reminder: qihang01 original content copyright, reproduced please indicate the source and the original link
########################################################
# Firewall configuration written by System-config-firewall
# Manual Customization of this file are not recommended.
*filter
: INPUT ACCEPT [0:0]
: FORWARD ACCEPT [0:0]
: OUTPUT ACCEPT [0:0]
-A input-m state--state established,related-j ACCEPT
-A input-p icmp-j ACCEPT
-A input-i lo-j ACCEPT
-A input-m state--state new-m tcp-p TCP--dport 22-j ACCEPT
-A input-m state--state new-m tcp-p TCP--dport 80-j ACCEPT
-A input-m state--state new-m tcp-p TCP--dport 3306-j ACCEPT
-A input-j REJECT--reject-with icmp-host-prohibited
-A forward-j REJECT--reject-with icmp-host-prohibited
COMMIT
########################################################

/etc/init.d/iptables Restart #重启防火墙使配置生效

2. Turn off SELinux
Vi/etc/selinux/config
#SELINUX =enforcing #注释掉
#SELINUXTYPE =targeted #注释掉
Selinux=disabled #增加
: wq! #保存退出
Shutdown-r now# Restart System

Installation article:

First, install Apache
Yum Install httpd #根据提示, enter Y to install successfully
/ETC/INIT.D/HTTPD start# Launch Apache
Note: Apache will prompt for errors after booting:
Starting httpd:httpd:Could not reliably determine the server's fully qualif domain name, using:: 1 for ServerName
Workaround:
Vi/etc/httpd/conf/httpd.conf #编辑
Found #ServerName www.example.com:80
Modified to ServerName www.jbaobao.net:80 #这里设置为你自己的域名, if no domain name, can be set to localhost
: wq! #保存退出
Chkconfig httpd on #设为开机启动
/ETC/INIT.D/HTTPD Restart #重启Apache

Second, install MySQL

1. Install MySQL
Yum install MySQL mysql-server #询问是否要安装, enter y for automatic installation until installation is complete
/etc/init.d/mysqld Start #启动MySQL
Chkconfig mysqld on #设为开机启动
CP/USR/SHARE/MYSQL/MY-MEDIUM.CNF/ETC/MY.CNF #拷贝配置文件 (Note: If the/etc directory has a my.cnf under the default, you can directly overwrite it)

2. Set the password for the root account
Mysql_secure_installation
Enter, follow the prompts for Y
Enter Password 2 times, enter
Enter Y as prompted
Last appearance: Thanks for using mysql!
MySQL password setup is complete, restart MySQL:
/etc/init.d/mysqld Restart #重启
/etc/init.d/mysqld Stop #停止
/etc/init.d/mysqld Start #启动

Third, installation PHP5

1, installation PHP5

System operation and maintenance warm reminder: qihang01 original content copyright, reproduced please indicate the source and the original link
Yum Install PHP #根据提示输入Y直到安装完成

2, install PHP components, so that PHP5 support MySQL
Yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-b Cmath php-mhash libmcrypt #这里选择以上安装包进行安装, enter Y as prompted
/etc/init.d/mysqld Restart #重启MySql
/ETC/INIT.D/HTTPD Restart #重启Apche

Configuration Chapter

One, Apache configuration
Vi/etc/httpd/conf/httpd.conf #编辑文件
Servertokens OS #在44行 modified to: Servertokens Prod (the name of the server operating system is not displayed when the error page appears)
Serversignature on #在536行 modified to: Serversignature OFF (the Apache version is not shown in the error page)
Options Indexes followsymlinks #在331行 modified to: Options includes execcgi followsymlinks (Allow server to execute CGI and SSI, prohibit list of directories)
#AddHandler cgi-script. CGI #在796行 modified to: AddHandler cgi-script. cgi. PL (allows CGI scripts with extension. pl to run)
AllowOverride None #在338行 modified to: allowoverride all (Allow. htaccess)
Adddefaultcharset UTF-8 #在759行 modified to: Adddefaultcharset GB2312 (add GB2312 as default encoding)
Options Indexes multiviews followsymlinks #在554行 modified to Options MultiViews FollowSymLinks (does not display the tree directory structure on the browser)
DirectoryIndex index.html Index.html.var #在402行 modified to: DirectoryIndex index.html index.htm default.html default.htm index.php default.php Index.html.var (set default home file, add index.php)
KeepAlive Off #在76行 modified to: KeepAlive on (allow procedural online)
Maxkeepaliverequests #在83行 modified to: Maxkeepaliverequests 1000 (increase number of simultaneous connections)
: wq! #保存退出
/ETC/INIT.D/HTTPD restart# Restart
System operation and maintenance warm reminder: qihang01 original content copyright, reproduced please indicate the source and the original link
Rm-f/etc/httpd/conf.d/welcome.conf/var/www/error/noindex.html #删除默认测试页

Second, PHP configuration
Vi/etc/php.ini #编辑
Date.timezone = PRC #在946行 Remove the preceding semicolon and change to Date.timezone = PRC
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
#在386行 lists the functions that PHP can disable, and if some programs need to use this function, you can delete and cancel the disabled.
expose_php = Off #在432行 Suppress the PHP version information
MAGIC_QUOTES_GPC = on #在745行 open MAGIC_QUOTES_GPC to prevent SQL injection
Short_open_tag = on #在229行支持php短标签
Open_basedir =.:/ tmp/#在380行 settings to allow access to the current directory (that is, the php script file directory) and/tmp/directory, you can prevent the PHP Trojan cross-site, if you change the installation program after the problem, you can log off this line, or directly write the program directory/data/www.osyunwei.com/:/tmp/
: wq! #保存退出
/etc/init.d/mysqld Restart #重启MySql
/ETC/INIT.D/HTTPD Restart #重启Apche

Test article
Cd/var/www/html
VI index.php #编辑输入下面内容
<?php
Phpinfo ();
?>
: wq! #保存退出
In the client browser enter the server IP address, you can see the relevant configuration information!

phpMyAdmin Frequently Asked Questions
1. The phpMyAdmin prompt does not turn on Php-mcrypt because the php-mrcrpt extension is not installed. There is no php-mrcrpt extension in official source, please install Epel source and then yum install Php-mcrypt

2. phpMyAdmin Cannot access

phpMyAdmin By default can only be accessed using http://localhost/phpmyadmin, you can modify the corresponding part of the/etc/httpd/conf.d/phpmyadmin.conf into
<directory "/usr/share/phpmyadmin" >
Order Deny,allow
# Deny from all
Allow from all
</Directory>
But it's strongly not supportive, exposing phpmyadmin to insecurity.

Attention:
Apache parses PHP, modifies httpd.conf files, adds
AddType application/x-httpd-php. php. phtml
AddType Application/x-httpd-php-source. Phps

MYQL can Telnet
Set MySQL password
mysql>; Use MySQL;
mysql>; UPDATE user SET Password=password (' newpassword ') WHERE user= ' root ';
mysql>; FLUSH privileges;
1.2.3 Allow remote logins
Mysql-u root-p
Enter Password: <your new password>
Mysql>grant all privileges on * * to ' user name ' @ '% ' identified by ' password ' with GRANT OPTION;
When you're done, you can manage MySQL remotely with Mysql-front.
Set to boot
Chkconfig mysqld on

Ubuntu 14.04 configuration Lamp+phpmyadmin PHP (5.5.9) Development environment http://www.linuxidc.com/Linux/2014-10/107924.htm

Windows 7 Hard Drive installation Ubuntu 14.10 Graphics Tutorial http://www.linuxidc.com/Linux/2014-10/108430.htm

USB flash drive installs Ubuntu 14.10 http://www.linuxidc.com/Linux/2014-10/108402.htm

Ubuntu 14.10 Official release Download http://www.linuxidc.com/Linux/2014-10/108363.htm

Ubuntu 14.04 LTS How to upgrade to Ubuntu 14.10 Http://www.linuxidc.com/Linux/2014-10/108381.htm

Ubuntu 14.10 Installation LAMP service graphic detailed http://www.linuxidc.com/Linux/2014-12/110082.htm

CentOS 6.5 System installation Configuration lamp (APACHE+PHP5+MYSQL) Server environment

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.