英文:
Does apache2 have an equivalent to nginx -T?
问题
抱歉,我只会回答你的请求,不会提供其他内容。以下是你要的翻译:
"I accidentally deleted mysite.conf in /etc/apache2/sites-available (instead of the sym link in /etc/apache2/sites-enabled). The site is still enabled, because I did not reload nor restart apache2 yet. I need to retrieve that config. With nginx, I could simply put nginx -T
, which would show me the contents of all loaded .conf files. What can I do with apache2?"
"Edit: When I try apachectl -S
, I don't get all loaded configs. I am looking for the .conf that contains the VirtualHost with port 80. I only get the .conf, that contains the VirtualHost with port 8000."
"[Sun Jul 23 17:04:55.865781 2023] [tile:warn] [pid 11677] Could not determine host name of server to configure tile-json request. Using localhost instead
[Sun Jul 23 17:04:55.865832 2023] [tile:notice] [pid 11677] Loading tile config rides-quality-segments at /tiles/rides-quality-segments/ for zooms 0 - 20 from tile directory /var/lib/mod_tile with extension .png and mime type image/png
VirtualHost configuration:
*:8000 mydomain.com (/etc/apache2/sites-enabled/othersite.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex proxy: using_defaults
Mutex default: dir="/var/run/apache2/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33 not_used
Group: name="www-data" id=33 not_used"
"the tile:warn and tile:notice seems to be in a loop. Every time I rerun apachectl -S
the time stamp is of the actual second."
"Here is the output of sudo lsof -i -P -n | grep LISTEN
to show, that there is indeed a .conf, that contains a VirtualHost with a port of 80:
apache2 7720 root 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10135 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10136 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10137 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10138 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10139 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 26795 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
python 12777 admin 6u IPv4 1205645383 0t0 TCP *:8000 (LISTEN)"
"ps -auxshows, that the commands of all the pIDs shown in the list above are:
/usr/sbin/apache2 -k start`
Also /var/lib/apache2/site/enabled_by_admin
contains two empty files:
mysite.conf and othersite.conf.
However, only the configuration of othersite.conf is shown by apachectl -S
"
英文:
I accidentally deleted mysite.conf in /etc/apache2/sites-available (instead of the sym link in /etc/apache2/sites-enabled). The site is still enabled, because I did not reload nor restart apache2 yet. I need to retrieve that config. With nginx, I could simply put nginx -T
, which would show me the contents of all loaded .conf files. What can I do with apache2?
Edit:
When I try apachectl -S
, I don't get all loaded configs. I am looking for the .conf that contains the VirtualHost with port 80. I only get the .conf, that contains the VirtualHost with port 8000.
[Sun Jul 23 17:04:55.865781 2023] [tile:warn] [pid 11677] Could not determine host name of server to configure tile-json request. Using localhost instead
[Sun Jul 23 17:04:55.865832 2023] [tile:notice] [pid 11677] Loading tile config rides-quality-segments at /tiles/rides-quality-segments/ for zooms 0 - 20 from tile directory /var/lib/mod_tile with extension .png and mime type image/png
VirtualHost configuration:
*:8000 mydomain.com (/etc/apache2/sites-enabled/othersite.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex proxy: using_defaults
Mutex default: dir="/var/run/apache2/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33 not_used
Group: name="www-data" id=33 not_used
the tile:warn and tile:notice seems to be in a loop. Every time I rerun apachectl -S
the time stamp is of the actual second.
Here is the output of sudo lsof -i -P -n | grep LISTEN
to show, that there is indeed a .conf, that contains a VirtualHost with a port of 80:
apache2 7720 root 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10135 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10136 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10137 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10138 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 10139 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
apache2 26795 www-data 4u IPv6 1204364228 0t0 TCP *:80 (LISTEN)
python 12777 admin 6u IPv4 1205645383 0t0 TCP *:8000 (LISTEN)
ps -aux
shows, that the commands of all the pIDs shown in the list above are: /usr/sbin/apache2 -k start
Also /var/lib/apache2/site/enabled_by_admin
contains two empty files:
mysite.conf and othersite.conf.
However, only the configuration of othersite.conf is shown by apachectl -S
答案1
得分: 1
你可以使用 apachectl -S
命令或者 httpd -S
命令(根据你的发行版而定)来打印当前运行的配置。
这将会显示当前在Apache中配置的所有虚拟主机的虚拟主机配置语法。
英文:
You can use the apachectl -S
command or the httpd -S
command (depending on your distribution) to print the current running configuration.
This will show you the virtual host configuration syntax for all of the virtual hosts that are currently configured in Apache.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论