万网linux更改网站根目录,更改apache网站根目录DocumentRoot位置的批处理

使用需求

因为我的工作需要,我总是需要更换网站根目录,来调试不同的网站。我本机的环境是xampp,更换apache根目录这件事需要更改httpd.conf文件。每次都要打开再改,嫌麻烦,想找一个尽量简便的方法。由此写了这个批处理,希望实现直接输入路径,自动更改文件。

这里要提示一下,我的XAMPP安装在D:\xampp\,我的网站根目录想安排在F:\www\下的子文件夹中切换。

比如有时候是F:\www\aaa\,有时候是 F:\www\bbb\

这里说的是本机调试,而非服务器生产环境,本文只适于windows。

解决方法

由于我并没有研究批处理中的正则替换,所以稍微绕一下。

1. 找到httpd.conf文件位置,并重命名为httpd.conf.txt,并记录路径。

如:我的xampp中httpd.conf文件位置在:

D:\xampp\apache\conf\httpd.conf

那么我就复制一下,再后面加个txt,记录一下路径,即:

D:\xampp\apache\conf\httpd.conf.txt

2.  编辑httpd.conf.txt,找到DocumentRoot位置的两行,改为实际路径名为:wwwdir

如:我的httpd.conf.txt文件中,原来的内容是:

# …………

#

DocumentRoot "/xampp/htdocs"

#

# …………

改为

# …………

#

DocumentRoot "F:/www/wwwdir"

#

# …………

3. 新建文本文件,复制以下代码,改拓展名为.bat

@echo off

:: 设置httpd.conf文件路径,如 D:\xampp\apache\conf\

:: 切记末尾必须由\结束

set confdir=D:\xampp\apache\conf\

:: 设置示例文件路径,如 D:\xampp\apache\conf\httpd.conf.txt

set examplefile=D:\xampp\apache\conf\httpd.conf.txt

::

:: 以下内容不需更改

setlocal Enabledelayedexpansion

mode con cols=45 lines=3

color 0C

set /p inputdir=Project Floder Name :

del /f /s /q "%confdir%httpd.conf"

for /f "tokens=*" %%a in (%examplefile%) do (

set var=%%a

set var=!var:wwwdir=%inputdir%!

echo !var!>>"%confdir%httpd.conf"

)

endlocal

4. 最后配置一下就可以了,已经在代码里写了,配置两个位置confdir和examplefile

预览

双击运行后,可见以下界面:

7d9078a0f680ed14b9a04ffcf45f9cb7.png

输入要更改的文件夹名,回车以后即完成修改,不做任何提示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值