CentOS 6.4 Installation Configuration Lamp server (apache+php5+mysql) _linux

Source: Internet
Author: User
Tags install php php script sql injection iptables

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 have added these two rules to the last line of the firewall configuration, causing the firewall to start failing,

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

As shown below:
############################## the firewall rules as shown below after adding a good ##############################
# Firewall configuration written by System-config-firewall
# Manual Customization of this file is 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. Close SELinux
Vi/etc/selinux/config
#SELINUX =enforcing #注释掉
#SELINUXTYPE =targeted #注释掉
selinux=disabled #增加
: Wq #保存, close
Shutdown-r now #重启系统

Installation article:

First, install Apache
Yum install httpd #根据提示, enter y installation to install successfully
/ETC/INIT.D/HTTPD Start #启动Apache

Note: Apache prompts for errors after startup:
Starting httpd:httpd:Could not reliably determine the server's fully Qualif domain name using:: 1 for ServerName
Solution:
vi/etc/httpd/conf/httpd.conf #编辑
Find #ServerName www.example.com:80
Modify to ServerName www.osyunwei.com:80 #这里设置为你自己的域名, if there is no domain name, you can set to localhost
: wq! #保存退出
Chkconfig httpd on #设为开机启动
/etc/init.d/httpd Restart #重启Apache

Second, the installation of MySQL

1, install MySQL
Yum install MySQL mysql-server #询问是否要安装, enter Y to install automatically until the 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, direct coverage can be)

2. Set password for root account
Mysql_secure_installation
Carriage return, enter y according to the prompt
Enter 2 times password, return
Follow the prompts to enter Y
Last seen: the for using mysql!
MySQL password settings complete, restart MySQL:
/etc/init.d/mysqld Restart #重启
/etc/init.d/mysqld Stop #停止
/etc/init.d/mysqld Start #启动

Iii. installation of PHP5

1. Installation PHP5
Yum Install PHP
Enter y according to the prompts until the installation is complete

2, the installation of 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
Here Select the above installation package for installation
Enter Y return according to the prompts
/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 is modified on line 44: Servertokens Prod (The server operating system name is not displayed when the error page appears)
Serversignature on is modified on line 536 to: Serversignature off (the Apache version is not displayed on the error page)
Options Indexes followsymlinks on 331 lines: Options Includes execcgi followsymlinks (allows the server to perform CGI and SSI, disable listing of directories)
#AddHandler Cgi-script. CGI is modified on line 796 to: AddHandler cgi-script. PL (Allow CGI scripts with extension. pl to run)
AllowOverride None on 338 line revision instead : AllowOverride all (Allow. htaccess)
Adddefaultcharset UTF-8 modified on 759 lines: Adddefaultcharset GB2312 (add GB2312 to default encoding)
Options Indexes multiviews followsymlinks is modified on line 554 to options MultiViews followsymlinks (does not display the tree directory structure on the browser)
DirectoryIndex index.html Index.html.var modified on line 402 to: DirectoryIndex index.html index.htm default.html default.htm< /span>

index.php default.php Index.html.var (Setting the default first file, increasing index.php)
KeepAlive off is modified on 76 lines to: KeepAlive on (Allow program online)
Maxkeepaliverequests is modified on 83 lines to: Maxkeepaliverequests 1000 (Increase simultaneous connection number)
: wq! #保存退出
/etc/init.d/httpd restart #重启
rm-f/etc/httpd/conf.d/welcome.conf/var/www/error/ noindex.html #删除默认测试页

Two, PHP configuration
Vi/etc/php.ini #编辑
Date.timezone = PRC #在946行 Remove the preceding semicolon and change it 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 remove them and disable them.
expose_php = off #在432行 suppresses the display of 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 that allow access to the current directory (that is, the directory where the php script files) and the/tmp/directory, you can prevent the PHP trojan across the station, if the installation program after the problem (such as: Dream Content Management System), you can log off this trip, or write directly to the directory of the program/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! #保存退出
Enter the server IP address in the client browser and see the relevant configuration information as shown in the following figure!

NOTE: The Apache default program directory is/var/www/html

Permission settings: Chown apache.apache-r/var/www/html

to this point, the CentOS 6.4 installation configuration Lamp server (apache+php5+mysql) tutorial completes!

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.