国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

[Drupal优化/SEO/环境] Drupal环境搭建:Linux下xampp配置记录 分享修改删除

[复制链接]
发表于 4-16-2012 03:24 | 显示全部楼层 |阅读模式
1、下载最新版:xampp-linux-1.7.1-beta3.tar.gz
! [1 X6 n  H% L' H7 ?! M' O, v    来自网址:http://www.apachefriends.org/en/xampp-linux.html 6 }' L4 h' m* T; v3 v
2、安装:#tar zxvf xampp-linux-1.7.1-beta3.tar.gz -C /opt
9 A9 p& E" [3 k' W   解压到/opt目录,生成Lampp文件夹 ' ]: c+ ?. J# c6 d- h
3、启动Xampp:   #/opt/lampp/lampp start
* t" p4 P7 ^: j* Y7 G4、把自己做好的网页放入到/opt/lampp/htdoc文件夹下面;
/ z6 M# E, @! G5 z# V$ l5、打开网页测试:http://192.168.1.1xxhttp://192.168.1.xxx/index.html等等; 1 B: M$ [) r; |4 W/ h; b
6、如果不能打开网页,可能是启动服务有问题,可重启电脑,再次使用 #/opt/lampp/lampp start启动服务,再试。   V5 T7 |7 X1 N; v3 H3 V
; e. A8 }! ?5 K7 s
& w1 B: G& C! x# `" A% m
*********************************************************************************************** ' c0 n/ U; q; J
1 \% K& Q$ U5 s9 |" ]
Xampp1.7.1所含软件包: 6 m+ r9 G6 Q  P
Apache 2.2.6 + OpenSSL 0.9.8g
7 ~) x& ?. @! Q' `MySQL 5.0.51
% {* ]4 s2 ~5 yPHP 5.2.5 & PHP 4.4.6 , o! T) G+ _2 G
phpMyAdmin 2.11.3 9 G% v# o' M9 U+ M0 j
FileZilla FTP Server 0.9.24 5 H5 c! c, w, e5 h; i
Mercury Mail Transport System v4.52
5 M3 f2 R& p0 {" {( `# J* Y# Q5 c2 U; A) N
安装完毕后,输入下面的命令就可以启动XAMPP了: * p. H0 ^* w2 ~5 f8 Q7 c" @
) n1 T, n0 z9 f: L# i3 }. C+ D: u
/opt/lampp/lampp start   
* G& [: x3 {$ d0 t: q$ H/ ~1 i9 I9 ~* f+ s9 `" ^- t
这时你会看到如下信息:
1 `% `. _4 u' e5 e& b# h
: @% A9 a# P/ \1 E6 K& V3 S& eStarting XAMPP for Linux 1.7.1…
3 b, |- J" v/ n6 _5 K; B- T* r, v* ~' P5 o0 [% j4 h( n
XAMPP: Starting Apache with SSL (and PHP5)… ' f! u4 ]# U, ]% R: g7 i

0 b! p: D8 u4 cXAMPP: Starting MySQL…
& D% K- \) d6 T. I4 _2 f/ D9 a. k4 L) a
XAMPP: Starting ProFTPD…
* |- }, O" T* W
$ H1 Y" C7 i1 I) I$ {1 I( {XAMPP for Linux started. ' m) y0 P/ ~! `
  E) B# j( W; o+ g
其他启动参数如下:
( J/ |5 S' o+ c4 K$ p9 E- j
# e6 c5 a4 d* Q) jrestart 重启XAMPP
; t/ ?9 _; S  y% a# ^0 u& R7 v! y- O  H) x* F! |$ Q8 J
startapache 只启动Apache / [% g- j( w6 O. x0 b
' D5 Z9 N" s( A, ]
startssl 启动Apache 的SSL 支持
* f2 a# a1 ^' }: a2 `: S
# j/ H) j8 W2 U% `& q. jstartmysql 启动MySQL
; \- N8 ]4 D0 w# d' u$ }/ ?! u, G% u) i" g' d
startftp 启动ProFTPD
; P! v! F/ f0 o: ]: M$ @& k# m5 d$ }$ s
stopapache 停止Apache.
  k, ?. A1 @) v% m# N1 O8 b! |( ~
. {" n# _2 C& x+ s4 A6 Ustopssl 停止Apache 的SSL 支持
! p) v5 O1 Y+ A) _
: J9 t! L. W5 C+ S( zstopmysql 停止 MySQL数据库 ! x% k+ G6 L+ [7 _, O

: L5 Y; o! g7 B" Mstopftp 停止ProFTPD
6 A+ Z8 ]+ d3 s9 d8 N2 i& O! o# y9 s$ N# T* [& q$ o  F: `
. M3 A) B2 h, m) B7 d4 ]3 @! ^, p( a
*************************************************** ; `) r. r* R% ?0 v, ^0 Q3 c# i
+ B% T0 {7 b* o( n" |$ ~7 o

# u( ]. u+ N2 h. H# _+ n  d/ t7 k朋友问到了论坛中传2.7M的文件传不上去的问题。
2 U% }: B0 d3 Q( H/ b/ D3 Q" h$ b$ M. d8 y9 Q4 U1 d/ o) q, C
虽然论坛管理端设置远大于这个限制,但还是上传不成功。 6 o" y" L) ]5 N5 R: R
( [2 J- @& K0 ^5 e
其实还需要结束Apache进行修改来达到突破上传限制的影响,php.ini中共有三处修改:
0 U9 p, ~* B/ ~) M
1 ]" l3 E8 n+ K, `! T/ l! w; s, o) }1、执行时间限制的延长或取消: 0 d8 I9 _7 d) d% v3 D
max_execution_time 默认是30秒.改为 max_execution_time = 0 (0表示没有限制)或更大点的数字; $ |4 {& i3 {5 U
; w. H: s9 c, p1 P
另一种方法是可以在php程序中加入set_time_limit();
  w" }0 y1 d/ X+ D; [  E来设定页面最久执行时间. 0 A- Y( O- [1 D' a+ E! N
set_time_limit(0);//0表示没有限制
% }/ i4 Z  r* n( e9 @: F" |2 L6 y$ _! P' B: k! w( k! ]; |) A
2、查找 post_max_size = 2M (默认为2M)改为想要的大小,如:post_max_size = 70M
) d6 R4 v# N1 g4 G9 t9 P8 F8 G& K. ]' e1 h& I4 O  T
通常我们只做了这一步,以为就可以解决问题了。其实还需要看下面一步。
+ F4 U* ~. S* h4 R& D. V) r/ {$ R% ^" j% u) x
3、upload_max_filesize 表示所上传的文件的最大值。 0 ]7 F; d; {5 T
查找upload_max_filesize,默认为8M改为
: \0 N0 z9 A) l$ p, Hupload_max_filesize = 70M
' F: w9 ]6 y8 z7 w, [
, A7 P8 f+ [; d: l1 Q! T- U/ [8 \. ^需要注意的时,通常我们把post_max_size 大于 upload_max_filesize 的设置为好。
6 D9 l1 }2 y# T
/ K. v! j% p; |/ x: _( u
$ |7 l/ L6 f. `: k; a4 g
9 X: H  |5 F8 [) b2 v9 y* J8 I* M. m( @9 K% n4 n9 G
7 U4 O( r' c1 Z% G, I5 o

# G, f4 G9 M2 L  P& ]
- M2 d8 N+ i5 j7 ^* z) h解决Apache2+PHP上传文件大小限制的问题 ( v" A3 Y) b" r% ^
1 k5 G3 b( J( O7 I
开始的时候知道要改php.ini,基本是改这几项: / V0 M  n: Z/ d) ], K6 }3 V. _
; d) H7 M( c. w5 Z
max_execution_time = 30 1 [2 ~$ Y6 q& R6 v; i9 k2 j
max_input_time = 60 : T& Z1 s* Z9 A3 i0 w- G) r. P
memory_limit = 8M
9 m/ s0 ?; L8 ~( u- _) D7 c- eupload_max_filesize=8m / Q& }+ B+ H& p- s; Y* K) e, ?
0 S: a% a8 f- @+ S% @( o
但改好后发现上传的文件还是不能超过512k,否则页面就出错,非常的郁闷。无论如何调大上面几项的参数都没有作用,然后又检查了httpd.conf文件,从头看了一遍还是没有发现问题。在退出conf目录的时候,偶然发现有conf.d目录,ls了一下竟看到有个php.conf。呵呵,vi php.conf发现内容如下: ) r$ f" n7 K6 U- U- s% j7 X
! ~1 _! c2 k) o( D8 J% M. Y6 M
# : _& s' o# r/ ~! g. I
# PHP is an HTML-embedded scripting language which attempts to make it " w+ K3 _! j. e$ C( v. W  t
# easy for developers to write dynamically generated webpages.
1 b& L& Y' y" v# 2 f$ a  ^7 [4 D# Z! T) y
0 e* Q4 e9 W8 I" I+ c* E! r
LoadModule php4_module modules/libphp4.so
- w2 ~( m  f0 |6 a
# k$ [+ y; p* U& yAddType application/x-httpd-php php .php3 ; |% v# w6 e/ D4 R# A3 n. ?3 g

. Q; b+ [* l& i; Q: z/ q$ M+ u! \#
3 _$ Z& t3 z9 y/ C8 d7 w% h# Cause the PHP interpreter handle files with a .php extension.
6 x5 s/ ]0 Q: N) Z/ T1 w8 X# 8 p9 U/ ~! G: T0 `6 Z' ]5 l
; c3 ?" E' ?- L' R
SetOutputFilter PHP
) O) O% [6 U- ?3 q4 U* `SetInputFilter PHP ! Y) t6 y0 s' z! \3 C1 [. L
LimitRequestBody 524288
  k/ ?0 h, }+ P: L: o" _; |
+ n) o1 ]2 R% x$ g" ?8 G( R* `1 P: q6 U& m6 @
#
* t+ d! v0 u7 b, H% r# Add index.php to the list of files that will be served as directory . J( I( ?9 K. g( }. Y% g- K: ^
# indexes. " G$ D1 o% J! x/ e9 t( E( w
#
+ u# N2 e6 U3 ^$ EDirectoryIndex index.php
, y6 Z9 {" C$ a1 D8 h
# }' G* ?) c2 F- T) p8 n' }# F
- b7 i% o' F$ @4 j. f) _9 I( a% m3 ?: `2 f看到那个524288吗,换算下就是512k。把它改成52428800,reload apache。经测试,可以上传几十兆的文件,问题解决。看来我对apache+php的配置了解还是不够全面,以后还要多多学习! ; U  U6 Z* r3 [' h) a& [) o/ N( Z
! V) E0 x. [3 }3 l

) Q  L( m0 |( T3 \httpd   [-D   name]   [-d   directory]   [-f   file]   [-C   "directive]   [-c   directive]   [-v]   [-V]   [-h]   [-i]   [-L]   [-s]   [-t]   [-T]   
; i) ]& n0 C+ F  /etc/rc.d/init.d/http   2 E+ L7 I* A) M6 |/ Y/ z* z6 Z

0 S# a) @( y1 w3 F在apache的目录bin下, - @; k: C! |$ a* v
运行:./apachectl     start   
" H3 \, ^' K" m3 J" E: _# x停止:./apachectl     stop   
1 u9 r- u1 {) M6 y# S' b  X重起:./apachectl     resart
) S0 w  }5 @( F" h
1 L+ H) z0 {$ T7 t( `' i7 l& j5 v
7 w: x8 B4 b2 M" y& K' Dhttpd   start     ' l/ o3 ^. ^3 M# w( j+ |
ps   -aux   能看到几个httpd   的进程!   , |7 ^+ z: z) n& X: z, D5 Z% J
' |2 p" H7 j) u, J
" I! r, y8 x  h, c; _  e8 h
2 B# d) D% ^$ o. Z: T0 B

& n, Q! k8 J5 l, a% o! F3 [
4 D9 r" X& d, Z********************************************** ; O+ d" E/ @4 h2 R; \

- |8 g- i4 ?# f) n! D5 p針對想讓 PHP 能夠處理大檔案, ex, 超過 100MB....
/ q& P+ d& b: A  g, F) F分享一下我的 php 設定經驗, 以下是我的 Software Configuration, ) T+ e8 p/ Y# d8 b: k1 N' e1 C
. g8 S* y! y" {8 k* D+ \
OS: Red Hat Enterprise Linux AS 4.4 Compatible & q3 \8 v$ l/ K& e& t* q* y- o
PHP: 4.3.9 * w8 S+ [/ t4 I% r' r
MYSQL: 4.1.20
$ g  J6 @& y' I9 Y5 ?5 ~* z! f& g0 x6 O9 w7 `% s: i/ O# \9 \. m
用 root 身分編輯 /etc/php.ini , 修改以下資訊
, u4 q9 g( Z7 T% i' a) F0 L+ }$ {" J: w* j% p9 x  C6 a
max_execution_time = 300 ; 每個 script 執行時間上限, 單位是秒. 8 |  q2 D, e2 i
max_input_time = 300 ; 每個 script 處理輸入資料可用時間上限, 單位是秒. . G& g, a3 X* E6 p% M9 K% B+ K
memory_limit = 999M ; 每個執行中的 script 最多可使用的系統記憶體資源. 1 n9 c4 l8 N; V% }% ^) s  ?
post_max_size = 800M ; PHP 能夠接受發表文章的容量上限. / }7 T6 i' h$ h  H# k8 e0 L  Q
file_uploads = On ; 這個不用改, 安裝完就是 On 了, 請確定你的也是 On.
" c% u& v( n7 d0 x  Uupload_max_filesize = 800M ; 允許上傳檔案的最大容量. - j2 X: I% V" Y4 F( `( c6 ^
default_socket_timeout = 300; Socket 無回應斷線時間上限.
: Z* `4 y! Y- x5 Z6 {1 nmysql.connect_timeout = -1 ; MYSQL 無回應斷線時間上限, -1 代表永遠等下去.
+ m! E1 z# ]$ x; {4 s2 X4 O2 o  ?
- R& N6 l6 f3 R( h2 }' f( A如果你打算讓你的系統能夠上傳更大的檔案, 可以自行增加某些數值. , p/ a0 z7 x$ V" v
但設定過大的值, 不保證系統的穩定性.
4 x0 Q2 g; u& c: ^# Dps: 歹勢, 沒時間看 code 測試... : ^0 N  u! d  v& w! D. q* K
0 w6 B# ?; z4 L+ D  c  l+ c
有些數值有相互關係, 例如, memory_limit 必須大於 upload_max_filesize 與 post_max_size.
7 O, o$ P% [" ~" i5 o8 O9 A5 t. Q* {, e- R( U

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 5-1-2025 05:40 , Processed in 0.328989 second(s), 115 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表