企业项目实战----使用LNMP架构部署动态网站环境 | 搭建Discuz!论坛

news/2024/5/19 10:30:32/文章来源:https://blog.csdn.net/weixin_44297303/article/details/89523909

前言

本文使用的是用源码包安装服务程序,难度可能较大,至于为何要用源码包安装程序,说简单点就是方便自己使用吧,以及这是一门必备技能,以后在运维工作中也是会用到的!

一、源码安装服务程序步骤

1、下载 解压源码包文件

下载源码包后,相应命令解压,进入解压目录即可!

例如:
[root@allen mnt]# ls
keepalived-2.0.6.tar.gz
[root@allen mnt]# tar zxf keepalived-2.0.6.tar.gz 
[root@allen mnt]# ls
keepalived-2.0.6  keepalived-2.0.6.tar.gz
[root@allen mnt]# cd keepalived-2.0.6/

2、编译源码包代码

在编译期间可以通过追加参数–prefix,指定源码包程序的安装路径,当编译结束后,如果系统环境符合安装要求,一般会在当前目录下生成一个Makefile安装文件!

例如:
[root@allen keepalived-2.0.6]# ./configure --prefix=/usr/local/LVS

3、生成二进制文件程序

使用make命令根据Makefile文件内容编译出二进制可执行文件

[root@allen keepalived-2.0.6]# make

4、运行二进制程序

如果编译时用了- -prefix参数指定安装目录,那么程序会被安装在指定目录,没有使用的话,一般会默认安装在/usr/local/bin 目录中

[root@allen keepalived-2.0.6]#make install

5、清理源码包临时文件

使用make clean 命令可以对临时文件进行彻底清理,以达到不浪费磁盘存储空间的目的

[root@allen keepalived-2.0.6]# make clean

二、LNMP 动态网站架构

LNMP = Linux + Nginx + MySQL +PHP

1、 在使用源码包安装服务程序之前,首先让主机具备编译程序源码的环境。需要具备C语言,C++语言,Perl语言的编译器,以及各种常见的编译支持函数库程序。

yum install apr* autoconf automake bison bzip2* compat* cpp curl-devel fontconfig-devel  freetype* gcc gcc-c++ gd gettext-devel glibc kernel kernel-headers keyutils-libs-devel krb5-devel libcom_err-devel libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2-devel libXpm*  libtifflibtiff* make mpfr ncurses* ntp openssl-devel patch pcre-devel perl php-common php-gd policycoreutils telnet tllib* nasm* wget zlib-devel   -y

2、下载安装LNMP动态网站部署架构的16个软件源码包1个用于检测效果的论坛网站系统软件包

通过wget命令下载:

cd /usr/local/src
wget https://www.linuxprobe.com/Software/cmake-2.8.11.2.tar.gz
wget https://www.linuxprobe.com/Software/Discuz_X3.2_SC_GBK.zip
wget https://www.linuxprobe.com/Software/freetype-2.5.3.tar.gz
wget https://www.linuxprobe.com/Software/jpegsrc.v9a.tar.gz
wget https://www.linuxprobe.com/Software/libgd-2.1.0.tar.gz
wget https://www.linuxprobe.com/Software/libmcrypt-2.5.8.tar.gz
wget https://www.linuxprobe.com/Software/libpng-1.6.12.tar.gz
wget https://www.linuxprobe.com/Software/libvpx-v1.3.0.tar.bz2
wget https://www.linuxprobe.com/Software/mysql-5.6.19.tar.gz
wget https://www.linuxprobe.com/Software/nginx-1.6.0.tar.gz
wget https://www.linuxprobe.com/Software/openssl-1.0.1h.tar.gz
wget https://www.linuxprobe.com/Software/php-5.5.14.tar.gz
wget https://www.linuxprobe.com/Software/pcre-8.35.tar.gz
wget https://www.linuxprobe.com/Software/t1lib-5.1.2.tar.gz
wget https://www.linuxprobe.com/Software/tiff-4.0.3.tar.gz
wget https://www.linuxprobe.com/Software/yasm-1.2.0.tar.gz
wget https://www.linuxprobe.com/Software/zlib-1.2.8.tar.gz

在这里插入图片描述
3、CMake是 Linux系统中一款常用的编译工具。

[root@allen src]# tar zxf cmake-2.8.11.2.tar.gz 
[root@allen src]# cd cmake-2.8.11.2/
[root@allen cmake-2.8.11.2]# ./configure && make && make install

4、配置MySQL服务

MySQL数据库是当前生产环境中最常使用的关系型数据库管理系统之一,有极高的安全性和稳定性,坐拥极大的市场份额。

1)创建名为mysql的用户,专门用于负责运行MySQL数据库

切记这类用户的bash终端得设置为nologin解释器,避免黑客通过使用该用户登陆到服务器中,从而提高系统安全性!

[root@allen cmake-2.8.11.2]# cd ..
[root@allen src]# useradd -s /sbin/nologin mysql

2)创建一个目录用来保存MySQL数据库的程序和文件

[root@allen src]# mkdir -p /usr/local/mysql/var		#建立目录# /usr/local/mysql/	用来存放MySQL数据库的程序# /usr/local/mysql/var	用来保存真实数据库文件
[root@allen src]# chown -Rf mysql:mysql /usr/local/mysql/	# 将目录的所有者和所属组身份改为mysql

3)解压、编译、安装MySQL数据库服务程序

在编译数据库时使用的是CMake命令
-DCMAKE_INSTALL_PREFIX= 参数 定义数据库服务程序的保存目录
-DMYSQL_DATADIR= 参数 定义真实数据库文件的目录
-DSYSCONFDIR= 参数 定义MySQL数据库配置文件的保存目录

[root@allen src]# tar zxf mysql-5.6.19.tar.gz 
[root@allen src]# cd mysql-5.6.19/
[root@allen mysql-5.6.19]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/var -DSYSCONFDIR=/etc
[root@allen mysql-5.6.19]# make && make install

4)为了让MySQL正常运行,删除默认配置文件重新生成

[root@allen mysql-5.6.19]# rm -fr /etc/my.cnf		#删除/etc目录中的默认配置文件
[root@allen mysql-5.6.19]# cd /usr/local/mysql/		#进入MySQL数据库程序的保存目录
[root@allen mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var#执行/mysql_install_db脚本,并指定--user,--basedir,--datadir 参数
[root@allen mysql]# ln -s my.cnf /etc/my.cnf

5)加入service命令管理

./support-files/mysql.server 开机程序文件

[root@allen mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@allen mysql]# chmod 755 /etc/rc.d/init.d/mysqld 		#给执行权限

6)配置脚本文件并启动服务

[root@allen mysql]# vim /etc/rc.d/init.d/mysqld46 basedir=/usr/local/mysql			# MySQL程序 的保存目录47 datadir=/usr/local/mysql/var		# 真实数据库的文件内容 的保存目录[root@allen mysql]# service mysqld start		#启动服务
[root@allen mysql]# chkconfig mysqld on			#开机自启

7)将MySQL命令保存目录永久性定义到PATH变量中

[root@allen mysql]# vim /etc/profile		#加入以下内容75 export PATH=$PATH:/usr/local/mysql/bin[root@allen mysql]# source /etc/profile		#重新加载/etc/profile文件

在这里插入图片描述
8)将会调用的程序文件和函数库链接起来

[root@allen mysql]# mkdir /var/lib/mysql
[root@allen mysql]# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
[root@allen mysql]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
[root@allen mysql]# ln -s /usr/local/mysql/include/mysql /usr/include/mysql

9)对MySQL数据库进行初始化

一直回车就行

[root@allen mysql]# mysql_secure_installation

5、配置Nginx服务

Nginx是一个高性能的HTTP和反向代理web服务器,是一款相当优秀的用于部署动态网站的轻量级服务程序。因稳定功能丰富(Web、反向代理、负载均衡)占用内存少并发能力强而被广泛运用!

1)解决相关软件依赖(pcre,openssl,zlib)

pcre:提供perl语言兼容的正则表达式库

[root@allen mysql]# cd /usr/local/src/
[root@allen src]# tar zxf pcre-8.35.tar.gz 
[root@allen src]# cd pcre-8.35/
[root@allen pcre-8.35]# ./configure --prefix=/usr/local/pcre && make && make install

openssl:用于提供网站加密证书服务

[root@allen pcre-8.35]# cd ..
[root@allen src]# tar zxf openssl-1.0.1h.tar.gz 
[root@allen src]# cd openssl-1.0.1h/
[root@allen openssl-1.0.1h]# ./config --prefix=/usr/local/openssl && make && make install

openssl软件包安装之后,会在/usr/local/openssl/bin/目录中提供很多可用的命令、将这个目录加入PATH环境变量中

[root@allen openssl-1.0.1h]# vim /etc/profile75 export PATH=$PATH:/usr/local/mysql/bin:/usr/local/openssl/bin/
[root@allen openssl-1.0.1h]# source /etc/profile

在这里插入图片描述

zlib:提供压缩功能

[root@allen openssl-1.0.1h]# cd ..
[root@allen src]# tar zxf zlib-1.2.8.tar.gz 
[root@allen src]# cd zlib-1.2.8/
[root@allen zlib-1.2.8]# ./configure --prefix=/usr/local/zlib && make && make install

2、创建一个用于执行Nginx服务程序的账户(可自定义)

[root@allen zlib-1.2.8]# useradd -s /sbin/nologin www

3、编译安装Nginx

[root@allen zlib-1.2.8]# cd ..
[root@allen src]# tar zxf nginx-1.6.0.tar.gz 
[root@allen src]# cd nginx-1.6.0/
[root@allen nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.1h --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.35 && make && make install

4、将Nginx服务加入到开机启动项中

[root@allen nginx-1.6.0]# vim /etc/rc.d/init.d/nginx
#!/bin/bash
# nginx - this script starts and stops the nginx daemon
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`if [ -z "`grep $user /etc/passwd`" ]; thenuseradd -M -s /bin/nologin $userfi
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; doif [ `echo $opt | grep '.*-temp-path'` ]; thenvalue=`echo $opt | cut -d "=" -f 2`if [ ! -d "$value" ]; then# echo "creating" $valuemkdir -p $value && chown -R $user $valuefifi
done
}
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
#configtest || return $?
stop
sleep 1
start
}
reload() {
#configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)rh_status_q && exit 0$1;;
stop)rh_status_q || exit 0$1;;
restart|configtest)
$1
;;
reload)rh_status_q || exit 7$1;;
force-reload)force_reload;;
status)rh_status;;
condrestart|try-restart)rh_status_q || exit 0;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac[root@allen nginx-1.6.0]# chmod 775 /etc/rc.d/init.d/nginx

5、启动服务

[root@allen nginx-1.6.0]# /etc/rc.d/init.d/nginx start
[root@allen nginx-1.6.0]# chkconfig nginx on			#开机自启

6、测试

浏览器访问服务器IP

在这里插入图片描述

6、配置PHP服务

PHP(Hypertxt Preprocessor,超文本预处理器)是一种通用的开源脚本语言,具有开源免费快捷跨平台性强效率高等优良特点,是目前Web开发领域最常用的语言之一。

1、先安装部署将近十个用于搭建网站页面的软件程序包

yasm:常见的开源汇编器

[root@allen ~]# cd /usr/local/src/
[root@allen src]# tar zxf yasm-1.2.0.tar.gz 
[root@allen src]# cd yasm-1.2.0/
[root@allen yasm-1.2.0]# ./configure && make && make install

libmcrypt:用于加密算法的扩展库程序

[root@allen yasm-1.2.0]# cd ..
[root@allen src]# tar zxf libmcrypt-2.5.8.tar.gz 
[root@allen src]# cd libmcrypt-2.5.8/
[root@allen libmcrypt-2.5.8]# ./configure && make && make install

libvpx:提供视频编码器的服务程序

[root@allen src]# tar jxf libvpx-v1.3.0.tar.bz2 
[root@allen src]# cd libvpx-v1.3.0/
[root@allen libvpx-v1.3.0]# ./configure --prefix=/usr/local/libvpx --enable-shared --enable-vp9 && make && make install

tiff:用于提供标签图像文件格式的服务程序

[root@allen libvpx-v1.3.0]# cd ..
[root@allen src]# tar zxf tiff-4.0.3.tar.gz 
[root@allen src]# cd tiff-4.0.3/
[root@allen tiff-4.0.3]# ./configure --prefix=/usr/local/tiff --enable-shared && make && make install

libpng:提供png图片格式支持函数库的服务程序

[root@allen tiff-4.0.3]# cd ..
[root@allen src]# tar zxf libpng-1.6.12.tar.gz 
[root@allen src]# cd libpng-1.6.12/
[root@allen libpng-1.6.12]# ./configure --prefix=/usr/local/libpng --enable-shared && make && make install

freetype:提供字体支持引擎的服务程序

[root@allen libpng-1.6.12]# cd ..
[root@allen src]# tar zxf freetype-2.5.3.tar.gz 
[root@allen src]# cd freetype-2.5.3/
[root@allen freetype-2.5.3]# ./configure --prefix=/usr/local/freetype --enable-shared && make && make install

jpeg:提供jpeg图片格式支持函数库的服务程序

[root@allen freetype-2.5.3]# cd ..
[root@allen src]# tar zxf jpegsrc.v9a.tar.gz 
[root@allen src]# cd jpeg-9a/
[root@allen jpeg-9a]# ./configure --prefix=/usr/local/jpeg --enable-shared && make && make install

libgd:提供图片处理的服务程序

[root@allen jpeg-9a]# cd ..
[root@allen src]# tar zxf libgd-2.1.0.tar.gz 
[root@allen src]# cd libgd-2.1.0/
[root@allen libgd-2.1.0]# ./configure --prefix=/usr/local/libgd --enable-shared --with-jpeg=/usr/local/jpeg --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype --with-fontconfig=/usr/local/freetype --with-xpm=/usr/ --with-tiff=/usr/local/tiff --with-vpx=/usr/local/libvpx && make && make install

t1lib:提供图片生成函数库的服务程序

  • 安装后将/usr/lib64 目录中的函数文件链接到/usr/lib 目录中,以便系统能顺利调取到函数文件
[root@allen libgd-2.1.0]# cd ..
[root@allen src]# tar zxf t1lib-5.1.2.tar.gz 
[root@allen src]# cd t1lib-5.1.2/
[root@allen t1lib-5.1.2]# ./configure --prefix=/usr/local/t1lib --enable-shared && make && make install [root@allen t1lib-5.1.2]# ln -s /usr/lib64/libltdl.so /usr/lib/libltdl.so
[root@allen t1lib-5.1.2]# ln -s /usr/lib64/libXpm.so* /usr/lib/

2、编译、安装php

依次定义配置php服务程序配置文件的保存目录、MySQL数据库服务程序所在目录、MySQL数据库服务程序配置文件所在目录,以及libpng、jpeg、freetype、libvpx、zlib、t1lib等服务程序的安装目录路径,并通过参数启动php服务程序的诸多默认功能

[root@allen t1lib-5.1.2]# cd ..
[root@allen src]# tar zxf php-5.5.14.tar.gz 
[root@allen src]# cd php-5.5.14/
[root@allen php-5.5.14]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql=/usr/local/mysql --with-gd --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-xpm-dir=/usr/ --with-vpx-dir=/usr/local/libvpx/ --with-zlib-dir=/usr/local/zlib --with-t1lib=/usr/local/t1lib --with-iconv --enable-libxml --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-opcache --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --enable-ctype
[root@allen php-5.5.14]# make && make install

3、php.ini 和 php-fpm.conf 文件的处理

[root@allen php-5.5.14]# rm -fr /etc/php.ini 
[root@allen php-5.5.14]# cp php.ini-production /usr/local/php/etc/php.ini
[root@allen php-5.5.14]# ln -s /usr/local/php/etc/php.ini /etc/php.ini
[root@allen php-5.5.14]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@allen php-5.5.14]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf 

4、php-fpm.conf 文件配置

[root@allen php-5.5.14]# vim /etc/php-fpm.conf		#制作的软链接25 pid = run/php-fpm.pid148 user = www				#和nginx用户相同149 group = www

5、将管理PHP服务的脚本文件复制到/etc/rc.d/init.d目录中

  • 赋予775权限,即可用命令控制
[root@allen php-5.5.14]# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
[root@allen php-5.5.14]# chmod 775 /etc/rc.d/init.d/php-fpm
[root@allen php-5.5.14]# chkconfig php-fpm on

6、编辑php.ini配置文件,在305行的disable_functions参数后面追加上要禁止的功能

[root@allen php-5.5.14]# vim /etc/php.ini 
305 disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restor e,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,g etservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,po six_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

7、最后配置nginx

[root@allen conf]# ln -s /usr/local/nginx/conf/nginx.conf /etc/nginx.conf
[root@allen conf]# vim /etc/nginx.conf 2 user  www www;45             index  index.html index.htm index.php;65         location ~ \.php$ {66             root           html;67             fastcgi_pass   127.0.0.1:9000;68             fastcgi_index  index.php;69             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_na    me;70             include        fastcgi_params;71         }[root@allen conf]# systemctl restart nginx
[root@allen conf]# systemctl restart php-f
  • 至此,LNMP动态网络架构配置实验全部结束

三、搭建Discuz!论坛

为了检验LNMP动态网站环境是否配置妥当,可以使用在上面部署Discuz!系统,然后查看结果。如果能够在LNMP动态网站环境中成功安装使用Discuz!论坛系统,也就意味着这套架构是可用的。Discuz! X3.2是国内最常见的社区论坛系统,在经过十多年的研发后已经成为了全球成熟度最高、覆盖率最广的论坛网站系统之一。

1、将解包的全部文件移至Nginx默认发布目录

[root@allen conf]# cd /usr/local/src/
[root@allen src]# unzip Discuz_X3.2_SC_GBK.zip
[root@allen src]# rm -fr /usr/local/nginx/html/{index.html,50x.html}*
[root@allen src]# mv upload/* /usr/local/nginx/html/
[root@allen src]# chown -Rf www:www /usr/local/nginx/html/
[root@allen src]# chmod -Rf 775 /usr/local/nginx/html/

2、浏览器访问服务器IP

点我同意
在这里插入图片描述
3、没问题当前状态都是可写

如果为不可写,请自行检查目录的所有者和所属组是否为www用户,以及是否对目录设置了755权限,然后单击“下一步”按钮。

在这里插入图片描述
在这里插入图片描述
4、如图,点击下一步
在这里插入图片描述

5、根据提示填,特别是数据库密码

管理员信息,没有特殊要求,自定义

在这里插入图片描述
6、跟着提示点击
在这里插入图片描述
在这里插入图片描述

这就是论坛首页
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_781632.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站性能压力测试工具webbench的安装与使用

1、下载安装WebBench 下载webbench [rootnode1 Downloads]# wget http://www.ha97.com/code/webbench-1.5.tar.gz解压 [rootnode1 Downloads]# tar zxf webbench-1.5.tar.gz -C ~安装依赖性 [rootnode1 webbench-1.5]# yum install ctags -y建立安装所需目录 [rootnode1 w…

大型网站技术架构(二)架构模式

2019独角兽企业重金招聘Python工程师标准>>> 每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作。 所谓网站架构模式即为了解决大型网站面临的高并发访问、海量数据、高可靠…

用python爬猫眼电影,简单网站却有 “多重思路” !

七夕不看电影就爬电影吧。猫眼电影作为爬虫的必备练手网站,相信每个人都试过吧? 那么这篇文章,我就再爬一次猫眼电影,而且用上正则和xpath一起,分别保存为excel表格和csv表格,(text文本这个就太…

每周推荐一本书 - 《大型网站技术架构》

这本书是阿里资深架构师写的一本书 不去评论作者的能力,对于新手来说,我觉得这本书是对于大型网站后台建设思路的扫盲书,很值得小白一读。 本书特点: 1.纯概念性内容,认字的都能读,不需要很强的编程基础…

2020年没被淘汰的IT精英都看这14个全球知名网站

马上2020了,我身边很多同事又开始准备新一轮面试,他们来自阿里,IBM,Oracle,airbnb等,他们从不自称大神。我问他们平时都是从哪里学新技术,外企经验都精英总结们得出结论,国内互联网的…

【阿里云ECS进阶训练营】day01搭建自己的专属网站与云笔记

目录一:课程介绍二:安装VuePress1.连接ECS服务器2.设置实例安全组3.安装Node.js4.安装VuePress三:配置VuePress1、基本配置步骤2.首页配置示例一:课程介绍 VuePress是受欢迎的极简静态网站生成器,它还未书写技术文档而…

520创意表白网站,让女友对你死心塌地。女神轻松领回家

可能很多女生都会觉得程序员都是直男,不懂浪漫。但是!!!看完这个教程之后,让女友对你死心塌地。 这是一个基于js和html搭建的简单界面,你只需要把代码下载下来,然后再简单的改一下代码信息&…

网站开发——旅游网项目(简单前后台实现)

目录 前言 一、网站使用前后台展示 二、开发过程 准备工作(技术选型、创建Maven工程、导包、创建实体类、工具类) 技术选型 其他的一些准备工作就不赘述了,代码全在我最下面的提取文件中。 逻辑思路(后台到前台&#xff09…

h5网站对服务器要求高么,专业网页设计师告诉你,H5究竟是什么?

原标题:专业网页设计师告诉你,H5究竟是什么?H5是Html5的简称,最近两年H5是互联网领域极为火爆的名词,并由此诞生了不少垂直型H5制作企业,一些互联网巨头也早早准备,或开发或投资或收购&#xff…

GitHub+Hexo 搭建个人网站详细教程

一、什么是Hexo ? Hexo是一款基于Node.js的静态博客框架,依赖少易于安装使用,可以方便的生成静态网页托管在GitHub和Heroku上,是搭建博客的首选框架。这里我们选用的是GitHub,你没看错,全球最大的同性恋交友网站&…

email邮件中 内嵌iframe_网站搭建8:Django项目中嵌入Jupyter notebook

最近感兴趣研究了一下量化交易,在聚宽(JoinQuant)网站中看到网页中嵌入了Jupyter notebook(多语言支持的Html笔记本应用程序)。而我也经常使用Jupyter测试神经网络等机器学习算法,如果可以把Jupyter架设在自…

吐血推荐-巧用网站配置文件提升权限!!!

巧用网站配置文件提升权限本文已被***手册杂志2007年第三期收录朋友给我发来一个Asp的Webshell的地址,然后又给我发了一条消息“痛苦,拿到Webshell,由于权限太低,什么也干不了!(图1)”&#xff…

程序员常用的技术网站

(http://stackoverflow.com/)这个网站我几乎可以不用介绍了,就算你们不常用,就算每次你都用搜索引擎去找编程相关问题都有很大可能跳入此网站。此网站用途:当你碰到任何编程问题,就去搜索该问题&#xff0c…

php的bom头会影响格式,完美解决由bom头引发的非法字符#65279;出现php网站模板或功能问题...

今天为一个客户解决网页模板问题发现一个有意思的问题,客户还是对代码有些小懂,自己尝试着改了一下,结果发现头部多出来一个空行,找到我以后,随即f12查看了一下,一看乐了,出现了个字…

SeleniumPhantomJS获取网站中的JS返回的数据

一、安装Selenium模块 pip install selenium Selenium 是一套完整的Web应用程序测试系统,包含了测试的录制、编写及运行和测试的并行处理。二、安装PhantomJS(官网下载:http://phantomjs.org/) 下载后放在python安装目录,和…

一步一步SharePoint 2007之十六:注册并配置一个网站用户

在前面的文章中,我已经介绍了如何创建管理帐户。创建其它帐户的方法是一样的。大家可以把这个注册系统放到自己的网站中,就可以成为网站的一部分了。本文将只讲解如何在管理工具中将用户手动加入到网站用户组中,至于如何将注册完后的用户自动…

破解网站验证码

概述 很多开发者都讨厌网站的验证码,特别是写网络爬虫的程序员,而网站之所以设置验证码,是为了防止机器人访问网站,造成不必要的损失。现在好了,随着机器学习技术的发展,机器识别验证码的问题比较好解决了。…

最热开源静态网站生成器 TOP 20

1、静态站点生成器 Jekyll Jekyll 是一个简单的免费的Blog生成工具,类似WordPress。但是和WordPress又有很大的不同,原因是jekyll只是一个生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如discuz。最关键的是jekyll可以免费…

配件查询网站用java,基于jsp的配件管理系统-JavaEE实现配件管理系统 - java项目源码...

基于jspservletpojomysql实现一个javaee/javaweb的配件管理系统, 该项目可用各类java课程设计大作业中, 配件管理系统的系统架构分为前后台两部分, 最终实现在线上进行配件管理系统各项功能,实现了诸如用户管理, 登录注册, 权限管理等功能, 并实现对各类配件管理系统相关的实体…

linux查看当前服务器是什么文件系统,linux文件系统中每个文件用什么来标识_网站服务器运行维护,linux...

linux如何查看tomcat进程_网站服务器运行维护linux查看tomcat进程的方法:首先进入linux系统;然后启动tomcat;接着执行命令“ps aux | grep tomcat”和“ps -ef | grep tomcat”即可查看正在运行的tomcat进程。linux文件系统中每个文件用什么来…