I am trying to install Flask on my CentOS 7.9.2009 VM running Apache HTTP Server. I've installed Python3.8 and mod_wsgi but when I attempt to start Apache I get the below Permissioned denied when loading the mod_wsgi. I've checked multiple blogs and forums and cannot find a resolution. Any idea why I am getting this error?
Error: cannot open shared object file: Permission denied
httpd: Syntax error on line 56 of /etc/httpd/conf/httpd.conf: Syntax error on line 1 of /etc/httpd/conf.modules.d/02-wsgi.conf: Cannot load /home/myuser/.local/lib/python3.8/site-packages/mod_wsgi/server/mod_wsgi-py38.cpython-38-x86_64-linux-gnu.so into server: /home/myuser/.local/lib/python3.8/site-packages/mod_wsgi/server/mod_wsgi-py38.cpython-38-x86_64-linux-gnu.so: cannot open shared object file: Permission denied
I installed python3.8 from source using ./configure --enable-optimizations --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib" but I am still getting the above permission denied error.
Below is how my app.conf file looks like and also output of mod_wsgi module-config.
app.conf:
LoadModule wsgi_module "/home/myuser/.local/lib/python3.8/site-packages/mod_wsgi/server/mod_wsgi-py38.cpython-38-x86_64-linux-gnu.so"
mod_wsgi module-config:
[myuser#mycentos conf.d]$ mod_wsgi-express module-config
LoadModule wsgi_module "/home/myuser/.local/lib/python3.8/site-packages/mod_wsgi/server/mod_wsgi-py38.cpython-38-x86_64-linux-gnu.so"
WSGIPythonHome "/usr/local"
I get the error when I try to start Apache - sudo systemctl start httpd.
The permission issue was because of SELinux enabled/enforced on my system. I reached out to one of the mod_wsgi source code authors and he pointed me to check this. For now disabling this resolved my immediate issue. If others have suggestions to resolve this without turning it off please suggest.
$ sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
Related
Trying to enable the mod_ssl module on Apache 2.4.25, I get the following error:
httpd: Syntax error on line 129 of /ld01/otsweb/build/apache/httpd24.conf: Cannot load modules/mod_ssl.so into server: \t0509-022 Cannot load module /usr/local/apache24/modules/mod_ssl.so.\n\t0509-150 Dependent module libssl.so could not be loaded.\n\t0509-022 Cannot load module libssl.so.\n\t0509-026 System error: A file or directory in the path name does not exist.\n\t0509-022 Cannot load module /usr/local/apache24/modules/mod_ssl.so.\n\t0509-150 Dependent module /usr/local/apache24/modules/mod_ssl.so could not be loaded.
Line 129 is the LoadModule ssl_module modules/mod_ssl.so line in the httpd.conf file.
I have the same configuration running correctly on another server. That server does not have a libssl.so file on it, yet Apache with SSL is running.
Apache was configured with: (OpenSSL version is 1.0.2k from openssl.org)
./configure --enable-mods-shared="proxy proxy_http" --enable-auth-digest --enable-ssl --with-ssl=/usr/local/ssl/bin
Has anyone seen this same error?
With the release of OpenSSL 1.0.2l we decided to reinstall Apache from scratch, and everything is working correctly. A clean install of both seems to have cleared out the problem.
I have just installed Fedora 25 on my Raspberry Pi, and I have installed Apache using the command dnf install httpd.
I have then enabled the service: systemctl enable httpd.service.
Then started the service: service httpd start.
This fails and when I check the log using systemctl status httpd.service I see the following message:
httpd: Syntax error on line 214 of /etc/httpd/conf/httpd.conf: Can't locate API module structure `config_log_module'
[EDIT]: and line 214 of /etc/httpd/conf/httpd.conf reads:
LoadModule config_log_module modules/mod_log_config.so
The issue being that this file does exist - so I do not understand why it is failing for this reason?
It would help if you paste the line 214 of your config file to make sure, but it seems you are using an incorrect module identifier.
The correct module identifier for mod_log_config is log_config_module and not config_log_module as API the config complains about.
LoadModule log_config_module modules/mod_log_config.so
is there the "mod_log_config.so" file in address : "/etc/httpd/modules/mod_log_config.so" ?
what is the out put of this command on your httpd server :
ls -l /etc/httpd/modules/mod_log_config.so
seems this module does not exist.
I am trying to install mod_wsgi using with apache2 but i cant:
I placed the mod_wsgi.so file in C:\Apache24\modules directory
In httpd conf file
1) when i try to LoadModule wsgi_module modules/mod_wsgi.so and restart apache then apache cannot be started - I get an error "The requested operation has failed"
2) when i remove the previous line and add "WSGIScriptAlias /myapp C:/wsgi-scripts/myapp.wsgi" i get the same error
reinstalled python for all users and this resolved itself, I must have installed python on windows for "just me" before
In ubuntu server when I try to start apache it gives following error message.
apache2: Syntax error on line 210 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/mods-enabled/proxy_scgi.load: No such file or directory
Action 'configtest' failed.
The Apache error log may have more information.
...fail!
What is the reason for the error? And how can I get through this issue?
This issue can be fixed by enabling the proxy_scgi module. Following is the command to enable the module in linux.
sudo a2enmod proxy_scgi
I had installed mod_tile and apache2 and tile server worked without problem. after that i installed php5.5.3. it changed all file structures of apache2 conf. i think something has changed. "LoadModule tile_module"had been removed from the config file. I added it in new apache2.conf file. but now when i restart apache it shows this message:
apache2: Syntax error on line 141 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/mod_tile.conf: Cannot load /usr/lib/apache2/modules/mod_tile.so into server: /usr/lib/apache2/modules/mod_tile.so: undefined symbol: unixd_set_global_mutex_perms
Action 'configtest' failed.
and this is /etc/apache2/mods-enabled/mod_tile.conf
LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so