FastDo是一个强大的C++跨平台开发库,能助您快速的开发服务端程序,Web应用及网页。
让FastDo作为Web开发工具安装,您需要做的是让系统找到FastDo的库文件和程序文件,并且启动HTTP方式的FastDo常驻程序,最后从浏览器运行网页。
由于目前HTTP方式的服务端程序webx_httpserv
是实验探索性质的功能,稳定性暂时无法保证。如果您需要稳定运行,请使用FastCGI形式的服务。
由于IIS的反向代理需要安装ARR模块,这里就直接运行webx_httpserv
,不使用IIS的反向代理了。如果你想使用,可以去网上搜索相应教程。
这里以Windows 10为例,其他Windows版本细节可能不同,但大体是一致的。
1、解压下载到的fastdo-<OS>-<ARCH>-<VERSION>.zip
到你的目录。
会在释放出fastdo文件夹,路径为
\fastdo
。
2、为了能让系统找到fastdo的动态库,需要修改系统的PATH
环境变量。
a. 按WIN+Pause键,打开系统信息对话框,点击【高级系统设置】。
b. 在弹出的系统属性对话框【高级】选项卡中点击【环境变量】。
c. 在弹出的环境变量对话框中的【系统变量】组框中点击【新建】按钮。
d. 新建一个名称为FASTDO_PATH
,值为\fastdo
的系统变量,点击【确定】。
e. 回到环境变量对话框,双击系统变量Path
。
f. 在弹出的编辑环境变量对话框中点击【新建】按钮,新建一个%FASTDO_PATH%\bin
的项,点击【确定】。
g. 回到环境变量对话框,点击【确定】。
执行完此步之后,您Windows任何目录下的可执行文件都能找到fastdo的动态库和程序了。
3、为了让FastDo找到你安装的VS2017编译器,你需要修改ecp配置文件\fastdo\bin\ecp.conf
的VSToolsBat
设置。如下所示:
VSToolsBat="\\Community\\VC\\Auxiliary\\Build\\vcvars64.bat"
上面VS2017的路径需要你自己根据实际的安装路径进行设置。32位工具的批处理是vcvars32.bat,64位工具的批处理是vcvars64.bat。(注意,配置文件中\
要写成\\
)
4、执行ecpc
命令判断FastDo是否安装成功。
ecpc
如果成功,则显示如下:
Arguments not enough! Usage: ecpc $InputFile1[ $InputFile2[ $InputFile3[ ...]]] [--exe] [--help] [-c $SourceFile] [-t $SourceTpl] [-o $Output] [-p $Config] ……
还记得[作为C++库安装]里编译baidu_homepage.cpp
,vs创建项目的那一长串步骤吗?
现在我们不用那么长的步骤了,改为执行下面命令:
ecpc baidu_homepage.cpp --exe
即可。
5、启动webx_httpserv程序。
\fastdo\bin\webx_httpserv.exe
webx_httpserv有自己的配置文件\fastdo\bin\webx_httpserv.settings
,你可以修改它。(注意:文档根目录默认是工作目录,你应该修改它为你自己合适的目录。)
# $ExeDirPath是外部变量,表示程序目录路径 # $WorkDirPath是外部变量,表示工作目录路径 # 是否以产品模式运行 ProductionMode no; # Sessions 保存路径 SessionsPath ($ExeDirPath + '/sessions'); # application/x-www-form-urlencoded 表单POST发送数据的最大大小 MaxUrlencodedPostSize 8388608; # multipart/form-data 多部分表单POST发送数据的最大大小 MaxMultiFormPostSize 10485760; # 上传的临时目录 UploadTmpPath ($ExeDirPath + '/upload-tmp'); # appserv输出信息用的模板路径 OutputTplPath ($ExeDirPath + '/output-tpl'); server { # 服务器名,可留空 server_name localhost; # 服务器IP,可留空 server_ip ; # 服务器监听端口 server_port 18080; # 监听积压数 listen_backlog 10; # 线程数 thread_count 6; # 服务器IO等待间隔时间(小数秒) server_wait 0.02; # verbose信息刷新间隔(小数秒) verbose_interval 0.1; # 显示冗长信息 verbose 0; # 连接重试次数 retry_count 10; # 套接字超时时间(整数秒) sock_timeout 300; # 影响环境变量:TZ,putenv()设置的时区 time_zone PRC-8; } site { # 文档根目录 document_root ($WorkDirPath); # 文档首页 document_index index.html index.do; # 错误页 error_pages { 404 ($WorkDirPath + '/404.html'); } # 静态文件缓存生命期 cache_lifetime 0; }
6、您应该可以从浏览器运行*.do
文件了。
A. 在您的网站根目录新建一个hello.ecp
,内容如下:
<?cpp RSP.setCharset("utf-8"); RSP << "Hello world!";
B. 执行ecpc编译它。
ecpc hello.ecp
执行成功会产生hello.do
文件,在浏览器地址栏中输入它的URL,回车。会输出Hello world!。