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

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

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

[复制链接]
发表于 4-16-2012 03:24 | 显示全部楼层 |阅读模式
1、下载最新版:xampp-linux-1.7.1-beta3.tar.gz
* ~* A& a4 B0 j2 |1 }    来自网址:http://www.apachefriends.org/en/xampp-linux.html 0 u2 E4 S. B1 x) [" ^& C/ }
2、安装:#tar zxvf xampp-linux-1.7.1-beta3.tar.gz -C /opt ; _2 z( R' d8 Q# Y
   解压到/opt目录,生成Lampp文件夹
" M/ v: o- Y3 b/ g0 s9 o' d3、启动Xampp:   #/opt/lampp/lampp start - L! q  Y  k2 m
4、把自己做好的网页放入到/opt/lampp/htdoc文件夹下面;
" `! a. t/ j# O: V/ S5、打开网页测试:http://192.168.1.1xxhttp://192.168.1.xxx/index.html等等;
0 J' c/ U9 k! p  b& \/ t6 x6、如果不能打开网页,可能是启动服务有问题,可重启电脑,再次使用 #/opt/lampp/lampp start启动服务,再试。 ( }# L* E3 r  J$ a
, ?: f9 `' O, y: C

2 n; j$ h/ `8 u# Z# X( x***********************************************************************************************
- |! G$ C) O' q0 s' k' v
' N+ @9 t( |$ {& w- ~' u. XXampp1.7.1所含软件包:
5 U% v; i5 e' w$ t8 h8 Z' b3 HApache 2.2.6 + OpenSSL 0.9.8g
/ N5 r+ r/ ]7 j6 MMySQL 5.0.51 9 `  H) M( [. |6 m4 E
PHP 5.2.5 & PHP 4.4.6
0 R* f5 C) x: ^. G1 p5 `3 vphpMyAdmin 2.11.3   T) C, X9 u7 V& Y7 M4 [
FileZilla FTP Server 0.9.24
8 r3 P% {7 O1 j" B  fMercury Mail Transport System v4.52
+ }0 o' V# \9 e% s+ P) `* p8 I
安装完毕后,输入下面的命令就可以启动XAMPP了: 2 {; X( z! w4 ~7 c  b

9 r  k  i4 y" i. ]/opt/lampp/lampp start    , u5 G7 N! ?) Z& W' ^; P! Y
  \' ?" @: t1 J2 l8 U1 n) A7 p
这时你会看到如下信息: / s: M, _8 Y) u

0 ^, D4 l- F) E" Q2 F# @- g" IStarting XAMPP for Linux 1.7.1…   ^: w" [# k( L3 `+ e5 J7 G
8 d# t9 j' i" T# D& i
XAMPP: Starting Apache with SSL (and PHP5)…
( e9 a: P5 J& W; I& j) P  N8 V# O
; ~7 j, M1 o7 ^! `XAMPP: Starting MySQL… , H- q  D7 B5 Z/ _/ j
: b; ^, X4 e$ `5 U0 _
XAMPP: Starting ProFTPD…
" x7 s5 [3 Q, X8 ^6 |" ]  R& E4 K, x. Y
XAMPP for Linux started. 6 O; N+ P  X- }1 V" U$ ~1 J

6 V" Q% R# y' y% ^& h; I其他启动参数如下:
) y; v* U# f) C: X. L2 r. R/ B- @$ ]( q& C9 R& p  |1 n
restart 重启XAMPP 2 f7 i6 K3 e2 B0 s$ v5 |

; l9 |. \" K$ u1 R0 Qstartapache 只启动Apache + o: J! j/ e& }/ T2 c$ Q6 r

& s% e) F1 Q3 v" [+ K; o$ c7 fstartssl 启动Apache 的SSL 支持
* ]! F7 J% Y! R' s/ N/ g1 m# ?! G4 x9 n$ b. V3 p" M
startmysql 启动MySQL
, W' H& s7 H! O/ }# F6 D9 y6 k. e) K5 ?/ f3 N5 |& P0 C% M6 W
startftp 启动ProFTPD , B& U6 }2 w- W& s

7 |8 h% o' C5 `8 k( n3 q4 {stopapache 停止Apache.
) I  s5 Q3 _% b3 H, C+ R8 n, H% ~9 w$ X" a; \
stopssl 停止Apache 的SSL 支持 9 s9 }' T- l9 o' G" m1 ~. @

5 W/ p% h/ A6 k" H1 F8 Y% zstopmysql 停止 MySQL数据库
; ~$ u8 [* h4 f$ u" _; h1 w& R
7 ~2 O! `! ?6 i; W( y) G5 I) t$ Y" p- gstopftp 停止ProFTPD . c0 v/ _8 H5 \7 D0 u
; }6 z2 S- t% w

+ }8 k. N# J" p8 ^***************************************************
0 o! Y( y% f5 ]* ]! s$ ?1 n5 M6 S  [! [# ~4 a! s4 K" N
! a1 Q+ e8 `0 V. Q8 P6 b3 P# F* u
朋友问到了论坛中传2.7M的文件传不上去的问题。
! z9 s$ t+ H; G5 ?/ |( Z4 ~$ [7 H8 O: g6 G3 b# y
虽然论坛管理端设置远大于这个限制,但还是上传不成功。
- ~8 ~1 d4 `& \, _# p5 d
/ b- P" `7 a) Q4 x9 [6 ]其实还需要结束Apache进行修改来达到突破上传限制的影响,php.ini中共有三处修改: 8 u7 o( ^/ S$ v# K: K
" i% Q5 u8 p) w. b
1、执行时间限制的延长或取消:
3 p5 u0 V# H8 amax_execution_time 默认是30秒.改为 max_execution_time = 0 (0表示没有限制)或更大点的数字; & x8 {% f5 s# p2 L9 ~" l; D
, z3 e4 m# i" y  a' w+ ]+ ?; f; r! J, a3 n
另一种方法是可以在php程序中加入set_time_limit(); # Z/ l& Y/ e6 y/ c  M1 f* M, Z
来设定页面最久执行时间. ) d( ]; x  a, W% X3 Z
set_time_limit(0);//0表示没有限制 2 Q' V/ M( }+ x; b6 f4 S
7 E+ [8 C# _' I' E; a9 y1 K
2、查找 post_max_size = 2M (默认为2M)改为想要的大小,如:post_max_size = 70M
/ c4 s8 r! w) N! n* ?
1 V9 I& W- u5 |& }通常我们只做了这一步,以为就可以解决问题了。其实还需要看下面一步。 , v  C5 K+ L  ?6 q4 V: V
/ P$ k# p3 y2 j8 W
3、upload_max_filesize 表示所上传的文件的最大值。 . _% E9 P/ y' c1 S5 C
查找upload_max_filesize,默认为8M改为
) P4 g3 ?" X, M) Cupload_max_filesize = 70M
8 V. k, m& d( _, x$ x
# q6 h8 J& u+ q3 m& {" ]$ x& m需要注意的时,通常我们把post_max_size 大于 upload_max_filesize 的设置为好。
2 k( x2 B) M' l( h) y% }& ^7 z6 R6 v+ T/ ?. x) H" Y1 g( s  U2 d+ x: l0 `
1 V0 A: q6 ~3 f- x
4 Q8 ?1 _* R  R+ z* |" z6 v

8 Y* U8 C, W& j! m  M6 j+ Z0 Q/ z, e: J# {
; n7 r: w$ U7 l, x! G

0 W( L2 u( S1 R- w/ j1 V% g3 T解决Apache2+PHP上传文件大小限制的问题 ( v4 @1 S. g  V. B" ^
% `7 Z6 \- Q$ S9 C( u: `2 k: Y
开始的时候知道要改php.ini,基本是改这几项:
4 m: S/ @; P) ~1 f: f. {  ^+ D) W# ~; I- u: U' b  o. V) z- q% b. |4 b
max_execution_time = 30 6 b: a' U) @6 P* u
max_input_time = 60
$ z- K2 X! n" d1 O7 _memory_limit = 8M
9 b8 ?9 q$ e) Xupload_max_filesize=8m ! I1 }' D/ z) j8 c3 w/ B
# {4 l& m6 z) p
但改好后发现上传的文件还是不能超过512k,否则页面就出错,非常的郁闷。无论如何调大上面几项的参数都没有作用,然后又检查了httpd.conf文件,从头看了一遍还是没有发现问题。在退出conf目录的时候,偶然发现有conf.d目录,ls了一下竟看到有个php.conf。呵呵,vi php.conf发现内容如下:
5 g2 d5 i* S- J9 h+ p
% e& k' F- I$ E. i. g/ B& d, b0 [# ( Z& y5 p% |9 P0 v: k
# PHP is an HTML-embedded scripting language which attempts to make it
: f* h# `# v  [9 h! s. y/ t; c5 w# easy for developers to write dynamically generated webpages.
# g4 b, R: k0 Z% |+ n/ s#
3 Z" d( Z% @: H' H+ D5 s6 E, W& x- ?
1 v# s, ^5 z5 V9 f1 G% WLoadModule php4_module modules/libphp4.so 5 i& L( G  R1 m' H6 K
1 g9 N; P8 N+ z$ e& \! v; r1 {; u
AddType application/x-httpd-php php .php3
) {2 ~, R6 ^/ t: [2 m7 B* B/ j; Z6 _+ _# E% X' X
#
0 o/ z0 ~8 B8 B; e) O# Cause the PHP interpreter handle files with a .php extension. 9 H2 ^( U8 K0 o4 [: A3 r
#
4 x" a7 V+ l4 ]8 e3 ~3 h4 _$ j8 p9 ~
SetOutputFilter PHP
  ^* U) R) z: [" @: bSetInputFilter PHP ; ?9 Q) A) G7 w7 t6 {) G& E
LimitRequestBody 524288 5 y9 z! z3 q; ]. m# R- F

  z) T' a* }" [2 u7 m. E+ i: Y2 @
% M" }/ S! F9 i$ a#
2 \& P3 u. @& H7 K' l' p# Add index.php to the list of files that will be served as directory , O3 |2 J1 t3 ]* I/ I% M
# indexes.
! B8 A, X. z8 u; F#
8 V+ y* U- J" }+ @7 rDirectoryIndex index.php
- I+ @% O' p2 F) M# w0 f1 k1 `, }! f8 V- j7 W, ?9 n" A

- [; t: S6 E& ?) w8 u看到那个524288吗,换算下就是512k。把它改成52428800,reload apache。经测试,可以上传几十兆的文件,问题解决。看来我对apache+php的配置了解还是不够全面,以后还要多多学习! 5 g( f6 l6 Y; L, [$ d

. ?; I5 y1 f4 i# ?9 A" ^/ ]5 y3 i, O/ u9 ^
httpd   [-D   name]   [-d   directory]   [-f   file]   [-C   "directive]   [-c   directive]   [-v]   [-V]   [-h]   [-i]   [-L]   [-s]   [-t]   [-T]   + `/ }7 x8 k2 k
  /etc/rc.d/init.d/http   - Y# }+ r: R& ]0 K- c

  I) ]# K! X' ^7 `& y. v在apache的目录bin下, , ?# j' d! q3 V- \, y' V$ w" y: x
运行:./apachectl     start   
, t% ^! V/ `- y; z3 t% H/ ~$ O9 [停止:./apachectl     stop   
3 Z3 |! A4 }8 r7 y: ^$ g; |( E重起:./apachectl     resart 6 u  u; m6 \; k: R

- Z+ V  Z7 [3 b: Z
; }7 A6 V, V5 V; n- r1 V- Whttpd   start     
5 G4 y3 Y* [( t( q5 y. Xps   -aux   能看到几个httpd   的进程!   / Q! ~; ~9 b) P3 D1 }
8 t/ n8 I+ b2 m& k# p4 p0 a

- f2 P! {/ R) y: [( k  Z1 |0 W% T/ ~3 o  e& p. c6 ?( {

" ^9 \. t0 P& |$ F  I7 K+ i) V5 ^7 o, c) J5 B6 B9 {
**********************************************
" `* P: a' z' ^0 z: H( v. k4 n* f
針對想讓 PHP 能夠處理大檔案, ex, 超過 100MB.... ) V5 K5 i+ x' K+ o( ?
分享一下我的 php 設定經驗, 以下是我的 Software Configuration,
& {7 e  u+ `, r# P. h: u9 `! Q& ~+ @8 j8 k3 B" l
OS: Red Hat Enterprise Linux AS 4.4 Compatible
' n0 ~% q8 s  ^" u; f. jPHP: 4.3.9 + }. @4 R) B+ [; E4 Z6 D
MYSQL: 4.1.20 2 m( r: {) X# |  {1 d1 k
& k- `, ?  S5 v( I: K
用 root 身分編輯 /etc/php.ini , 修改以下資訊
; {7 X1 m0 M" ~& }1 R8 Z9 E
' A+ q5 D4 O- j+ b) O  Wmax_execution_time = 300 ; 每個 script 執行時間上限, 單位是秒.
$ P3 w9 U( B3 }+ `) [max_input_time = 300 ; 每個 script 處理輸入資料可用時間上限, 單位是秒.
* y9 X# C& r- B+ ]2 nmemory_limit = 999M ; 每個執行中的 script 最多可使用的系統記憶體資源.
5 P4 M' H: E" \; `) W( ^post_max_size = 800M ; PHP 能夠接受發表文章的容量上限. & A2 f9 @$ h( Q( X1 O6 C; D$ \
file_uploads = On ; 這個不用改, 安裝完就是 On 了, 請確定你的也是 On.
. N" I* {% E3 d4 o' tupload_max_filesize = 800M ; 允許上傳檔案的最大容量. , t( ^& e8 V' [
default_socket_timeout = 300; Socket 無回應斷線時間上限.
/ ]2 ]. O/ f4 ~% M: A' S0 v5 Q) n# I  dmysql.connect_timeout = -1 ; MYSQL 無回應斷線時間上限, -1 代表永遠等下去.
9 i/ T4 d4 N  B( [9 g3 K; P9 L5 q  p9 U( b5 w# w) n
如果你打算讓你的系統能夠上傳更大的檔案, 可以自行增加某些數值.
6 b1 O; T8 f, ~9 N& e4 s+ _但設定過大的值, 不保證系統的穩定性.   h: _8 ~: ]7 J3 b: {5 T  r; S
ps: 歹勢, 沒時間看 code 測試... . P9 m: [( a1 x0 i. C
3 E# M$ c! Q" B7 V! l
有些數值有相互關係, 例如, memory_limit 必須大於 upload_max_filesize 與 post_max_size.
( P" R8 ~7 t& T* z: H& D7 M2 x. x6 t+ [  C+ q6 b

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

GMT+8, 2-14-2025 23:20 , Processed in 1.592003 second(s), 115 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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