1. 현재 주류 인터넷 webservices
정적 서비스:
1.apache---소형 및 중형 정적 web주류 서비스, web대규모 Brother in the server
2.nginx---대규모 신규 네트워크 정적web서비스 주류, webnewborn calf in the server
3.lighttpd---static webservice tepid Fire는 점차적으로 제거되고 커뮤니티가 비활성화되며 효율성이 매우 높다는 것을 의미합니다.
동적 서비스:
1.IIS(인터넷 정보 서비스)---Microsoft의 web서버(asp, aspx)
2.tomcat--- 중소기업을 위한 소식web주류 서비스, 주류 인터넷java컨테이너(jsp, do)
3.resin---대형 동적 웹사이트 web 서비스 주류, 인터넷java컨테이너 주류(jsp, do)
4.php(fcgi )--- 대형, 중형 및 소형 웹사이트, php프로그램의 구문 분석 컨테이너
a. apache와 협력합니다. php는 데몬은 아니지만 mod_php5.so(모듈 )
b. 협력 nginx, lighttpd, phpdaemon 모드, FCGImode.
2. Apache 설치
1.먼저 httpd서비스를 설치해야 합니다(yum install httpd -y)
확인: 냠 설치g cc gcc++ zlib zlib -devel -y
2.설치 apache(주소Shangguan 웹사이트)
apache소스 코드 편집:
./configure --prefix=/application/apache2. 2.32
- -enable-expires
--enable-headers
--enable-modules=most
--enable-so
--with-mpm=worker
--enable-deflate
- -enable-rewrite
make &&make install
3. apache 서비스 시작:
1) apache 구문이 가능한지 확인: [root@localhost local]# /application /apache/bin/apachectl - t
2) apache 서비스 시작: [root@localhost local]# /application/apache/bin/apachectl start
3) apache 서비스가 시작되었는지 확인: lsof - i:80 또는 ps -ef|grep apache
작동하면 성공을 의미
않으면ok포트, 방화벽을 확인하세요. selinux , process
strace프로세스를 추적하는 명령
컴파일된 내용을 /application/apache/htdocs/아래에 수정합니다. index.html
Three./application/apache디렉토리가 있습니다. 구조
apache 최적화 1. 인덱스 앞에 - 기호를 추가합니다. root@localhost conf]# vi httpd.conf 또는 직접 삭제
/application/apache/conf/extra 핵심 파일 3개
4. 가상 호스트
1. 가상 호스트: 여러 사이트 배포 , 각 사이트는 서로 다른 도메인 이름과 사이트 디렉터리를 사용하려고 하거나 서로 다른 포트와 서로 다른 IP에 가상 호스트가 필요합니다.
한마디로 http 서비스를 위해 여러 사이트를 구성하려면 가상머신이 필요합니다. 사이트 디렉토리
www.etiantian.org
사용 초 } -p[root@localhost apache]# touch /var/html/{www,blog,bbs}/index.html[root @localhost apache]# www 블로그의 이름 bbs;do echo "http: //$name.etiantian.org" >/var/html/$name/index.html;done
[root@localhost apache]# www 블로그의 이름 bbs;do cat /var/html/$name/ index.html;done vim /application/apache/conf/extra/httpd-vhosts.confServerName www.etiantian.org
ServerAlias etiantian.orgErrorLog "logs/www-error_log"CustomLog "logs/www -access_log" commonErrorLog "logs/blog-error_log"CustomLog "logs /blog-access_log" common
[root@localhost extra]# /application/apache/bin/apachectl -t
구문 확인
구문 확인
[root@localhost extra]# /application/ apache/bin/apachectl Graceful 아파치를 다시 시작하세요
vim /application/apache/conf/httpd.conf 마지막 줄에 다음 내용을 추가하세요:
Options FollowSymLinks
AllowOverride None
Order 허용, 거부
Allow from all
위 구성은 403 오류를 방지하고 구문이 잘못된지 확인합니다.
수정 windows 로컬 system32 드라이브 호스트(192.168.76.128 www.etiantian.org blog.etiantian.org bbs.etiantian.org
)
[root@localhost extra]# grep "^Include" /application/apache/conf/ httpd.conf
conf/extra/httpd-mpm.conf 포함
conf/extra/httpd-vhosts.conf 포함
1.ql-g mysql -M -s / sbin/nologin
mysql편집: ./configure --prefix=/application/mysql5.1.72
--with-unix-socket-path=/application/ mysql5.1.72/tmp/mysql .sock
--localstatedir=/application/mysql5.1.72/data --어셈블러 활성화
--활성화-스레드-안전-클라이언트
--with-mysqld-user =mysql
--with -큰 테이블
--디버그 없음
--pthread 포함
--어셈블러 사용
--with-extra-charsets=complex
--readline 포함
--ssl 포함
--포함-서버 포함
--enable-local-infile
--with-plugins=partition,innobase
--with-mysqld-ldflags=-all-static
--with-client -ldflags=-all-static
yum -y install ncurses-devel
(오류 해결 방법)
root@localhost 애플리케이션]# cd /home/cai/tools/
[root@localhost 도구]# cd mysql-5.1.72/support-files/[root@localhost support-files]# cp my-small.cnf /etc/my.cnf
cp: "/etc /my.cnf"를 포함할지 여부? y
[root@localhost 지원 파일]# cd /etc/
[root@localhost 등]# less my.cnf
[root@localhost 등]# mkdir /application/mysql/date -p
[ root@localhost 등]# chown -R mysql.mysql /application/mysql
[root@localhost 등]#/application/mysql/bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/ data/ --user=mysql
MySQL 시스템 테이블 설치 중...
170314 20:15:22 [경고] '--skip-locking'은 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정입니다. '--를 사용하세요. Skip-external-locking'을 대신 사용하세요.
OK
도움말 테이블 채우기...
170314 20:15:22 [경고] '--skip-locking'은 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정입니다. 대신 '--skip-external-locking'을 사용하세요.
OK
부팅 시 mysqld를 시작하려면
support-files/mysql.server를 시스템의 올바른 위치에 복사해야 합니다
기억하세요 MySQL 루트 사용자의 비밀번호를 설정하려면 !
이렇게 하려면 서버를 시작한 후 다음 명령을 실행하세요:
/application/mysql/bin/mysqladmin -u 루트 비밀번호 'new-password'
/ application/mysql/bin/mysqladmin -u root -h localhost.localdomain 비밀번호 'new-password'
또는 다음을 실행할 수도 있습니다:
/application/mysql/bin/mysql_secure_installation
기본적으로 생성된 테스트
데이터베이스 및 익명 사용자를 제거하는 옵션입니다. 이는 프로덕션 서버에
강력히 권장됩니다. cd /application/mysql;/application/mysql/bin/mysqld_safe run.pl
문제가 있으면 신고해 주세요. /application/mysql/scripts/mysqlbug 스크립트로!
Start
mysql:/application/mysql/bin/mysqld_safe & (서비스를 시작하고 부팅에 추가하세요. 자동 시작)
[root @localhost support-files]# netstat -lntup|grep mysql (서비스 시작 여부 확인)
vi /etc/profile 마지막에 사용자 줄 추가
종료:
mysqladmin shutdown
/application/mysql/bin/mysqladmin -u root -h localhost.localdomain 비밀번호 'new-password' 비밀번호 설정
mysql -uroot -p ( 비밀번호 전달 후 mysql 로그인 방법 설정)
php
apache==under phpLAMP》
libphp5.songinx php==》
fc giphp --yum -YUM-YINSTALL GCC GCC-C ++ AutoConf Libjpeg Libjpeg-Devel libpng libpng-devel free-devel libxml2-devel ZLib-Deer GL IBC Glibc-Devel Glib2-Devel Bzip2-Devel NCURSES- Devel NCURSES- devel 컬 컬 개발자 e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers (설치해야 하는 다양한 라이브러리)
yum install zlib libxml libjpeg freetype libpng gd cur libiconv zlib-devel libxml2-devel libjpeg-devel libjpeg-devel freetype-devel libpng-devel gd-devel cur-devel -y (oldboy에서) libiconv 라이브러리에는 필요합니다(컴파일 및 설치)
php 컴파일:
./configure
--prefix=/application/php5.3.27
--with-apxs2=/application/apache/bin/apxs
--with-mysql=/application/ mysql
- -with-xmlrpc
--with-openssl
--with-zlib
--with-freetype-dir
--with-gd
--with-jpeg-dir
- -with-png -dir
--with-iconv=/usr/local/libiconv
--짧은 태그 활성화
--소켓 활성화
--zend-멀티바이트 활성화
--활성화 -soap
--enable-mbstring
--enable-static
--enable-gd-native-ttf
--with-curl
--with-xsl
--enable-ftp
--with- libxml-dir
[root@localhost php]# ll /application/apache/modules/
총 사용량23908
-rw-r--r-- 1 루트 루트 9262 4월 15일 09:27 httpd.exp
-rwxr-xr-x 1 루트 루트 24465701 4월 15일 10:15 libphp5.so[root@localhost php]# grep libphp5 /application/apache/conf/httpd.conf
LoadModule php5_module 모듈 /libphp5.so
Configurationphp
파일:두가지가 있는데 하나는 프로덕션 환경
하나는 개발 환경(테스트 환경)
[root @ localhost php-5.3.27]# diff php.ini-development php.ini-production[root@localhost php-5.3.27]# cp php.ini-production /application/php/lib/php .ini
요약: 공식 구성 파일은 일반적으로 디스플레이LOG를 닫고 LOG
Configurationapache는 php
vim /application/apache/conf/httpd.conf를 지원합니다. 98행 수정 ServerName 192.168 .76.128: 80
vim /application/apache/conf/httpd.conf 311행 아래에 두 줄 추가
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd- php-source .phps
사용자 데몬도 다른 것으로 수정해야 합니다(기본값을 수정해야 한다는 것은 누구나 알고 있습니다).
라인 166을
[root@ localhost conf]# diff httpd.conf httpd .conf.ori,67,68c67,68& lt; 사용자 www
& lt; 그룹 www
---
& gt; 그룹 daemon
168c168
& lt;directoryindex.html
---
> DirectoryIndex index.html
320,321d319
<
< AddType application/x-httpd-php- source .phps
Addwww 사용자: useradd www -s /sbin/nologin -M
[root@localhost conf]# /application/apache/ bin/apachectl Graceful 아파치 서비스 재시작
/var/html/blog vi index.php[root@localhost blog]# cat index.php< ?phpphpinfo();
?> ;
이 인터페이스는php+apache가 성공했음을 나타내는 것으로 보입니다
vi /var/html/blog/index.php
//$link_id=mysql_connect('hostname','user','password');
$link_id=mysql_connect('localhost','root','oldboy123') 또는 mysql_error ();
if($link_id){
echo "oldboy가 mysql을 성공했습니다!";
}else{
echo mysql_error();
}
?>
상단 인터페이스는 mysql이 성공했음을 나타냅니다
위 내용은 램프=리눅스+아파치+Mysql+Php의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!