天天看点

linux shell脚本之lnmp的搭建

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

344

345

346

347

<code>#!/bin/bash</code>

<code>#this script is source packages installed lnmp for redhat or centos 6.xmal</code>

<code>yum -y </code><code>install</code> <code>wget</code>

<code>#"============download  the source package=============="</code>

<code>wget http:</code><code>//cloud</code><code>.github.com</code><code>/downloads/libevent/libevent/libevent-2</code><code>.0.21-stable.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//nginx</code><code>.org</code><code>/download/nginx-1</code><code>.3.8.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//www</code><code>.cmake.org</code><code>/files/v2</code><code>.8</code><code>/cmake-2</code><code>.8.6.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//ftp</code><code>.gnu.org</code><code>/gnu/bison/bison-2</code><code>.5.1.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//cdn</code><code>.mysql.com</code><code>/Downloads/MySQL-5</code><code>.5</code><code>/mysql-5</code><code>.5.30.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//ncu</code><code>.dl.sourceforge.net</code><code>/project/qdbm/qdbm/1</code><code>.8.77</code><code>/qdbm-1</code><code>.8.77.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//ftp</code><code>.gnu.org</code><code>/pub/gnu/libiconv/libiconv-1</code><code>.14.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//fossies</code><code>.org</code><code>/linux/www/gd-2</code><code>.0.35.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//sourceforge</code><code>.net</code><code>/projects/mcrypt/files/Libmcrypt/2</code><code>.5.8</code><code>/libmcrypt-2</code><code>.5.8.</code><code>tar</code><code>.bz2</code><code>/download</code>

<code>wget http:</code><code>//sourceforge</code><code>.net</code><code>/projects/mhash/files/mhash/0</code><code>.9.9.9</code><code>/mhash-0</code><code>.9.9.9.</code><code>tar</code><code>.bz2</code><code>/download</code>

<code>wget http:</code><code>//sourceforge</code><code>.net</code><code>/projects/mcrypt/files/MCrypt/2</code><code>.6.8</code><code>/mcrypt-2</code><code>.6.8.</code><code>tar</code><code>.gz</code><code>/download</code>

<code>wget http:</code><code>//cronolog</code><code>.org</code><code>/download/cronolog-1</code><code>.6.2.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//cn2</code><code>.php.net</code><code>/distributions/php-5</code><code>.4.14.</code><code>tar</code><code>.gz</code>

<code>wget http:</code><code>//ncu</code><code>.dl.sourceforge.net</code><code>/project/pcre/pcre/8</code><code>.11</code><code>/pcre-8</code><code>.11.</code><code>tar</code><code>.gz</code>

<code>#"=============download all======================"</code>

<code>printf</code> <code>"========install the compile tool=============\n"</code>

<code>yum -y </code><code>install</code> <code>gcc gcc-c++ openssl-devel ncurses ncurses-devel zlib-devel  </code><code>bzip2</code> <code>bzip2</code><code>-devel curl-devel libjpeg-devel libxml2*  libpng* freetype* libxslt*</code>

<code>#yum -y groupinstall "Development" "Development Tools"        #or   use this command instead of the above</code>

<code>#tar the source package  解压源代码包到指定的目录</code>

<code>tar</code> <code>zxvf pcre-8.11.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf libevent-2.0.21-stable.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf nginx-1.3.8.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf cmake-2.8.6.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf bison-2.5.1.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf mysql-5.5.30.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf libiconv-1.14.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf qdbm-1.8.77.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf gd-2.0.35.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf mcrypt-2.6.8.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf cronolog-1.6.2.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>zxvf php-5.4.14.</code><code>tar</code><code>.gz -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>jxvf libmcrypt-2.5.8.</code><code>tar</code><code>.bz2 -C </code><code>/usr/local/src/</code>

<code>tar</code> <code>jxvf mhash-0.9.9.9.</code><code>tar</code><code>.bz2 -C </code><code>/usr/local/src/</code>

<code>#Compile the unpack the source code package  编译解压的源代码包</code>

<code>echo</code><code>"===========nginx Relevant source package is installed========== "</code>

<code>echo</code> <code>"##### pcre install#####"</code>

<code>cd</code> <code>/usr/local/src/pcre-8</code><code>.11/</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/pcre</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====pcre is ok====\n"</code>

<code>echo</code> <code>"#####libevent install######"</code>

<code>cd</code> <code>/usr/local/src/libevent-2</code><code>.0.21-stable/</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/libevent</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====libevent is ok====\n"</code>

<code>echo</code> <code>"####nginx install######"</code>

<code>groupadd -r nginx</code>

<code>useradd</code> <code>-r -g nginx -s </code><code>/bin/false</code> <code>-M nginx</code>

<code>cd</code> <code>/usr/local/src/nginx-1</code><code>.3.8/</code>

<code>###before you configure,you can  see   "./configure –help"   see carefully "–with-pcre=DIR set path to PCRE library sources"在编译之前可以先help看看</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/nginx</code> <code>--with-pcre=</code><code>/usr/local/src/pcre-8</code><code>.11/ --sbin-path=</code><code>/usr/local/nginx/sbin/nginx</code> <code>--pid-path=</code><code>/usr/local/nginx/logs/nginx</code><code>.pid  \</code>

<code>--with-http_gzip_static_module --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --user=nginx --group=nginx \</code>

<code>--http-proxy-temp-path=</code><code>/var/tmp/nginx/proxy/</code> <code>--http-fastcgi-temp-path=</code><code>/var/tmp/nginx/fcgi/</code> <code>--lock-path=</code><code>/var/lock/nginx</code><code>.lock --http-client-body-temp-path=</code><code>/var/tmp/nginx/client/</code> <code>\</code>

<code> </code><code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"======nginx is ok!!======\n"</code>

<code>mkdir</code> <code>-pv </code><code>/var/tmp/nginx/</code>

<code>#write startup nginx files by yourself   自己手动写nginx的启动脚本</code>

<code>cat</code> <code>&gt;&gt; </code><code>/etc/init</code><code>.d</code><code>/nginx</code> <code>&lt;&lt; EOF</code>

<code># nginx Startup script for the Nginx HTTP Server</code>

<code># it is v.0.0.2 version.</code>

<code># chkconfig: – 85 15</code>

<code># description: Nginx is a high-performance web and proxy server.</code>

<code># It has a lot of features, but it’s not for everyone.</code>

<code># processname: nginx</code>

<code># pidfile: /var/run/nginx.pid</code>

<code># config: /usr/local/nginx/conf/nginx.conf</code>

<code>nginxd=</code><code>/usr/local/nginx/sbin/nginx</code>

<code>nginx_config=</code><code>/usr/local/nginx/conf/nginx</code><code>.conf</code>

<code>nginx_pid=</code><code>/usr/local/nginx/logs/nginx</code><code>.pid</code>

<code>RETVAL=0</code>

<code>prog=</code><code>"nginx"</code>

<code># Source function library.</code>

<code>. </code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/functions</code>

<code># Source networking configuration.</code>

<code>. </code><code>/etc/sysconfig/network</code>

<code># Check that networking is up.</code>

<code>[ ${NETWORKING} = </code><code>"no"</code> <code>] &amp;&amp; </code><code>exit</code> <code>0</code>

<code>[ -x $nginxd ] || </code><code>exit</code> <code>0</code>

<code># Start nginx daemons functions.</code>

<code>start() {</code>

<code>if</code> <code>[ -e $nginx_pid ];</code><code>then</code>

<code>echo</code> <code>"nginx already running…."</code>

<code>exit</code> <code>1</code>

<code>fi</code>

<code>echo</code> <code>-n $</code><code>"Starting $prog: "</code>

<code>daemon $nginxd -c ${nginx_config}</code>

<code>RETVAL=$?</code>

<code>echo</code>

<code>[ $RETVAL = 0 ] &amp;&amp; </code><code>touch</code> <code>/var/lock/subsys/nginx</code>

<code>return</code> <code>$RETVAL</code>

<code>}</code>

<code># Stop nginx daemons functions.</code>

<code>stop() {</code>

<code>echo</code> <code>-n $</code><code>"Stopping $prog: "</code>

<code>killproc $nginxd</code>

<code>[ $RETVAL = 0 ] &amp;&amp; </code><code>rm</code> <code>-f </code><code>/var/lock/subsys/nginx</code> <code>/usr/local/nginx/logs/nginx</code><code>.pid</code>

<code>reload() {</code>

<code>echo</code> <code>-n $</code><code>"Reloading $prog: "</code>

<code>#kill -HUP `cat ${nginx_pid}`</code>

<code>killproc $nginxd -HUP</code>

<code># See how we were called.</code>

<code>case</code> <code>"$1"</code> <code>in</code>

<code>start)</code>

<code>start</code>

<code>;;</code>

<code>stop)</code>

<code>stop</code>

<code>reload)</code>

<code>reload</code>

<code>restart)</code>

<code>status)</code>

<code>status $prog</code>

<code>*)</code>

<code>echo</code> <code>"Usage: $prog {start|stop|restart|reload|status|help}"</code>

<code>esac</code>

<code>exit</code> <code>$RETVAL</code>

<code>EOF</code>

<code>chmod</code> <code>+x </code><code>/etc/init</code><code>.d</code><code>/nginx</code>

<code>chkconfig --add nginx</code>

<code>chkconfig --level 35 nginx on</code>

<code>service nginx restart</code>

<code>echo</code><code>"===========mysql Relevant source package is installed========== "</code>

<code>useradd</code> <code>-M -s </code><code>/sbin/nologin</code>  <code>mysql</code>

<code>echo</code> <code>"##### cmake install#####"</code>

<code>cd</code> <code>/usr/local/src/cmake-2</code><code>.8.6</code>

<code>.</code><code>/bootstrap</code> <code>&amp;&amp; gmake &amp;&amp; gmake </code><code>install</code>

<code>printf</code> <code>"====cmake is ok====\n"</code>

<code>echo</code> <code>"##### bison install#####"</code>

<code>cd</code> <code>/usr/local/src/bison-2</code><code>.5.1/</code>

<code>.</code><code>/configure</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====bison is ok====\n"</code>

<code>echo</code> <code>"##### mysql install#####"</code>

<code>cd</code> <code>/usr/local/src/mysql-5</code><code>.5.30/</code>

<code>cmake -DCMAKE_INSTALL_PREFIX=</code><code>/usr/local/mysql</code> <code>-DMYSQL_UNIX_ADDR=</code><code>/tmp/mysql</code><code>.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \</code>

<code>-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 \</code>

<code>-DMYSQL_DATADIR=</code><code>/var/mysql/data</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====mysql is ok====\n"</code>

<code>#set up the mysql configuration file and initialize the database  建立mysql的配置文件和初始化数据库</code>

<code>#cp usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf  ##if you memory is greater than 2G,please choose this   内存大于2G就copy这个配置文件</code>

<code>cp</code> <code>/usr/local/mysql/support-files/my-medium</code><code>.cnf </code><code>/etc/my</code><code>.cnf</code>

<code>cp</code> <code>/usr/local/mysql/support-files/mysql</code><code>.server  </code><code>/etc/init</code><code>.d</code><code>/mysqld</code>

<code>/usr/local/mysql/scripts/mysql_install_db</code> <code>--user=mysql --basedir=</code><code>/usr/local/mysql/</code>  <code>--datadir=</code><code>/var/mysql/data</code>

<code>/usr/local/mysql/bin/mysqld_safe</code> <code>--user=mysql</code>

<code>chmod</code> <code>-R 755 </code><code>/usr/local/mysql</code>

<code>chown</code> <code>-R mysql:mysql </code><code>/usr/local/mysql</code>

<code>chown</code> <code>-R mysql:mysql </code><code>/var/mysql/data</code>

<code>chkconfig --add mysqld</code>

<code>chkconfig --level 35 mysqld on</code>

<code>service mysqld restart</code>

<code>read</code> <code>-p </code><code>"please set up password for mysql:"</code> <code>pwd</code>

<code>/usr/local/mysql/bin/mysqladmin</code> <code>-u root password $</code><code>pwd</code>

<code>export</code> <code>PATH=$PATH:</code><code>/usr/local/mysql/bin/</code>

<code>echo</code> <code>"PATH=$PATH:/usr/local/mysql/bin"</code> <code>&gt;&gt; </code><code>/etc/profile</code>

<code>ln</code> <code>-s </code><code>/usr/local/mysql/bin/</code><code>* </code><code>/usr/local/bin/</code>

<code>ln</code> <code>-s </code><code>/usr/local/mysql/lib/</code><code>* </code><code>/usr/lib</code>

<code>ln</code> <code>-s </code><code>/usr/local/mysql/include/mysql/</code><code>* </code><code>/usr/include/</code>

<code>echo</code><code>"===========php Relevant source package is installed========== "</code>

<code>echo</code> <code>"####libiconv install####"</code>

<code>cd</code> <code>/usr/local/src/libiconv-1</code><code>.14/</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/libiconv</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====libiconv is ok====\n"</code>

<code>echo</code> <code>"####qdbm install#####"</code>

<code>cd</code> <code>/usr/local/src/qdbm-1</code><code>.8.77/</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/qdbm</code> <code>--</code><code>enable</code><code>-devel --</code><code>enable</code><code>-zlib --</code><code>enable</code><code>-iconv &amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====qdbm is ok====\n"</code>

<code>echo</code> <code>"####gd install####"</code>

<code>cd</code> <code>/usr/local/src/gd-2</code><code>.0.35/</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/gd2</code> <code>--with-jpeg --with-png --with-zlib --with-freetype &amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====gd is ok====\n"</code>

<code>sed</code> <code>-i </code><code>'/\*gd_free/a\void (*data);'</code> <code>/usr/local/gd2/include/gd_io</code><code>.h</code>

<code>echo</code> <code>"/usr/local/gd2/lib"</code> <code>&gt;&gt; </code><code>/etc/ld</code><code>.so.conf</code>

<code>ldconfig</code>

<code>echo</code> <code>"####libmcrypt and libltdl install####"</code>

<code>cd</code> <code>/usr/local/src/libmcrypt-2</code><code>.5.8/</code>

<code>.</code><code>/configure</code>  <code>--prefix=</code><code>/usr/local/libmcrypt</code>  <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>cd</code> <code>/usr/local/src/libmcrypt-2</code><code>.5.8</code><code>/libltdl</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/libltdl</code> <code>--</code><code>enable</code><code>-ltdl-</code><code>install</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>ln</code> <code>-sf </code><code>/usr/local/lib/libmcrypt</code><code>.* </code><code>/usr/lib</code>

<code>ln</code> <code>-sf </code><code>/usr/local/bin/libmcrypt-config</code> <code>/usr/bin</code>

<code>printf</code> <code>"====libmcrypt  and libltdl is ok====\n"</code>

<code>echo</code> <code>"####mhash install####"</code>

<code>cd</code> <code>/usr/local/src/mhash-0</code><code>.9.9.9/</code>

<code>.</code><code>/configure</code>  <code>--prefix=</code><code>/usr/local/mhash</code> <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>ln</code> <code>-sf </code><code>/usr/local/lib/libmhash</code><code>.* </code><code>/usr/lib/</code>

<code>printf</code> <code>"====mhash is ok====\n"</code>

<code>echo</code> <code>"####mcrypt install####"</code>

<code>cd</code> <code>/usr/local/src/mcrypt-2</code><code>.6.8/</code>

<code>/sbin/ldconfig</code>

<code> </code><code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/mcrypt</code>  <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====mcrypt is ok====\n"</code>

<code>echo</code> <code>"####cronolog install####"</code>

<code>cd</code> <code>/usr/local/src/cronolog-1</code><code>.6.2</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/cronolog</code>  <code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====cronolog is ok====\n"</code>

<code>echo</code> <code>"####php install#####"</code>

<code>ln</code> <code>-sf </code><code>/usr/local/mysql/lib/libmysqlclient</code><code>.so.18 </code><code>/usr/lib</code>

<code>ln</code> <code>-sf </code><code>/usr/local/qdbm/lib/libqdbm</code><code>.so* </code><code>/usr/lib</code>

<code>cd</code> <code>/usr/local/src/php-5</code><code>.4.14</code>

<code>.</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/php5</code> <code>--with-config-</code><code>file</code><code>-path=</code><code>/usr/local/php5/etc</code> <code>--with-mysql=</code><code>/usr/local/mysql</code> <code>\</code>

<code>--with-iconv=</code><code>/usr/local/libiconv</code> <code>--with-gd=</code><code>/usr/local/gd2</code> <code>--with-iconv-</code><code>dir</code><code>=</code><code>/usr/local</code> <code>--with-pdo-mysql=</code><code>/usr/local/mysql</code>  <code>\</code>

<code>--with-libxml-</code><code>dir</code><code>=</code><code>/usr</code> <code>--with-qdbm=</code><code>/usr/local/qdbm</code> <code>--with-mime-magic=</code><code>/usr/share/file/magic</code> <code>--with-jpeg-</code><code>dir</code> <code>--with-png-</code><code>dir</code> <code>--with-freetype-</code><code>dir</code> <code>\</code>

<code>--with-bz2 --with-zlib  --without-pear  --with-xmlrpc --with-zlib-</code><code>dir</code> <code>--with-curl --with-curlwrappers --with-mcrypt=</code><code>/usr/local/libmcrypt</code> <code>--with-mhash \</code>

<code>--with-ttf --with-xsl --with-gettext --with-pear --with-openssl --</code><code>enable</code><code>-discard-path --</code><code>enable</code><code>-gd-native-ttf \</code>

<code>--</code><code>enable</code><code>-bcmath --</code><code>enable</code><code>-shmop --</code><code>enable</code><code>-sysvsem --</code><code>enable</code><code>-inline-optimization --</code><code>enable</code><code>-mbregex --</code><code>enable</code><code>-xml \</code>

<code>--</code><code>enable</code><code>-soap --</code><code>enable</code><code>-calendar --</code><code>enable</code><code>-wddx --</code><code>enable</code><code>-dba --</code><code>enable</code><code>-gd-native-ttf--</code><code>enable</code><code>-calendar --</code><code>enable</code><code>-safe-mode \</code>

<code>--</code><code>enable</code><code>-</code><code>ftp</code> <code>--</code><code>enable</code><code>-fpm --</code><code>enable</code><code>-zip --</code><code>enable</code><code>-mbstring --</code><code>enable</code><code>-bcmath --</code><code>enable</code><code>-sockets --</code><code>enable</code><code>-exif --</code><code>enable</code><code>-magic-quotes --disable-rpath --disable-debug \</code>

<code>&amp;&amp; </code><code>make</code> <code>&amp;&amp; </code><code>make</code> <code>install</code>

<code>printf</code> <code>"====php is ok====\n"</code>

<code>ln</code> <code>-s </code><code>/usr/local/php5/bin/</code><code>* </code><code>/usr/local/bin/</code>

<code>ln</code> <code>-s </code><code>/usr/local/php5/sbin/</code><code>* </code><code>/usr/local/sbin/</code>

<code>cp</code> <code>/usr/local/src/php-5</code><code>.4.14</code><code>/php</code><code>.ini-production </code><code>/usr/local/php5/php</code><code>.ini</code>

<code>#Configure nginx support php  配置nginx支持php环境</code>

<code>cp</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf.default </code><code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/run/s/;//g'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/^ /d'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'s/nobody/nginx/g'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/start/s/2/20/'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/min/s/1/5/'</code>  <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/max_spare/s/3/25/'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>sed</code> <code>-i </code><code>'/max_children/s/5/35/'</code> <code>/usr/local/php5/etc/php-fpm</code><code>.conf</code>

<code>/usr/local/sbin/php-fpm</code>   <code>#启动php-fpm进程</code>

<code>#test nginx mysql php work tegether</code>

<code>sed</code> <code>-i </code><code>'/\&lt;user\&gt;/a user nginx;'</code> <code>/usr/local/nginx/conf/nginx</code><code>.conf   </code><code>#把user改为nginx用户</code>

<code>sed</code> <code>-i </code><code>'/\&lt;index\&gt;/s/index.html index.htm/index.html index.htm index.php/g'</code> <code>/usr/local/nginx/conf/nginx</code><code>.conf  </code><code>#添加支持index.php</code>

<code>#这下面的六句自己手动的添加到nginx的配置文件里面去/usr/local/nginx/conf/nginx.conf</code>

<code>#        location ~ \.php$ {</code>

<code>#            root           html;</code>

<code>#            fastcgi_pass   127.0.0.1:9000;</code>

<code>#            fastcgi_index  index.php;</code>

<code>#            include        fastcgi.conf;</code>

<code>#        }</code>

<code>cat</code> <code>&gt;&gt; </code><code>/usr/local/nginx/html/test</code><code>.php &lt;&lt; EOF</code>

<code>&lt;?php</code>

<code>$link=mysql_connect(</code><code>'localhost'</code><code>,</code><code>'root'</code><code>,</code><code>'123456'</code><code>);</code>

<code>if</code><code>($link) </code><code>echo</code> <code>"&lt;h1&gt;lian jie mysql cheng gong!!&lt;/h1&gt;"</code><code>;</code>

<code>mysql_close();</code>

<code>?&gt;</code>

<code>#done all  you can test lnmp http://ip(test nginx)  or http://ip/test.php(test nginx with mysql php)</code>

<code>                 </code><code>##############=========nginx and php-fpm Startup script##################</code>

<code>##############=========  #!/bin/bash</code>

<code>##############=========   # nginx and php-fpm Startup script for the Nginx HTTP Server</code>

<code>##############=========   # chkconfig: – 85 15</code>

<code>##############=========   nginxd=/usr/local/nginx/sbin/nginx</code>

<code>##############=========   nginx_config=/usr/local/nginx/conf/nginx.conf</code>

<code>##############=========   nginx_pid=/usr/local/nginx/logs/nginx.pid</code>

<code>##############=========   php_fpm=/usr/local/sbin/php-fpm</code>

<code>##############=========   php_fpm_config=/usr/local/php5/etc/php-fpm.conf</code>

<code>##############=========   php_fpm_pid=/usr/local/php5/var/run/php-fpm.pid</code>

<code>##############=========   RETVAL=0</code>

<code>##############=========   prog="nginx"</code>

<code>##############=========   prog1="php-fpm"</code>

<code>##############=========   # Source function library.</code>

<code>##############=========   . /etc/rc.d/init.d/functions</code>

<code>##############=========   # Source networking configuration.</code>

<code>##############=========   . /etc/sysconfig/network</code>

<code>##############=========   # Check that networking is up.</code>

<code>##############=========   [ ${NETWORKING} = "no" ] &amp;&amp; exit 0</code>

<code>##############=========   [ -x $nginxd ] || exit 0</code>

<code>##############=========   # Start nginx daemons functions.</code>

<code>##############=========   start() {</code>

<code>##############=========   if [ -e $nginx_pid ];then</code>

<code>##############=========   echo "nginx already running…."</code>

<code>##############=========   exit 1</code>

<code>##############=========   fi</code>

<code>##############=========   echo -n $"Starting $prog: "</code>

<code>##############=========   RETVAL=$?</code>

<code>##############=========   echo</code>

<code>##############=========   [ $RETVAL = 0 ] &amp;&amp; touch /var/lock/subsys/nginx</code>

<code>##############=========   return $RETVAL</code>

<code>##############=========   }</code>

<code>##############=========   # Stop nginx daemons functions.</code>

<code>##############=========   stop() {</code>

<code>##############=========   echo -n $"Stopping $prog: "</code>

<code>##############=========   killproc $nginxd</code>

<code>##############=========   [ $RETVAL = 0 ] &amp;&amp; rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid</code>

<code>##############=========   reload() {</code>

<code>##############=========   echo -n $"Reloading $prog: "</code>

<code>##############=========   #kill -HUP `cat ${nginx_pid}`</code>

<code>##############=========   killproc $nginxd -HUP</code>

<code>##############=========   # See how we were called.</code>

<code>##############=========   case "$1" in</code>

<code>##############=========   start)</code>

<code>##############=========   start</code>

<code>##############=========   $php_fpm -c $php_fpm_config</code>

<code>##############=========   echo  "starting $prog1:[ok]"</code>

<code>##############=========   ;;</code>

<code>##############=========   stop)</code>

<code>##############=========   stop</code>

<code>##############=========   echo  $"Stopping $prog1:[ok]"</code>

<code>##############=========   killproc $php_fpm</code>

<code>##############=========   reload)</code>

<code>##############=========   reload</code>

<code>##############=========   restart)</code>

<code>##############=========   echo  $"Stopping $prog1:[ok] "</code>

<code>##############=========   status)</code>

<code>##############=========   status $prog</code>

<code>##############=========   *)</code>

<code>##############=========   echo "Usage: $prog {start|stop|restart|reload|status|help}"</code>

<code>##############=========   esac</code>

<code>##############=========   exit $RETVAL</code>

<code>#把这个改成启动脚本的方法:1.先在linux上面vim /etc/init.d/nginx</code>

<code>#                          2.把以这个开头的且包括##############=========都copy到linux的/etc/init.d/nginx文件中</code>

<code>#                          3.用sed命令去掉##############=========这些,然后剩下来的就是nginx和php-fpm的启动脚本了</code>

<code>#                          4.用sed这样改  sed -i 's/##############=========   //g' /etc/init.d/nginx    直接copy这句,因为要注意#=这个的个数</code>

<code>#                          5.sed命令执行后,可以vim看一下,前面的那些已经去掉,然后加权限 chmod +x /etc/init.d/nginx</code>

<code>#                          6.然后就可以用 service nginx {start|stop|restart}命令了,执行这个命令时php-fpm也跟着start stop restart</code>

<code>copy所有的内容到linux新建的文件中,然后给文件赋予权限,然后执行,自动执行,漫长的过程,</code>

<code>自己运行这个脚本是木有出错的</code>

本文转自 jie783213507 51CTO博客,原文链接:http://blog.51cto.com/litaotao/1248288,如需转载请自行联系原作者