Fixing Apache for MacOS Sierra: Reset apachectl - macos

Due to my own idiocracy I have managed to run two versions of Apache on my Mac OS. Since a late update to Sierra my webserver has fallen into decay. I feel it is only a matter of time, until the whole environment breaks down and the OS is doomed for reincarnation.
For now I have managed to get my system side Apache running. However I have found that my "apachectl" command has been replaced with the brew version of apache. Since I am not strong with cmd line I want to ask how I can revert this? For now I am starting system side apache with "/usr/sbin/apachectl start".
If anyone could give me some advice how to keep the two versions from colliding, I would be more than grateful: keep brew apache from autoloading, check for which httpd processes are running and where they are rooted, put brew apache in a dumpster in the middle of the night etc.
I also have brew versions of php installed but I dare not to uninstall due to dependencies... any advide here would be appreciated as well.
IF ANY NEWCOMER READS THIS THREAD: Since I updated my Mac OS to the new Sierra my whole Apache configurations have gone mad. Unfortunately I have followed a very, very bad tutorial a few updates ago (https://www.getgrav.org/blog/macos-sierra-apache-multiple-php-versions) to configure my web development environment. I RECOMMEND EVERYONE TO AVOID THIS TUTORIAL! The blogger writes that his tutorial is only for advanced developers, however the tutorial itself is a total mess: there are no hints for any backup files and the configurations are all in bad style... I would advise anyone to double check on custom configurations in apache and always backup every file you change! For me it is too late and I feel only a hard reset of the system will suffice. Dark days on the horizon...

When you upgraded to the new OS, it does change your default apache config. The good thing is it does save a copy and renames it to httpd.conf~previous also creates a folder under etc/apache2/original for the previous default version. Just copy them back over and you're good to go.
Also you can throw homebrew in the dumpster using their own script
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
Hope that helps.

Related

CouchDB can't set up HTTPS

I am learning to work with CouchDB and I am usually making Ajax calls in order to communicate with my database. I started getting '
Cross-Origin Request blocked
' and as the reason
Access-Control-Allow-Origin
, so I decided to work with CouchDB through HTTPS and not the standard HTTP. For that, I have followed the instructions given on Link to manual.
Problem on Linux:
I first tried to set it up on my laptop where I use Linux. But I couldn't find the Local.ini file where I was supposed to set the paths to the certificates.
After unsuccessfully trying to find a solution for it, I gave up and started from the beginning on my computer, where I use Windows.
Problem on Windows:
So I installed the newest version of CouchDB on my Windows, I have created the certificates, found the Local.ini file, did everything as it is explained in the manual. The problem was that I couldn't restart CouchDB so that the changes would take place. So, after google-ing the problem, I found a possible solution, to stop CouchDB through the Task Manager->Services-> Stop Apache CouchDB. But when I tried to Start it again I get the problem
Windows could not start the Apache CouchDB on Local Computer. For more information, review the System Event Log. If this is a non-Microsoft service, contact the service vendor, and refer to service-specification error code 3.
I would be very happy if someone could help me with my problem(s). I prefer getting a solution for the Linux problem since I work mostly on my laptop, but I will be satisfied if I get it going even on Windows.
Thanks in advance
On Linux, you can add CORS to CouchDB with this package:
https://github.com/pouchdb/add-cors-to-couchdb

Phusion Passenger 5.1.12 + OSX 10.13 + Server 5.4

I've been having problems with Phusion Passenger since upgrading to 10.13. I've read several articles about the root cause of this issue (most of which are over my head, quite frankly) but I was under the impression that Passenger 5.1.12 was supposed to solve this problem. Nevertheless, it has not for me and Apache crashes with the following log entry:
httpd[31444]: objc[31444]: +[__NSCFConstantString initialize] may have
been in progress in another thread when fork() was called. We cannot
safely call it or ignore it in the fork() child process. Crashing
instead. Set a breakpoint on objc_initializeAfterForkError to debug.
Any pointers would be greatly appreciated!
If you want to stick with Apache, until Apple patches their build, apparently your options current are to:
Use a non-system apache (so it doesn't have apple's patches)
Set the OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES env var to the apache
launchd plist (requires disabling SIP)
Add PassengerHighPerformance on to your virtualhost if your app can
work that way
Use a case-sensitive filesystem (requires a fresh install of macOS)
None of those sounded particularly attractive to me, so I installed and migrated over to nginx (I've been meaning to anyway, for some time now).

Getting cf10 to work with Apache on Mavericks

We've installed cf10 on a Mac with Mavericks.
All seemed to go well. We didn't get any errors.
Apache is running fine. We've setup a virtual host, and it is serving html files fine.
Coldfusion Administrator is running fine at 127.0.0.1:8050
Yes, we did select Apache when installing CF (pointing config to /public/etc/apache2/).
But when we run a .cfm page from the virtual host on Apache, it just renders the contents of the .cfm page to the browser as text (e.g. just get's render as text).
We have read and worked through the myriad of blog posts on how to get CF10 working on Mavericks, but with no luck, and we are starting to wonder that this may not be the problem.. as neither cf10, nor apache are 'broken' as such. It just seems that apache is not passing .cfm file to cf for processing.
Can anyone suggest something we may be missing?
Many Thanks
This is because the connector is broken currently. I recently moved to mac so I encountered the same issue. This article provides a working solution. It looks like a lot but it doesn't take long if you take time to read through it.
http://www.cfdad.com/2013/10/27/how-to-compile-adobe-coldfusion-10-apache-connector-for-osx-mavericks-10-9/
EDIT: Sorry I should provide the source for the bug: https://bugbase.adobe.com/index.cfm?event=bug&id=3653076
It might be a simple as running the web server connection utility. That's all I had to do with OSX 10.8. Brian blogged that this was all he had to do.
http://brianflove.com/2013/10/23/os-x-mavericks-and-apache/
You just have to tell it where the /conf/ folder is now located. We both used /private/etc/apache2/, not /public/.

new python version, now cannot start idle

Have been running Python 2.7.2 for several months, was using the 32-bit version on my 64-bit computer.
Today ran the installer for 2.7.3, 64-bit. Now I cannot get idle to start. I see answers here for Python in program files, I am running Win7, and I believe the correct location for this machine is in C:\, not in program files. At least that is where I had 2.7.2 and it worked.
So trying
C:\Python27\Lib\idlelib\idle.py
or
C:\Python27\Lib\idlelib\idle.pyw
neither of those would open Idle. With the .py one a console window flashes open for a split second and disappears. On the .pyw one, nothing at all happens as far as I can see. And the pyw one says right on the screen in File Type: "no console"
The old shortcut in the Start menu, under properties says 'target: python 2.7.2', but I don't see a way to change the target.
Also tried opening from Powershell, command line, Python command line, run. None of those worked.
When I downloaded 2.7.3, it said it was overwriting the files in Python27.
Now uninstall offers two programs to uninstall: 2.7.3 and 2.7.2 , but as far as I can tell there is a single Python program on disk and that one thinks it is 2.7.3. I started to uninstall and try a fresh install, but thought I'd ask first rather than risk further screwing up my machine. Thanks in advance for any help. I did read and try to use all the answers in similar questions here on the site.
I ran in to this today. Basically there was already an older version installed and installing over it (I think it was 2.7.2) with 2.7.3 64 bit broke it bad.
At first the CLI python would work but IDLE refused to launch without even an error. Uninstalling/reinstalling did nothing several times, and the problems got weirder as it couldn't find the msi's it had just downloaded, etc. Then I noticed that it wasn't deleting everything in the Python27 folder.
Manually deleting the folder wasn't enough and I found that it was storing another folder under App Data\Roaming (Windows 7). Removing this one finally allowed the re-installation to work (and show up as a newly installed program instead of acting like it had always been there by not highlighting it).
I was about to give up on the 64 bit version and try the 32 but it seems like the Python uninstaller/installer aren't cleaning everything up properly file wise (if it were registry entries I'd still be digging).

How do you install a Ruby on Rails apps on Windows/IIS?

I'm trying to get Redmine working on Windows/IIS 7. I've found several walkthroughs online, but none of them work on my Windows Server 2008 R2 box. I got a simple app (create app, no customization) to get as far as RoR error, but Redmine itself shows a 500 error (ruby.exe exited unexpectedly). I installed sqlite since some guides mention that, though Redmine uses MySQL by default. I started with the Bitnami installer and tried to customize for IIS, RorIIS, FastCGI, lots of things that look like they should work, but this problem is killing me.
If I run ruby.exe from the command line, passing it the path to the dispath.fcgi file I get an error: "The procedure entry point SetMagickMemoryMethods could not be located in the dynamic link library CORE_RL_magick_.dll". I had to install the rmagick gem myself which seemed strange since everything worked perfectly under Apache. I really thought it would be a smooth cut-over since it's up and running already and just changing web server.
Any help is much appreciated.
I've tried a lot to install Redmine on Windows environment under IIS. There's very little (or none) documentation about it. Lost many days on this. In the end, I decided to stick to the Bitnami stack of Redmine. The only caveat is that we had to use another port (8080, in our case), that's it. I gave up the idea of integrating Redmine/RoR with IIS and never looked back. Everything is working great in production now and everyone is happy about it around here.
Sorry I can't give a better answer than that, I'm just sharing some recent experience. I was obsessed about integrating RoR/ISS until I realized it was not a real requirement, it was just something I stuck into my mind. Think about it.

Resources