I can't get Apache to work for some reason - apache

For some reason Apache just doesn't seem to want to work. I have been trying so many things to try and fix it but with no luck. At first there was programs blocking port 80. A few of the programs I tried to stop on port 80 are skype, World Wide Web Publishing Service, IIS(Internet Information Services), and NT Kernal & System. Then I ran Apache in the cmd. I typed: cd:/apache/bin then I typed httpd.exe but nothing happened and the cursor just kept blinking on the next line. I also went to ApacheMonitor in the bin file and ran that, then went to the little icon on the bottom and clicked start but it just said The requested operation has failed! I don't know what to do now.
I have windows 7.

I would recommend to Install Apache as a service.
However, if you want to start Apache via command prompt. First thing you check if the syntax in your conf files is ok. Open a command prompt as an Administrator. Change to Apache bin directory and use below command.
httpd -t
If it returns Syntax OK, that's a good news. Errors will be displayed if any. Fix all errors.
Once syntax looks ok, run below command to start Apache.
httpd -k start
It should start your Apache. If it doesn't check /logs/error.log and see what's going on.
Good Luck!

Related

Where can I find httpd.conf file for Apache on my windows?

I am trying to fix one venerability on my production web server(Apache), Venerability is "The HTTP headers sent by the remote web server disclose information that can aid an attacker, such as the server version and technologies used by the web server"
For this I have gone for some solutions , some where I found that to solve the above Venerability we need to edit the httpd.conf file on server but I did not find httpd.conf file in my entire system (using windows 10 os) can any one please let me know hot find that file or how to resolve that Venerability on production ?
You can find httpd.conf in
installed folder ex Apache24
Apache24/conf/httpd.conf
On Windows, I have seen people run Apache from all kinds of weird and wonderful places.
You need to track down where your Apache instance is running from, normally its running as a service on windows. If you open the properties on the service and look at the Path to executable, it should be something similar to the below.
"C:\Program Files\Apache24\bin\httpd.exe" -k runservice
Or it could be
"D:\Some Application\Version\WEB\tool\SOFTS\HTTPD\bin\httpd.exe" -k runservice
Unless there is an -f flag, setting the location of the conf. There will be a "conf" folder at the same level as the "bin" folder regardless of the path. This location is set at compile time so unless you have bespoke version off Apache this should be the location.
If you are struggling to find the service or a launcher that is running Apache. You can use WMI with a WQL query to look for processes which are called httpd.exe and get its executable path.
wmic process WHERE name="httpd.exe" GET ExecutablePath
In Xampp Control panel, in apache row, click on "config" button and then you see the term Apache(httpd.conf).

How to configure Apache to listen some different port?

I am facing problem in starting XAMPP. First of all it gives me error messages in RED when i start XAMPP control panel. When i click on START APACHE, it starts it but when i open localhost it gives me the following error message.
Not Found
HTTP Error 404. The requested resource is not found.
I have tried various ways to resolve this problem but it isn't solved yet. Kindly guide me.
Thanks.
checklist
first run XAMPP installer by UAC(User Account Control) and Antivirus off and run it as admin
uninstall previous XAMP installation
turn off IIS temporarily (which will use default port 80)
change the port to some free valid port by following below guide
summary (Locate the file httpd.conf. This file should be found in C:\xampp\apache\conf folder or via config button in XAMPP control panel and search for 80 port and change it to something like 1234
http://complete-concrete-concise.com/web-tools/how-to-change-the-apache-port-in-xampp
check services.msc if web deployment agent service is running.
check if IIS is running, stop it.
As some solutions may suggest you turn off the IIS or some windows related services, you should therefore take precaution since there are possibilities of stopping very useful user process

XAMPP Apache won't start

I am using Windows 8 Pro. I have just installed XAMPP Windows 1.8.1.
I tried to start Apache from the XAMPP control panel but it wont start. It gives the following error.
Also I have no IIS Services running, Web Deployment Agent Service also not running, World Wide Web Publishing Service also not running..
What could be the problem? Can anyone please help?
Error Log
To Windows users:
You can easily "debug" this error by calling the apache httpd-service directly.
Go to XAMPP\apache\bin
Open a cmd-shell or Powershell here (From explorer: 'Shift' + 'right click' on a blank area in the folder)
enter httpd.exe
read the output
It is usually something within one of the many *.conf-files in the XAMPP\apache\conf\extra folders.
As previously mentioned above in the comments - and tested out myself:
This error is rather ambiguous. Therefore, you should check the error.log located at \xampp\apache\logs
When I had this issue, it was because Skype was already listening on port 80 & 445. I was able to get around this by exiting Skype, starting the Apache service, and then restarting Skype. You can check the current port listeners by opening a command prompt and typing Netstat -a
It is also recommended to have User Account Control OFF as it may block some features built into xxamp.
Prior to this though, I had an issue after I modified my Apache httpd.conf file. Reverting those changes (or reinstalling in the user's case) will resolve that issue.
I am using Window 7 and It was same problem with me,I am using Skype and Not start Apache, but finally solved this problem, and It's working now
Check connection setting
In Skype click tools -> click option -> click Advanced -> click connection
Unchecked port number and click Save.
I had this problem as well in XAMPP [XAMPP Control Panel v3.2.1] on Windows 8 64bit.
The first thing I done was to use the "Take Ownership" command (see below for a link) and this created a better error message.
From the error message above it changed to:
5:49:08 p.m. [Apache] Problem detected!
5:49:08 p.m. [Apache] Port 80 in use by "C:\Program Files (x86)\Skype\Phone\Skype.exe" with PID 4968!
5:49:08 p.m. [Apache] Apache WILL NOT start without the configured ports free!
5:49:08 p.m. [Apache] You need to uninstall/disable/reconfigure the blocking application
5:49:08 p.m. [Apache] or reconfigure Apache and the Control Panel to listen on a different port
Closing skype fixes this, reopening skype allows it to change the port number itself.
Adding this only because Google finds this error as the best result for "xampp apache wont start". Sorry for posting on an older issue.
Take Ownership Command: http://www.eightforums.com/tutorials/2814-take-ownership-add-context-menu-windows-8-a.html
Look in the control panel: the service has not been installed yet!
Click the (X) button to install apache in windows service and reboot, it should be working now.
I had the same error, the error logs where empty, I ended up installing Apache as a service via XAMPP.
Now when I try and start Apache I at least get some informative errors in Windows Event Viewer.
Turned out to be a missing directory for a vhost, easy fix, however I was only able to view this error when attempting to start Apache as a service.
First of all, after installation restart windows. As strange as it may be, this does matter. Also, check all apps occupying port 80 (e.g. Skype).
Finally, what resolved my situation - port 443. VMWare have been using this port. AFter killing the VMWare process, Apache worked just fine.
I reinstalled it in another drive and that fixed it. But I have no idea what caused the problem in the first place.
For Linux Users:
The solution:
In terminal: sudo /etc/init.d/apache2 stop
Edit: If you still get this kind of error at next computer start then you probably have apache2 process starting at computer startup.
To prevent apache2 starting automatically at startup:
cd /etc/init.d/
sudo update-rc.d -f apache2 remove
Reboot your computer and now hopefully you can turn on Apache from the XAMPP Control Panel!
I commented Listen 443 directive in httpd-ssl.conf located on C:\xampp\apache\conf\extra, and that did the trick for me. Next restart Apache was green
I had the same problem. I started the Xampp Control Panel as an Administrator. That worked.
Some process is using the port 443, so you can change the port that is used by xampp, to be able to use it. For this job you have to do this:
1- Open httpd-ssl.conf in xampp\apache\conf\extra
2- Look for the line containing Listen 443
3- Change port number to anything you want. I use 4430. ex. Listen 4430.
4- Replace every 443 strings in that file with 4430 and save the file.
I experienced this issue and I preferred to free up the port .80 and my XAMPP/Apache restarted again.
This is how I made the port .80 free.
First:
-Open a command prompt and type this :
netstat -aon | findstr :80
You'll get this display:
Then type this command:
tasklist /fi "pid eq 4"
You'll get the name of the process using the is displayed. Now, press:
Win+R
services.msc in the invite, then press Ok.
Now you can start stopping all services which can use the port .80.
Find some of them here: W3SVC,WAS,SSRS,PeerDistSvc,NcbService.
After trying all the suggestion given above. Disable this, install that. I opened the xampp-control manager from the start but this this as administrator. After I opened it. MySQL was disable. I disable all of the program and enable apache first and then MySQL. Suddenly start working with no problem.
I gave all users full access on the xampp folder, inclusive subdirectories. Afterwards it worked.
Open services.msc directly from command prompt and disabled SQL Server reporting services
& SQL Server analysis services.
I had the same case .
The reason was that I had changed htdocs folder location to another drive and although made appropriate configuration, for physical reasons, when starting apache the drive was not accessible:
After making it accessible the problem has been solved .
Generally it seems logical that when apache doesn't find all of the components it won't start.
i had the same problem but after i went into the readme, i realised that i didn't have Microsoft Visual C++ 2008 Redistributable installed. after i instaled it, all worked just fine
Although this person's question seems to have been answered, I just wanted to add that I received this error because I had a typo in my httpd-vhosts.conf file (got in a hurry and didn't specify a port on the VirtualHost tag).
If you have skype shutdown and the problem still persists. Try this. It could be that apache is set to automatic on restart. Meaning apache is already using that port. Go to services in your XAMPP control and look for apache (whatever version you have). Look for startup type and double-click it to set it to manual.
Hope this works!
If it helps to anyone, I currently use VMWare Workstation in my computer, and it also blocks Apache from starting, because VMWare Workstation listens for requests on port 443.
You can either comment out "listen 443" inside the "httpd-ssl.config" or you can disable "Shared VMs" from VMWare Workstation General Preferences.
If you use your skype ports, turn the ports off from the skype settings->Connections and unmark the port like where it says ports 80 till 443.

Why won't xampp apache server load localhost on any port when control panel says it's running?

I just downloaded the most recent copy of xampp. I have been using this for some time. However, today I cannot get anything to load from localhost. The XAMPP control panel says it is running. I have seen when another application has port 80 and I cannot get it to start. It will report busy. That's not happening though.
I did install ruby on rails last night. I was following some online training with Lynda.com. That is supposed to use Webbrick server on port 3000. That doesn't work anyway.
So, can anyone suggest what I should do?
Thanks,
Bruce
Did battle for 2 hours this am. Did a clean install of XAMPP on my Windows7 computer and walked through a ruby install. Apache would not start. I believe when I copied the code to add in httpd.conf into notepad++, I got slanting quotes. When I edited the quotes, they went back in as straight up and down. That was my stupid problem, just saying.
Details:
I ran the apache_start.bat file to see what was going on. I kept getting the error that line 520 which had to do with documentroot, was not a directory. I put ..htdocs/project01/public, which existed.
I thought maybe the permissions were wrong. Spent an hour in DOS (remember the attrib command), the changed UAC and still got the same error. Then I noticed that one of the quotes in the Ruby section at the bottom was slanted and the other was straight. When I deleted that and added another quote, it appeared straight up and down.
Used the bat file to start apache. Then it gave me an error on line 521 the Directory. Changed the quote on that and apache started. And I got the opening html page in Ruby.
I suspect if I had sudo or used the Windows Notepad editor and made sure I saved it as a MS-DOS text file, all would have been fine. Copying and pasting caused my issue.

Basic Apache commands for a local Windows machine

I have installed XAMPP on my Windows 7 machine and created a number of virtual servers. This part is straightforward enough.
Each time I add a new virtual server I am having to reboot my computer in order to reboot the Apache server, which is of course quite time consuming.
I have googled and found the correct console commands to use to reboot Apache, but absolutely non of the references that I have found actually tell you where to type the relevant commands! A certain level of knowledge is assumed.
So my question is - where do I actually type apache -k restart?
Going back to absolute basics here. The answers on this page and a little googling have brought me to the following resolution to my issue.
Steps to restart the apache service with Xampp installed:-
Click the start button and type CMD (if on Windows Vista or later and Apache is installed as a service make sure this is an elevated command prompt)
In the command window that appears type cd C:\xampp\apache\bin (the default installation path for Xampp)
Then type httpd -k restart
I hope that this is of use to others just starting out with running a local Apache server.
For frequent uses of this command I found it easy to add the location of C:\xampp\apache\bin to the PATH. Use whatever directory you have this installed in.
Then you can run from any directory in command line:
httpd -k restart
The answer above that suggests httpd -k -restart is actually a typo. You can see the commands by running httpd /?