代码拉取完成,页面将自动刷新
Vue选择性(针对爬虫)服务端渲染
通过nginx拦截,如果不是爬虫访问则直接走前台渲染,如果是爬虫则走服务端渲染。github上很多都是全走服务器渲染的demo 故做了这个小demo,以作为博客前端脚手架
# npm
npm install
# yarn
yarn
# develop
npm run dev
# deploy
npm run deploy
# build
npm run build
project /
build /
dev-server.js
vue-loader.conf.js
webpack.base.conf.js
webpack.client.conf.js
webpack.server.conf.js
dist /
node_modules /
public /
src /
css /
main.css
components /
router /
index.js
store /
index.js
stylus /
main.styl
views /
app.js
App.vue
client-entry.js
index.html
server-entry.js
.gitignore
app.js
package.json
location / {
try_files $uri $uri/ /index.html;
}
server {
listen 80;
server_name mrxn.net mrxn.net;
set $flag 0;
if ($host != 'mrxn.net') {
set $flag 1;
}
if ($server_port = 80) {
set $flag 1;
}
if ($scheme = http) {
set $flag 1;
}
if ($http_user_agent ~* (baiduspider|soso|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)){
set $flag 2;
}
if ($flag = 1){
rewrite ^/(.*)$ https://mrxn.net/$1 redirect;
}
error_page 200 https://mrxn.net:8088;
}
本项目使用vue-ssr而开,感谢github上一位老铁的贡献 vue-ssr
如果出现正在DEV编译过程中浏览器进行访问可能会报错,关闭浏览器重新编译即可解决
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。