Control Web Panel
WebPanel => CentOS Configuration => Topic started by: Shafire on July 16, 2019, 06:14:42 PM
-
How, can i get abantecart CMS to work correctly? I am using Nginx apache varnish web server, should i go back to Apache only? Maybe it is just a small thing i need to do but i can not find any answers using Google search.
I migrated the website from cPanel but also having the same issue with a newly installed domain using Abantecart CMS.
https://onlinebusiness1.com/index.php?rt=product/category&path=74_91 When the 2 links at the bottom of the page are clicked on it goes to an error page or not found.
Using centos 7 - CWP Pro.
As far as i can tell it is not a mod security issue or htaccess issues, though i think i need to add something to nginx.conf or edit another part of the nginx configurations in CWP admin panel.
SEO URL not working on 5 sites on 3 different CWP servers.
-
Any help, please.
-
I fixed the error by making a .htaccess file and just added this and nothing else:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA]
SEO URL's are now working perfectly.
I also edited:
Contents of File: /etc/nginx/conf.d/vhosts/onlinebusiness1.com.conf
server {
listen 80;
server_name onlinebusiness1.com;
access_log /usr/local/apache/domlogs/onlinebusiness1.com.log;
error_log /usr/local/apache/domlogs/onlinebusiness1.com.error.log ;
# root is AbanteCart's public_html directory
root /home/onlinebu/public_html;
index index.php index.html index.htm;
# Prevent directory listing
autoindex off;
# rules applied in root of our config
location / {
# include AbanteCart rules
try_files $uri $uri/ $uri.php @abantecart_rules;
# php settings (may differ on your server)
location ~ \.php$ {
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_pass 127.0.0.1:9001;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
}
}
# rewrites our query strings properly for AbanteCart
location @abantecart_rules {
rewrite ^(.*)\?*$ /index.php?_route_=$1 last;
}
# No direct access allowed for .tpl files
location ~ \.tpl {
deny all;
}
### Abantecart Settings ###
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# Make sure files with the following extensions do not get loaded by nginx because nginx would
# display the source code, and these files can contain PASSWORDS!
location ~* \.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|\.php_ {
deny all;
}
# Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
### Retina images handler. Check cookie and looking for file with @2x at the end of name
location ~* ^(.*)\.(jpg|png|gif)$ {
set $hidpi_uri $1@2x.png;
if ($http_cookie !~ 'HTTP_IS_RETINA=1') {
break;
}
try_files $hidpi_uri $uri =404;
}
location ~* \.(jpg|jpeg|png|gif|css|js|ico)$ {
expires max;
log_not_found off;
}
location ~ /(system/logs|resources/download) {
deny all;
return 403;
}
location /admin/ {
location ~ .*\.(php)?$ {
deny all;
return 403;
}
}
#rewrite for images for retina-displays
location ~ / {
if (!-e $request_filename){
rewrite ^/(.*)\?*$ /index.php?_route_=$1 last;
}
}
### End of AbanteCart settings ###
}
Make sure you leave a space after the last }
This is how i got it to work with CentosWebPanel please advise on improving this method if possible.
CWP server setup is Nginx & Apache. i renamed the nginx.conf in public_html to nginx.conf.txt or just remove it, this is just a method to get things to work and i am sure i will be editing this again soon, if i do update for improvements i will post here what i did or please advice, as CWP a lot of settings cause a not found error.
-
Update, on another server i had an issue with SEO URL:
Menu option:
1. WebServer Settings -
2. Manage WebServers Configuration
You can manage domain configuration for webservers here.
Select a Username
(If a configuration exists delete it and SEO URL will work)
This solved SEO URL not working on a different server, something that can be easily overlooked.
-
Update here is my settings:
nginx.config copy below:
### Abantecart Settings ###
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# Make sure files with the following extensions do not get loaded by nginx because nginx would
# display the source code, and these files can contain PASSWORDS!
location ~* \.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|\.php_ {
deny all;
}
# Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
### Retina images handler. Check cookie and looking for file with @2x at the end of name
location ~* ^(.*)\.(jpg|jpeg|png|gif)$ {
set $hidpi_uri $1@2x.png;
if ($http_cookie !~ 'HTTP_IS_RETINA=1') {
break;
}
try_files $hidpi_uri $uri =404;
}
location ~* \.(jpg|jpeg|png|gif|css|js|ico)$ {
expires max;
log_not_found off;
}
location ~ /(system/logs|resources/download) {
deny all;
return 403;
}
location /admin/ {
location ~ .*\.(php)?$ {
deny all;
return 403;
}
}
#rewrite for images for retina-displays
location ~ / {
if (!-e $request_filename){
rewrite ^/(.*)\?*$ /index.php?_route_=$1 last;
}
}
### End of AbanteCart settings ###
.htaccess copy below:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA]